Tuesday, July 25, 2006

Intermediate Wishlist

Just in case the right people are reading this post, here's my current wish list for upgrades and new features. I hope you chime in, and leave your most wanted features and parts in the comment section.


1) A "COM" action block and a "COM" sensor block that allows to communicate directly to the communications port on Bluetooth, and bypasses any mailbox system. The mailbox is great between NXT sets, but not so great when communicating with some other devices.

2) The ability to receive from the Ultrasonic sensor without sending the US blip (i.e. turn the transmitter off). This will help a lot in situations where multiple NXT bots are in the same room. Turning the US transmitter off allows to distinguish between your own US and some other robots US. It would also be a great way to get a general direction on where the other robot is, which would be nice to build swarm behavior. It is possible that the US is hardwired to transmit and receive at the same time, and that the firmware cannot change this behavior.

3) A "battery" sensor block that allows the software to detect the current level of the battery. To enable the robot to come home when battery is almost empty.

4) An method to communicate with I2C devices directly. I'm not exactly sure how the NXT port works, but I believe Brian Davis referenced that the NXT sensors communicate using I2C. If this is the case, then perhaps it would be nice to have an I2C action block and a I2C sensor block, that allow to connect up I2C parts, which can be found everywhere.


1) Documentation on how to extend the NXT-G. This would allow the community to create plug-ins that bring new features to the NXT-G, mostly in the form of online content becoming available within the NXT-G.

2) Every proporty can be seen in a property window. Currently, the property window only shows a subset of the actual properties, and many properties can only be set by drawing data lines. It is often not clear if the data line has connected to the right points. A property window, even if read-only, would help a lot.

3) An object browser. This allows to select the item from a list instead of graphical. In particular, I'd like the ability to select data lines as items with at least two properties (connecting to ... and ...).


1) Serial port. It may seem incredibly easy relative to the other parts that people at HiTechnic and Mindsensors are building, but just a simple serial port to NXT sensor connector bridge would make a lot of difference. I could revive some of my old robots with a NXT brain, and there are plenty of robot parts & sensors to connect to RS232.

2) Multiplexer. Ports you can never have enough off. HiTechnic will introduce a multiplexer, so this is really just a matter of waiting.

3) Tilt sensor (accelerometer). Can't build a real biped without it, and many other cool robots need it too. There are tilt sensors the connect to RS232, but nothing beats a real Lego part.

4) Compass sensor. One from Mindsensors is already available for purchase right now, and HiTechnic has announced a compass as well.

4) Stereo hearing. Can't build this in software, the speed of native electronics is needed to distinguish the minute changes in timing.

5) Object recognition camera, like the POB-EYE (from POB Technology). Could Lego or a part builder please go talk to these guys, and make turn it into an easy-to-use Lego part? It already features an I2C bus, and currently sells for 179 EUR. OK, so it would be a really expensive part, but it is really cool to have a Lego robot that does object recognition and motion tracking.



At July 25, 2006 9:55 PM , Anonymous Anonymous said...

Great wishlist suggestions. But to make some of these possible, Lego needs to hurry up and publish the hardware specs and release the hardware developers kit. I have heard that the voltage & current supplied on the 6 wire cable may be marginal for certain sensors that need 5V.

At July 26, 2006 2:16 AM , Anonymous Louis Davis said...

The CMUCAM2 looks very interesting, as well. It is similar to the POB-EYE for object recognition and motion sensing.

At July 26, 2006 10:33 AM , Anonymous Filip said...

Hi Louis and anonymous,

Beyond opening up the hardware specs, it would also be nice to release the firmware to open source. Lego has promised to do both. My out-of-the-blue guess is they have both planned for August. The only reason I can come up with for them not to have done that is that they are still improving the documentation quality.

The CMUCAM2 is pretty good, but it uses a lot of silicon to do motor control, which is not relevant for the NXT. Also, it hasn't evolved for years, making it fall behind. For instance, it tracks colors, but cannot recognize and identify the shape of the object.

The way I understand it, the POB-EYE can be programmed to identify different shapes. I assume this means it possible to build visual recognition of Lego parts, and distinguish a robot from the cat. I'm not exactly sure how far one can push this, but it looks like fun to try.

Meanwhile, I'm also wondering whether HiTechnic's upcoming color sensor could help me differentiate between different robots based on color recognition (assuming different robots have different colors).

At July 31, 2006 8:56 PM , Blogger Drew Stevenson said...

I love your idea about color recognition for robot ID.

The Camera and image recognition was partly possible with Vission Comand an RIS add-on. It allowed you to program "areas" of detection which you could shape in different ways. (you could thuis sort bricks by color and size)
Is their any hope of writting a program that grabs the comands that Vission Comand tries to send to IR and redirect to BT in NXT talk? OOOhhh what about those IR Sensors - might their be a possibility that the PC and webcam could talk to NXT via Vission Comand IR?
Any info on if the IR bridge allows NXT to talk to RIS directly or is this mainly for people who write their own code?


Post a Comment

Subscribe to Post Comments [Atom]

Links to this post:

Create a Link

<< Home