Skip to main content

Posts

Showing posts with the label leJOS

Agilis, a holonomic robot

Some days ago, I ran over a very nice holonomic robot, created by Dutch NXT builder Aswin Bouwmeester . It is called Agilis , a very appropriate name: What makes this robot particularly interesting is the series of blog entries its creator has published on his blog NXT time ; there, he describes in detail how to program holonomic movements with the powerful frameworks of leJOS , a popular Java-based programming language for the MINDSTORMS.

Finding a ball

For my actual project, a soccer-playing NXT robot, I've started with a prototype that is capable of finding a ball that broadcasts infrared signals; on that behalf it uses the IR Seeker Sensor by HiTechnic : The programmed with leJOS NXJ , the Java platform for LEGO® MINDSTORMS NXT; working with it again revealed to me how powerful and elegant, yet easy to use leJOS has become by now.

The NXT on Java One

As most of you might know already, leJOS is an Open Source project that provides a Java platform for the NXT. On JavaOne , World's largest Java conference that took place at beginning of June again in San Francisco, there also was a presentation by two members of the leJOS project that was very well attended and met: The slides of the presentation can be found here .

New release of leJOS NXJ out

A new release of leJOS NXJ , the Java platform for the NXT, is out! The new version 0.8 contains plenty of new features, bug fixes and improvements, including Controlling the NXT from the computer  Faster bootup times Support for RS485 Support for RFID, RCX Rotation Sensor, and EOPD sensors Support for Java 1.6 classes  Support for Generics, Enum classes and foreach loops Support for subsumption architectures NXJControl utility for quick control of motors and sensors Wider support in the lejos.navigation packages javax.microedition.location for Bluetooth GPS Lots of sample code in the 'samples' directory Alongside with that, a new associated version of the Eclipse plug-in for leJOS NXJ is available.

NXT Wheel: remote control for mobile robots

Remember the NXT Switchboard , the NXT-based remote control I posted some weeks ago about? It allows you to remotely control each motor of a NXT robot independently. However, it turned out that it's better suited for immobile robots as it's usually pretty difficult to actually steer a mobile robot when you need to control each of the driving motors on your own. So I decided to create another remote control particularly aimed at such car-like mobile robots, called NXT Wheel ; as a consequence, it has a large hand wheel and a speed throttle: The response time is somewhat low, though...

NXT Switchboard: another remote control for the NXT

These days, I pondered about a way to test new robots already during development phase to figure out reasonable and working usage of the NXT motors, without the need to write (and frequently adapt) a separate program each time. It occurred to me that (apart from approaches that use PC remote control) it might be a good strategy to create a NXT-based Bluetooth remote control that allows for separate control of each motor independently. And here it is: the NXT Switchboard . The program that actually runs on the robot in development (presently implemented in leJOS NXJ , the Java platform for the NXT) is a general-purpose one (it simply receives and handles the control signals sent by the remote control) and can be re-used for each robot. Of course, one can use the NXT Switchboard also to remotely control finished robots (if required). Addendum: in the video, the hand wheels are operated by my invisible Chesire Cat ;).

Java for the NXT: leJOS NXJ 0.6 is out (finally for Mac OSX)

The guys from leJOS , the Open Source Java platform for the NXT, have released a new version: " NXJ Version 0.6 is available for download . Along with numerous bug fixes, this version includes: Full Mac OSX support , output using System.out and System.err, switch statements, Bluetooth GPS, Bluetooth keyboard (SPP not HID), preliminary javax.bluetooth API, auto-run a program and many more (see notes ). Please report any bugs to the forums ." Try it!

Programming the NXT with C++

leJOS OSEK , a C/C++ based Open Source programming and runtime platform for the NXT, has released version 2 now. From the project's web site: "LEJOS OSEK is an open source firmware for LEGO® MINDSTORMS NXT. LEJOS OSEK consists of I/O driver part of leJOS NXJ platform C/Assembly source code, TOPPERS OSEK Real-Time Operating System source code[...] and glue code to make them work together. LEJOS OSEK can provide: ANSI C/C++ programming environment[...] leJOS NXJ I/O driver based C API for NXT Sensors, Motor, and other devices leJOS NXJ I/O driver based C++ API for NXT Sensors and Motor (includes many third party sensors) (TOPPERS) OSEK provided real-time multi tasking features proven in automotive industry fast execution and less memory consumption[...] NXT BIOS enables LEJOS OSEK application uploaded into Flash (max. 224Kbytes) or SRAM (max. 64Kbytes) Many examples (include NXTway-GS and NXT GT...)" If you are into C or C++, you might want to give this interesting pro...

Java on the NXT: Eclipse plugin for leJOS NXJ 0.5

The Eclipse plugin for the most recent version 0.5 of leJOS NXJ , the Java platform for the NXT, is available now. Integrated into the popular Eclipse platform, it allows for uploading the firmware and developing, compiling and uploading leJOS NXJ programs to the brick. With a lot of bug fixes and enhancements, it supports the most recent Eclipse version 3.3 (Europa) on Java 6, thus runs on Windows and Linux. For installation and usage, consult the according entry in the News section of the leJOS homepage . Please direct feedback and questions either to the author (me) or to the leJOS forum .

Model-Driven design of NXT programs

Prof. Frank Zimmermann from the Nordakademie polytechnic in Elmshorn, Germany, has published an Eclipse plugin that allows you to graphically model NXT applications based on statemachines and generate code from it that can be run on the brick (based on leJOS NXJ ). Very interesting approach and the only NXT language next to NXT-G (and maybe the VL contained in Microsoft's Robotics Studio ) with a graphical syntax. As an additional (quite helpful debugging) feature, you can even use the diagram to watch the execution of the program on the NXT! The whole thing can be seen live also on the OOP in Munich next week at Gentleware's booth. Update : a video of the plugin in action on the OOP can be viewed here .

Step-by-step instructions for Java on the NXT

Some guys from the Eindhoven University of Technology have created a tutorial that provides step-by-step instructions for the installation and configuration of leJOS NXJ . leJOS NXJ is a Java platform that enables you to write Java programs for the LEGO MINDSTORMS NXT and run them on the brick. The tutorial also shows how to use the popular IDE Eclipse for that. Hence, if you are into Object Oriented Programming when it comes to your NXT, check it out. Thanks, Christoph and Hu!

Java for the NXT: leJOS NXJ 0.4 out now

The leJOS team has released a new beta version of leJOS NXJ , the Java platform for the NXT. leJOS NXJ 0.4 beta brings along new features like "NXT to NXT Bluetooth comms, a comms proxy to talk via sockets to the outside world, greatly improved MIDP LCD UI and graphics, primitive playing of wav sound samples, a multi-level menu, and lots of other enhancements" So if you are interested to implement your NXT programs with Java, give it a try!

leJOS NXJ: new release 0.3 out now

The guys from leJOS NXJ , the Open Source Java platform for the NXT, have published the new 0.3 release . From the release news: "This new version has many new features including storing programs and data to flash memory, a menu system, a file system, and an explorer that runs on your computer." Sounds promising! Give it a try (I'll decidedly do!) and post your feedback here.