Search the Community
Showing results for tags 'vb6'.
Found 1 result
Dear All, LEGO lasts forever – assuming “forever” is exceeding 6 decades – which surely will happen (or has happened already?). I still have bricks from 1965 (my first LEGO set was #323 – a push along steam train running on rubber tires …) – that still have very good clutch, colors only very little faded – and seamlessly fit into 2017 sets. Almost as long as I live, LEGO has been part of my life. True, there were dark ages from the late 1970’s to 1996 – but then it instantly came back – everything: The excitement about a new model, just another LEGO box, new bricks, colors … and it never disappeared since then, in contrast. 1998 was the ultimate rush back into the LEGO world: The Mindstorms RIS system – the RCX (at that time without the “1.0” extension) – it blew my mind. And since then a somewhat larger collection of all themes has assembled over the past 20 years. Building over multiple themes is my brick-philosophy. During my dark ages computer technology became my favorite hobby. The “IBM PC” was lightyears out of reach but other miracle machines came up: The C64, the Sinclair ZX81 – and that one was within reach of my limited budget! 1 kByte of memory and a 16 kByte dynamic RAM extension I built myself. “Tri state TTL bidirectional bus drivers”, the 74LS243 – and no internet, that remained to be invented. And it went on – the ZX Spectrum with 16 kByte of on-board memory got a 64 kByte memory “upgrade” – switchable in two banks. It was fun. Today, TTL chips are fading out and 64 kByte would result in the worst digital “photo” ever … I am not whining – so many wonderful new things have emerged! What really shocked me though was when TLG did not even think about making a 64 bit driver for the “perfect” Mindstorms USB IR/VLL tower. That beautiful communication hub for all RCX1.0, 1.5, 2.0, Scout, Spybotics, MicroScout, CodePilot bricks one is truly dead since 64 bit operating systems have taken over. At least this is what I have learned from the internet after years of searching. The next shock came around 2002, when .NET came up and Microsoft said “no more VB6 development at all”. VB.NET was so different from what I knew. In the following years I stuck to VB6 … my fault, sure. But I am moving slowly as time for LEGO is rather limited. XP vanished, 32 bit OS came out of fashion – and all that cool stuff – the Mindstorms software, the NXT software, NQC for RCX, RobotC for RCX … and all my VB6 programs – almost “gone”. Well, I kept of course my Dell Latitude E6500 laptop running WinXP SP3 with all that stuff installed and I still have it! Carefully backed-up everything and there it is, slowly aging. I hardly like to play with that thing – I don’t want that it gives up, which will eventually happen of course. Yes I know: “Install XP within a virtual machine” – but that did not work to the extent I would like to use a “LEGO programming and playing workspace”. The one thing that changed everything were internet rumors about the old Mindstorms RS232 tower working well with NQC/BricxCC on a 64 bit Win7 machine. So for the past couple of days between Christmas and New Year’s I was browsing the net, installing this and that, copying stuff from my old XP machine … and: BINGO. It all works! Everything works on my rather new DELL Precision 7510 with Win10 Professional as OS. All the old-back-from-the-late-1990’s stuff! OK, I know, not everybody will be as excited as I am. But I believe LEGO lasts forever – and now all the software I love so much, as well as all my old-fashioned programmable bricks (there are currently 9 RCX1.0, 6 Scouts, 10 MicroScouts, and 1 NXT PBricks doing work on my train layout) are directly accessible from this laptop, and they are programmed/operated using NQC/BricxCC, NXC, NXT-G, RobotC, the Mindstorms SDK 2.5, and most importantly VB6 SP6 programs – all natively running on a Win10 64 bit platform. A dream came true. And for all old or old-fashioned Mindstorms PBrick heads, for all who never managed to get their head around .NET stuff, for all who still believe that RCX’ and Scouts are miracle thing: Here is how I got it to work: Assemble some software from the internet: BricxCC (free, latest version from 2011) The Mindstorms Software Developers Kit (SDK) 2.5 (free on Philo’s homepage) RobotC for RCX 2.03 (which is free as well). Don’t download the 32 bit tower driver. It won’t work. The NXT 64 bit driver from TLG VB6 SP6 from Microsoft VB6 cumulative update for SP6 from Microsoft Get out the original CDs for: VB6 (SP5 or higher) The NXT-G 2.0 software suite – if that is not at hand, TLG’s Mindstorms website has it Assemble some required hardware The Mindstorms RS232 tower. They came in 1998 with the original RIS system – and they are widely available at BrickLink for about $5. Don’t forget to put a fresh 9V battery into the battery compartment on the back. Slide the range knob on the front to the left (short range). An USB2RS232 converter – I tried a (randomly picked) LogiLink converter, which works just fine. A PBrick of type RCX, RCX1.5, RCX2.0, Scout, or Spybotics. The next steps are for proper tower access: Plugin the USB2RS232 converter into the computer and let it find and install the driver (either shipped with the converter or on the internet). Open device manager (Windows key + X, select “Device Manager”), expand the “Ports (COM and LPT)” section, find the “USB Serial Port (COM X)” entry, double click it, choose “Port settings” then “Advanced” and make sure the COM port for this device is in the range between 1 and 8. Otherwise BricxCC and other old programs will not find the USB/RS232 converter = IR tower! It cost me some time to figure that out. When all COM ports in this range are taken by other devices, move one of them to the next free COM port far up and then manually (modern hard/software has no issue using COM ports in the range exceeding COM 8!) assign the converter to the now free COM port in the 1 – 8 range. Plugin the IR tower cable into the USB2RS232 converter. Next is getting access to RCX, RCX2, Scout, and Spybotics PBricks via BricxCC – this will also let you download the latest RCX firmware is case it is “gone”: Install BricxCC (full install) – this comes with NQC and many more things, e.g., the RCX firmware downloader. Put a PBrick from the list above into the IR tower range, a couple of inches away. Start-up BricxCC – it will try to connect to an RCX PBrick and most probably fail (“Cannot find brick. Switch it on or move it closer and press OK”). Press “Cancel”. Select “Tools” in the menu, go to “Find brick” and in the window that opens, select the correct COM port manually. Also select the correct PBrick. An RCX, RCX1.5, or RCX2 without firmware will correctly reply to the “RCX-type” in this window. The LED in the tower should come on and the program should connect to the PBrick, which is shown by many of the menu icons now being enabled. Download firmware to the PBrick (RCX, RCX1.5, RCX2) and that is done. Next is RobotC – this very straight forward: Install the software and run it. Select menu entry “Robot” and then “Platform type”. This should be “LEGO Mindstorms RCX”. Select menu entry “View”, then “Preferences”, then “RCX communications port” and select the COM port you have the USB to serial converter on. Download the required RobotC RCX firmware – and done. Next ist NXT-G – again very straight forward: Install the NXT-G software. Install the 64 bit NXT driver – done. Finally VB 6 – this is a little more elaborate: Install the Mindstorms SDK 2.5 – this will register one essential DLL correctly (vpbcom.dll). I don’t know how many times I tried that manually – I am too old I guess. Don’t install any USB tower software – it won’t work. You can test a PBrick connection using the “ScriptEd” program – upon starting it, the IR Tower LED should come on. This program also lets you download firmware or monitor the IR tower. Very handy for checking things. Install VB 6 from the CD. Now the trick here is that a full default install won’t work. Follow the instructions of this youtube video. There are many others, but this worked for me. I did the install directly from the “VB6 Professional CD” I still had (the video assumes you have an enterprise version but that makes no difference). The single most important point is to uncheck either the entire “Data Access” check box during the preparation steps for the installation or select “Data Access”, click “Change Options” and uncheck the “ADO, RDS, OLE DB Data providers” entry. The let the install program do what it has to do and be patient at the end, when it attempts to register all sorts of things. That may take several minutes, at least on my machine. I had a cup of coffee, did some other things and when I came back, it successfully finished the install. Install VB6 SP6 in case it is not already on the CD. Install the cumulative patch for VB6 SP6 in case it is not already on the CD. Right click on the new VB6 icon in the start menu, go to “Properties” and select “Run in XP SP3 compatibility mode”. Run VB6. Open or start a new project, then select “Project”, “References” and then tick the “LEGO VPBrick 2.1 Type Library” – and access to the above PBricks is established! The Mindstorms SDK has a PDF explaining the calls to the routines you need for that (e.g. ”FindPort” or “OpenPort”. This is it. At least on my computer. There may some other things to do on other machines, but it really appears to be doable. Just in case you want to program with VB6 “forever” or more importantly run all of TLG’s miracle PBricks from the latest Microsoft OS … as I do. And Yes I know, neither Microsoft nor any decent programmer will endorse this, in contrast. But then: It wasn’t my fault that TLG never published a 64bit driver for the Mindstorms USB tower. Nor did Microsoft ask me whether or not it would be OK to abandon VB6. All the best Thorsten