What is the difference between the NXT and the RCX? I know that the NXT is newer, but what features does it have that the RCX doesn't have, and vice versa (if the RCX has features that the NXT doesn't).
- RCX has 3 motor and 3 sensor ports. NXT has 3 motor and 4 sensor ports.
- The NXT has encoders integrated in its motors so that they can be used as servos. On the RCX you would need an additional rotation sensor on a sensor port to do that.
- RCX uses regular 9V connectors (2x2 with metal in studs). NXT uses RJ12 connectors with the latch offset to one side.
- RCX uses infrared to communicate and download programs via an IR tower connected to the PC by a serial (1.0, 1.1) or USB (2.0) connection. NXT uses a direct USB cable or Bluetooth.
- RCX has a numeric display with very few other features. NXT has a graphical 100X64 matrix display.
- RCX is LEGO system oriented - uses studs (is has four half-pin holes only). NXT is LEGO Technic oriented - it's studless and is attached with Technic pins.
- RCX comes with a very basic graphical programming language. The NXT kit includes one with more functionality (NOTE: Even powerful computers have trouble running big programs, and can easily mess them up). There exist many third-party systems for both RCX and NXT (full list on Wikipedia).
- RCX can play simple tones. NXT can do that, and also play 8Khz wav files.
- RCX takes some time to use up its six AA batteries. NXT uses them up very quickly.
- The original 1.0 version of RCX Brick had a 10v connection plug, but this was dropped from the later versions included in the Robotics Invention System 1.5. The NXT can use a rechargeable battery in place of the six AA batteries, and the rechargeable batteries also have a 10v transformer plug.
- RCX's 32 KB of RAM can store up to 5 programs. NXT's 256 KB of flash memory can hold a usually unnoticeable maximum of 64 files of varying types.
- RCX retains its memory (including firmware) for a very limited time when not powered, just enough to change batteries. NXT uses flash memory and keeps it all when not powered.
The NXT can, with the use of an adapter cable, use the RCX sensors and motors, however the RCX can not use the NXT sensors and motors. The NXT brick, motors and sensors are larger than the RCX counterparts which makes them harder to implement into a size constrained construction. However as said, you can use the RCX motors/sensors instead with the NXT brick if wanted.
The NXT programming possibilities are far greater than the RCX, both in the official and third-party languages. It has far more RAM and CPU to work with, where the RCX is a bit limited in this regard.
There is a large selection of 3rd party NXT sensors, from highly sensitive light sensors to touch screens, WIFI and GPS sensors. The NXT simply more possibilities as it provides both an analog and digital interface to sensor developers. (And it can use all the RCX custom sensors too of course.) The NXT wires are however thicker and less flexible than the RCX wires, so they are a bit harder to hide/control in your construction. You can also get some pretty long RCX wires, up to 1.5m in length iirc.