Robolab 2.9 Free Download Mac
Using the RCX Today
Last updated: September 2020
Despite being the oldest of the three Mindstorms programmable bricks, the RCX remains my favorite. I love its simplicity, small size, and its relative reliance on traditional LEGO® studs, rather than Technic beams. All the same, using an RCX is in some means harder and more complicated than when it was first released in 1998. This article will attempt to summarize some of the equipment, software, and techniques necessary to use an RCX in 2017.
Why use an RCX?
There are several reasons you might want to use an RCX instead of an NXT or EV3:
- You already have one. Peradventure you're a teacher, and your schoolhouse never bought newer Mindstorms sets. Maybe you found your old RCX equipment in the attic, and want to play with it once more. Maybe you're similar me, and you never stopped playing with information technology in the first place.
- They're cheap. If you take a limited budget to spend on Mindstorms parts, or y'all desire to buy a kit for a kid, simply you aren't sure if they'll apply information technology enough to justify the price of a more-expensive NXT or EV3 ready, the RCX could be a skilful choice.
- They're uncomplicated. For small, uncomplicated, or permenant projects, the low cost and relative simplicity of the RCX make information technology a good choice.
- Yous have a thing for retro engineering. Acknowledge it: At that place's something highly-seasoned most the 7-segment LCD display, the infrared communication, and the 8-bit SOC.
Hardware Guide
RCX Brick
The RCX brick comes in 3 hardware revisions:
1.0 - The original. The only revision to include a power input jack, and so that in addition to 6 AA batteries, information technology can also exist powered past a 9-12V AC ability supply. (Yes, you lot read that right: Information technology's an AC input).
1.five (also chosen 1.1) - Included with the Robotics Invention Organisation (RIS) one.5 gear up. Identical to the ane.0 brick except that the power input jack has been removed. Officially, the ane.v brick is also called an 1.0 brick, but with a serial number greater than approximately 300000.
2.0 - Identical to the i.5 brick except that the IR interface operates at twice the frequency (76 kHz instead of 38 kHz). This has the event of slightly reduced range, merely enables the 2.0 brick to talk to Spybotics products.
Update 11 July 2020: The "serial number greater than 300000" thing seems to non be quite true - and in fact any reference to information technology seems to have been removed from the stackexchange thread linked to a higher place. Leonardo Verde has been doing some research on RCX serial numbers, and is collecting data about the type and serial number of many RCX bricks in this class. He'southward too shared the results with me; here's a snapshot at the time of writing:
| Total Responses | 126 |
|---|---|
| Number of ane.0 bricks | 66 |
| Highest 1.0 serial number | 990439 |
| Everyman 1.0 series number | 284 |
| Number of 1.five bricks | 21 |
| Highest 1.v serial number | 585813 |
| Everyman ane.5 serial number | 356161 |
| Number of 2.0 bricks | 39 |
| Highest 2.0 serial number | 996764 |
| Everyman 2.0 serial number | 514846 |
So it looks similar 1.five bricks do reliably have a serial number over 300000, simply 1.0 bricks tin have such series numbers too.
Aside from those diffrences, all hardware revisions are functionally identical, and all firmware versions are uniform with all hardware revisions. I tend to favor the 1.0 brick due to the inclusion of the power input, and in any instance the one.0 seems to be the most commonly-available brick online.
Infrared Tower
The infrared tower is used to transport programs from a computer to the RCX, and data from the RCX back to the reckoner for logging. In that location are 2 models of infrared belfry. One connects via a DE-9 serial port and requires a 9-volt battery, while the other connects over USB, and tin can go enough power from that so equally to not require a bombardment. The USB model is more than convenient to apply (due to the lack of additional battery), and seems to be more than readily available online.
📷: Brickipedia (USB/Series)
USB Infrared Belfry on 64-bit Windows
Thanks to Reddit user MindS1 for correcting a previous error in this section.
A general-puspose Windows driver for the USB tower is merely available for 32-bit Windows. For 64-bit Windows, in that location is this commuter bachelor, but it's only uniform with "ROBOLAB for LabView". Notation that "ROBOLAB for LabView" requires an existing installation of LabView, and is not the aforementioned thing equally "ROBOLAB".
If you lot want to program an RCX brick from 64-chip Windows using any other software (ROBOLAB, ROBOTC, NQC, etc.), you can do so with a serial IR tower (and a USB-to-DB-9 adapter cable, if needed).
Motors
RCX-compatible motors come in ii shapes, which I'll telephone call "rectangular" and "cubic". The cubic motors appear in more than sets, and are in my stance easier to work with.
Cubic motors come in 2 hardware revisions. However, unlike the RCX brick, there are no visual cues on the outside of the motors to tell the hardware revisions apart. The primary departure betwixt the 2 revisions is that the older motors use internal gears made of metal, whereas in the newer motors the internal gears are made of plastic. As a effect, the older hardware revision is more durable. It'due south also heavier, which is the best way to tell the difference between the two hardware revisions. You'll see the older revision described on Bricklink as "Older, heavier weight" and the newer revision described as "Newer, lighter weight".
Lots more technical info well-nigh RCX motors (and other LEGO motors) can be found here.
Sensors
The offset-party sensors available for the RCX are Calorie-free, Rotation, Touch, and Temperature. In addition, a number of third-party sensors are available, and LEGO® also produced a "DCP Sensor Adapter" which converted the RCX connector to a 7-Pivot DIN socket compatible with LogIT Microsense scientific sensors fabricated by DCP Microdevelopments.
Wires
The wires used for connecting motors and sensors to the RCX brick are terminated at either terminate with a 2x2x2/3 brick with electric contacts on the elevation and bottom. Wires are available in lengths of xv, 17, twenty, 21, 26, 36, 46, 69, 162, and 378 studs (1 stud = 8 mm = 0.315 in). Every first-party sensor except for the impact sensor comes with a short wire permenantly affixed to the sensor.
Remote
There also exists an infrared remote control, which can control the motor outputs of the RCX brick in real time without the demand for programming.
📷: Brickipedia (link)
Buying an RCX
If you don't already have an RCX, you'll demand to buy a brick and an infrared tower. Yous'll probably also want to buy some combination of motors and sensors, depending on your awarding.
Buying a set
If y'all're new to Mindstorms, you'll probably want to buy a set containing a bunch of parts. eBay and Bricklink are both expert places to buy RCX sets online.
The following sets contain RCX bricks:
| Ready | Set Proper name | RCX Brick Version | Motors Included | Sensors Included | IR Tower Included |
|---|---|---|---|---|---|
| 9790 | ROBOLAB Team Challenge Fix | i.0 | 2 old cubic† | 2 bear upon, 1 lite | Series |
| 9719 | Robotics Invention Arrangement 1.0 | 1.0 | 2 old cubic† | ii bear upon, 1 light | Serial |
| 9785 | ROBO Technology Set (Serial)* | 2.0 | ii one-time cubic† | ii touch, 1 low-cal | Serial |
| 9786 | ROBO Technology Set (USB)* | 2.0 | 2 one-time cubic† | 2 touch, 1 calorie-free | USB |
| 9793 | ROBOLAB Squad Challenge Set (Serial)* | ii.0 | ii rectangular | 2 touch, 1 light | Serial |
| 9794 | ROBOLAB Squad Claiming Set up (USB)* | 2.0 | 2 rectangular | ii affect, 1 lite | USB |
| 3804 | Robotics Invention System ii.0 | two.0 | 2 onetime cubic† | 2 bear on, 1 light | USB |
†LEGO changed the production method of the cubic motors with fiddling fanfare, and in the eye of production of diverse sets. Thus, it'southward hard to tell whether a set you buy will incorporate the older or newer cubic motors, especially when purchasing a newer set (lookin' at you, 3804).
The ideal fix would be one that contains an RCX ane.0 brick, older cubic motors, and a USB IR tower. As you can see, such a set doesn't exist. So, you'll have to decide which of those features you care about nigh and which you could practise without. Alternatively, you could purchase either set 9790 or 9719 and supplement that with a USB IR tower, which can be indiviually purchased for relatively little online.
Ownership individual parts
If you already take a bunch of LEGO® elements, you can relieve some money by buying just the electronic components you want. In my experience, Bricklink is the all-time place to buy individual Mindstorms components (or individual LEGO® components of whatever kind). Here are links to all the parts I've mentioned:
| Name | Part number | Link |
|---|---|---|
| RCX 1.0 brick | 884a | Link |
| RCX i.five brick | 884b | Link |
| RCX ii.0 brick | 884c | Link |
| IR Tower (USB) | x431c01 | Link |
| IR Tower (Serial) | 9713 | Link |
| Rectangular motor | 2838c01 | Link |
| Cubic motor, old | 71427c01 | Link |
| Cubic motor, new | 43362c01 | Link |
| Light sensor | 9758 | Link |
| Rotation sensor | 9756 | Link |
| Temperature sensor | 9755 | Link |
| Affect sensor | 9757 | Link |
| DCP Sensor Adapter | 9917 | Link |
| Wire (general search) | Various (most starting with 5306bc or 5306ac) | Link |
| Remote control | 9738 | Link |
Programming an RCX
Windows
In my feel, programming an RCX brick is most easily done from a computer running Windows. Several languages are available. On 64-flake versions of Windows, the USB IR tower can but be used by "ROBOLAB for LabView"; run into above for more than info.
ROBOLAB is the best of a couple of pieces of software officially distributed past LEGO for programming RCX bricks. It's based on National Instruments LabView, and dissimilar later on LabView-based Mindstorms software (NXT-Grand and EV3-G), the visual resemblence is striking. The latest version of ROBOLAB is two.ix.4c, though version 2.5.4 is similar; the primary departure is that 2.nine.4c tin can also programme NXT bricks. Unfortunately, it can exist pretty difficult to become ahold of a re-create of ROBOLAB these days if you don't already accept one; relatively few copies are available on Bricklink, and can go for upwardly of $50. Note that afterwards installing v2.9.4 from a CD, you'll desire to also install the 2.ix.4c patch, which can exist found here.
These days, I practice most of my RCX programming in ROBOTC. As the name implies, ROBOTC is a C-based language designed for robotics; versions of ROBOTC are also bachelor for NXT/EV3 programmable bricks, VEX IQ "robot brain", VEX Cortex/Pic microcontrollers, and Arduino. Back up for the RCX is not included with current versions of ROBOTC; even so, a legacy RCX version is available, and this has the added advantage of beingness free, whereas other versions of ROBOTC are not. ROBOTC likewise comes packaged with a pretty skilful Integrated Development Environs, and lots of assist and resources are available to larn how to use it, because of the support for many popular educational robotics platforms.
Another C-based language for the RCX is NQC ("Not Quite C"). One of the oldest tertiary-party languages for the RCX, NQC has the advantage of working on all three popular desktop operating systems, and developer Dave Baum has written several books virtually the RCX system, which include data about NQC and its use. Some other advantage of NQC is that information technology uses the stock firmware on the RCX (i.e., the same equally used past ROBOLAB), unlike ROBOTC or LeJOS.
For people who prefer programming in Java, at that place'due south LeJOS . Brusk for "LEGO Java Operating Organization", versions of LeJOS are also available for the newer NXT and EV3 bricks, and LeJOS has proven to be one of the nigh popualr languages for third-party RCX programming.
Several other languages be for the RCX, with which I am less familiar or which are hard to find present. These include:
- pbForth - an implementation of Along for the RCX. Deveoped past Ralph Hempel, who later on worked on pbLua for the NXT and ev3dev for the EV3.
- brickOS - allows you to program your RCX in C or C++. Never used it earlier. Latest release dates back to 2004, and I'm non sure if anybody notwithstanding actively uses it.
Bricxcc is a popular Mindstorms IDE for Windows which supports programming the RCX using NQC, LeJOS, brickOS, and other languages.
Linux
Every bit far every bit I'thousand aware, there are no GUI Linux applications for controlling the RCX. Still, if you're comfortable with the command line (and if you're a linux user, you probably are), at that place are several choices. These include:
- NQC - the most popular choice on Linux. A cantankerous-platform C-similar language for the RCX. Also includes various control-line tools, including the ability to send arbitraty files and opcodes to the RCX, which can be useful for programming in another languages and for general hacking purposes.
- LeJOS - Java virtual auto for the RCX. Versions besides bachelor for the NXT and EV3.
- pbForth - an implementation of Forth for the RCX. Deveoped by Ralph Hempel, who later worked on pbLua for the NXT and ev3dev for the EV3. An advantage of pbForth is that it compiles programs on the RCX brick itself rather than on the computer you're using, so all that'due south really required is the power to transfer plaintext files from to and from the RCX, which can easily exist accomplished on Linux with NQC.
It's worth noting that drivers for the USB IR tower are included with substantially all versions of the Linux kernel released in the terminal 10 years or so.
Mac
If yous have a modern Mac, the easiest matter to practice is to program your RCX in a Windows virtual machine (using a piece of software like VirtualBox, VMWare Fusion, or Parallels). I've run various versions of ROBOLAB and ROBOTC in a virtual auto on various Macs, with no apparent loss of functionality.
Mac software for programming RCX bricks does exist, simply is generally either classic Mac OS software or Os X software compiled for PowerPC, significant that information technology won't run on modern Macs. However, if you have an older Mac running Mac Bone 9 or an older version of OS X (10.5 or older for running PowerPC software, 10.4 or older for running archetype Mac OS software), it is oft notwithstanding possible to programme an RCX natively on a Mac.
LEGO released versions of ROBOLAB for the Mac, and versions ii.v.4 and 2.9.four are bachelor as native Bone X software compiled for PowerPC. Equally far as I'm aware, the functionality of Mac versions of ROBOLAB is identical to the corresponding version on Windows, though I've never used v2.9.4 for mac. ROBOLAB for Mac is even harder to observe online than ROBOLAB for Windows, although it appears that afterwards versions of the software were distributed on a single disc containing both Windows and Mac versions of the software.
NQC , LeJOS , and brickOS all have varying degrees of compatibility with Bone 10. Sometimes, compiled versions of the software are available for the Mac; other times, information technology's necessary to compile the software yourself. I'm non aware of whatsoever Mac IDEs for whatsoever of those languages; the NQC website links to a Mac NQC IDE called MacNQC but the link is dead at the time of writing.
Since pbForth compiles and runs code on the RCX itself, all that's necessary to use it on a mac is the power to send plaintext files from the mac to the RCX, which can exist achieved with NQC.
Resource
If you know of any other resource that should exist added to this list, feel free to let me know by dropping me an electronic mail.
Hardware/Building Guides
- Linda Hamilton's Lesson Plans - many projection ideas suitable for home or classroom use, most of which use the RCX or can be built with parts from RCX kits.
Software/Hacking
- RCX Firmware - info nearly RCX firmware, as well as downloads of diverse First- and Tertiary- party firmware images.
- Linux NQC Programming - a detailed write-up covering programming an RCX brick using NQC on Linux. Written for use with a Raspberry Pi, but applicative to Linux systems in general.
- RCX Internals - information about the internal workings of the RCX and Serial IR tower, including hardware teardown, word of IR communications protocol, and complete opcode reference.
- RCX 2.5 SDK - archives of various tools and documentation for use with the RCX, Spybotics, and Scout bricks which are no longer posted on LEGO's website.
Sharing
- LDraw - an open standard for LEGO CAD programs. Various editors are bachelor for many platforms. Different LDD (the official LEGO CAD program, which incidentally can output to LDraw format), LDraw's parts library is much larger, and includes RCX components.
- r/mindstorms - Good place to inquire questions well-nigh the RCX and other Mindstorms products, as well as to see things other people have done.
- LEGO Stack Exchange - Non RCX-specific (or even Mindstorms-specific), but still a adept identify to ask questions near the RCX.
Full general/Miscellaneous
- pbrick.info - Lots of great info virtually diverse discontinued Mindstorms bricks, including the RCX.
- Bricklink - The best place to identify parts, discover the contents of sets, and purchase individual parts.
- LEGO Engineering - Resources and info about various Mindstorms platforms, including the RCX. In detail, info near ROBOLAB patches and 64-bit Windows USB belfry drivers.
- Is Iron Homo Made of LEGO? - NQC source code spotted in the Atomic number 26 Human movie. Non actually a relevant or useful resource, only pretty funny.
Books
I haven't read these books, and they were published near the fourth dimension of release of the RCX, so some of the information may now exist obsolete or irrelevant.
- Definitive Guide to LEGO MINDSTORMS, Second Edition by Dave Baum
- Edifice Robots With Lego Mindstorms: The Ultimate Tool for Mindstorms Maniacs by Mario Ferrari, Guilo Ferrari, and Ralph Hempel
- The Unofficial Guide to LEGO MINDSTORMS Robots by Jonathan Knudsen
- ...and various others
Frequently Asked Questions
Generally compiled from searches of Quora, the Mindstorms subreddit, and the LEGO Stack Commutation.
I changed the batteries in my RCX and now all my programs are missing! What happened?
The RCX'south programs and firmware are stored in RAM. This made the brick cheaper to manufacture, because RAM was much cheaper than flash storage in the 1990s. However, a downside of RAM is that it needs to be continuously powered to retain the information it's storing. Thus, when power is cutting to the RCX, such as when batteries are removed, its memory is erased, and it reverts to the default firmware and programs.
Happily, within the RCX there is a small capacitor, which maintains power to the RAM for approximately 20 seconds subsequently the batteries are removed. Thus, if you change the batteries within that time, the brick'due south memory will be preserved. Irresolute the RCX's batteries inside 20 seconds sounds difficult, only is really non as well hard with some practise.
I read on [Website] that I can't utilise the USB IR tower with 64-flake Windows! Is that true?
For most applications, yes. See above for more data.
Tin can I send data to the RCX from a [TV remote/IR port on an onetime laptop/IR LED and an Arduino]?
From a TV remote, probably not, since the RCX doesn't understand data TV remote-control protocols (but yous may be interested in the kickoff-party remote control, which provides like functionality).
But if you have direct command over what the IR LED does, yes! James Hagerman reports replicating the functionality of the LEGO IR tower with an Arduino and an IR LED and reciever, and posted a writeup nigh that here.
I no longer want my RCX bricks/motors/sensors! What should I exercise with them?
Probably the best thing to do is to sell them on eBay or Bricklink. If for some reason y'all don't desire to do that, send me an email -- peradventure I'll have it off your hands.
I want my RCX to play music!
This is a surprisingly common thing to want to practise. The easiest mode I know of is to notice or compose a piece of music in the Ring Tone Text Transfer Language, and then apply ROBOTC for RCX, which includes a tool (only visible if using menu-level "superuser") for transferring RTTTL tunes to ROBOTC commands which crusade the RCX to play the described melody.
Can I utilize RCX motors or sensors with the NXT or EV3? What virtually with an Arduino or Raspberry Pi?
A converter cable is available which converts the connector used by RCX motors and sensors to the RJ12 connector used by the NXT and EV3. The NXT was designed to be backwards-compatible with RCX motors and sensors, and it's easy to do this in ROBOLAB 2.9 or NXT-G (with the download of some additional sensor blocks for NXT-Chiliad).
Unfortunately, due to the EV3 using a slightly unlike pinout for the sensor ports, the LEGO converter cable will not connect RCX sensors to the EV3 (more info in this stackexchange thread). Others accept produced homemade converter cables which connect the sensors to the right pins on the EV3, but in whatsoever case RCX sensors are unsupported in the official EV3 software, then utilise of such converters would have to be in conjunction with a third-party firmware such as LeJOS or ev3dev.
To drive RCX motors & sensors from an Arduino or RPi, in that location are a couple of options. Outset, y'all could utilise a Dexter Industries BrickPi, which adds some NXT/EV3 ports to a Raspberry Pi, and utilize the advisable converter cables to connect the RCX-era devices. Alternately, the RCX motors and sensors are elementary enough that information technology would probably exist pretty easy to drive them directly. The motors expect 0-9V, and the sensors should return an analog voltage from 0-5V.
I'm having troube downloading firmware or otherwise transferring large programs or files to the RCX!
In my experience, the most common cause of communications failures is interference from brilliant room or outside light. When downloading firmware or large files to the RCX, I find it helpful to identify a box or other opaque structure over the RCX and IR belfry in order to prevent visible light interference.
Further give-and-take of other causes of communications failure tin can be establish in this stackexchange thread.
Update Log
From time to fourth dimension, I update this page to correct errors or add new data:
- 7 September 2020 - Modernize title; rewrite a couple of FAQ answers; add together update log.
- 11 July 2020 - Add together serial number tabular array; clarify section on 64-fleck Windows USB tower driver.
- xix June 2017 - Add together reference to 64-chip Windows USB tower commuter.
- 7 June 2017 - Initial Release.
Robolab 2.9 Free Download Mac
Posted by: umsteadpironerts.blogspot.com

0 Komentar
Post a Comment