Skip to main content

Posts

Showing posts with the label Java

Remotely controlling NXT robots using leJOS NXJ

For a project where multiple NXT bricks need to be remotely controlled by a single remote control, I decided to build that control with LEGO® MINDSTORMS NXT also, so that one (master) brick would control three other (slave) bricks wirelessly using Bluetooth. From earlier projects I knew how laborious the programming of something like that is apt to become, in particular with NXT-G; so this time, I decided to use leJOS NXJ , the Java platform for the NXT. Still, I expected to have to invest quite some amount of time with writing a lot of complex program code, both for the master brick and the three slave NXT bricks. But far from it! I'm still quite out of my mind how incredibly ease such a task has become when using the RemoteNXT class that comes with the most previous release 0.9 of leJOS NXJ! One (!) single line of code, and your master NXT is connected to a remote NXT: RemoteNXT remoteNXT1 = new NXTRemote("NameOfARemoteNXT",Bluetooth.getConnector(). You d...

New Java book for the NXT

One month ago, a new book has been published by Brian Bagnall, one of the main contributors to leJOS NXJ , the Open Source Java platform for the NXT: Intelligence Unleashed: Creating LEGO NXT Robots with Java . Brian has already written NXT books with a focus on Java in the past, and this new one "helps engineers and amateurs alike design and build their own customized robots, programmed however they desire. A diverse set of projects is accompanied by building tips, programming code, complete 3D-rendered building instructions, and hundreds of illustrations. The NXT intelligent brick’s Bluetooth capabilities are introduced, as are the newest available parts, from GPS to the RFID sensor, in this useful handbook that serves as the perfect compliment to the LEGO NXT kit." as the description on Amazon says. I have not laid my hands on it so far; in case one of our readers has already tried it or knows about videos or images on the robots of the book, please provide feedback...

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.

Lemon 2.0: Compare your model against different NXT sets

Lemon (LEGO® Model Nibbler) is a tool that allows for finding out whether a LEGO® model can built with a particular NXT set or which parts are needed beyond the contents of that set. The brand-new version 2.0 is a Java application that compares a LEGO® models laid down in LDraw or LEGO® Digital Designer   format against different NXT sets and lists  the parts that are used in one model but not in the kit (and vice versa). Using a graphical user interface, the model can be checked against the NXT Kit 1.0 (#8527) the NXT Kit 2.0 (#8547) the NXT Education Kit (#9797) the NXT Education Resource Set (#9648) the NXT Education Kit plus the NXT Education Resource Set The results might be exported to a HTML, PDF or Excel file then. All you need for installation (best with Firefox web browser) is a Java 6 Runtime on your machine. Give it a try - I'd be grateful for feedback, proposals or bug reports . Don't hesitate to contact me in case of troubles with t...

Release 0.85 of leJOS NXJ

At beginning of September, the Open Source project leJOS has released version 0.85 of leJOS NXJ , the Java platform for the NXT. 0.85 is meant as a intermediary release on the road to the first major version 1.0; nevertheless, it features a lot of enhancements, amongst others support for the new LEGO color sensor in the NXT 2.0 set better support and documentation for MAC OS X, including the Fantom USB driver a plug-in for the Netbeans IDE improved JVM speed support for the instanceof keyword detection of rechargeable batteries and improved battery indicator platform independent lejos.robotics packages In addition, there are some previews included to upcoming technologies, such as new navigation proposal (work in progress) that is platform independent, supports more vehicles, has better localization support, and new concepts of pose controllers and path finders preliminary support for probabilistic robotics, including general purpose KalmanFilter class using matrix algebra reworkin...

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.

Eclipse plugin for leJOS NXJ

Version 0.7 of the leJOS NXJ Eclipse Plugin is available now. It supports the most recent version of leJOS NXJ , the Java platform for the NXT, on Windows (XP or Vista), MAC OSX and Linux. With this plugin, you can use the popular Eclipse development platform for programming your NXT robots with Java . Use Eclipse's Update Manager to install it from the remote update site as follows: Name: leJOS NXJ (or whatever you like) URL: http://lejos.sourceforge.net/tools/eclipse/plugin/nxj/ For configuration and usage, consult the leJOS NXJ topic in Eclipse's Help->Help contents view after installation.

leJOS NXJ 0.7

Version 0.7 of leJOS NXJ is out! leJOS NXJ is a full-blown mature Open Source Java platform for the NXT with a Java Virtual Machine that runs directly on the brick. The new release "includes a Windows installer to make installation a breeze for new users (the compressed-file distribution is also still available). New features include better USB support, no more using a paper clip to upload firmware, faster garbage collection, three new GUI tools, a brand new Tutorial , support for many new sensors, bug fixes and much more." There's also preliminary support for mobile phone remote control and Monte Carlo Localization. It's decidedly worthwhile to have a look!

Version 1.6 of Lemon released

I've released version 1.6 of Lemon , the LEGO® model differ. Lemon ( LEGO® Model Nibbler ) is a Java application that compares two LEGO® models laid down in LDRAW or LDD format and lists the parts that are used in one model but not in the other one (and vice versa) as well as the common parts of both models. It is possible also to check a model against the NXT Retail Kit or the NXT Education Kit. The new version comprises a new export feature for comparison results (into a text file) as well as numerous bug fixes (in particular for the Java 5/6 version issue). To install it, just click on the installer link on Lemon's home page (you will need to have Java installed). If you encounter problems or want to provide feedback, please contact me via my contact page .

Lemon 1.5: Comparing LEGO® models

Today I've published version 1.5 of Lemon on my web site for Download . Lemon is a Java -based application with a graphical user interface that allows for comparing two LEGO® models that are stored in LDraw or LDD format; the common parts are listed as well as the ones that are contained in one of the models only. It's also possible to check a model against the NXT Retail Kit or (new to 1.5) against the NXT Education Kit - comes in handy if you want to know whether a model can be built with one of these kits. Moreover, the new version supports multi module models now and contains numerous bugfixes. Give it a try, please, and provide feedback and proposals. Addendum: If someone is encountering problems with Lemon, please do not hesitate to contact me via the contact page on my web site.

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!

Neural Network Manager for the NXT

Christoph Bartneck , Assistent Professor at the Eindhoven University of Technology, has blogged about a new Java-based application with a graphical user interface that "allows Lego fans to easily create, manage and train a neural network which can be exported and used in any program to be designed to run on the LEGO NXT." From the web site: "The total system comprises of two main parts, a UI running on the NXT and the Neural Network Manager running on the PC. The Neural network is created by the Neural Network Manager and can once trained be exported to a Java file that should be compiled and uploaded to the NXT." Now, doesn't that sound interesting?

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 .

Java for the NXT: leJOS NXJ 0.5 is out!

The guys from leJOS NXJ , the Open Source Java platform for the NXT, have published the new beta release 0.5 . Prominent changes and new features are: Support for Macintosh OSX (USB only so far) Support for many third party sensors and adapters Greatly improved Bluetooth support including multiple connections and power off RCX comms using Mindsensors NRLink adapter Garbage collector Improved Ultrasonic sensor support Execution of code from flash Automatic defrag of file system Remote monitoring and tracing over Bluetooth Remote debugging (tracing) over USB Faster and more accurate Motor regulation Speed improvements If you are into Object Oriented Programming for your NXT robot, check it out . /MP ps. An updated version of the Eclipse plugin for leJOS NXJ will be provided soon.

Lemon: comparing LEGO(R) models and checking against the NXT kit

Remember the beta release of a Model Differ application I posted about some days ago? Finally, the first productional of it is available now, called Lemon 1.0 . It features comparing LEGO(R) models laid down in LDRAW (.ldr) or LEGO Digital Designer (.lxf) format comparing such models against the NXT Retail Kit listing parts contained in each model only listing parts commonly contained in both models easy one-click installation and running using Java Web Start (the only thing you need is a Java 5 (or above) runtime on your computer - might already come pre-installed on your operating system) supported on all platforms Java 5 is available for (in particular Windows XP, Mac OSX, Linux) If you ever needed to know if your (or other people's) model can be built with a single NXT Retail Kit and which parts you need in addition, or if you ever were curious in which parts two models differ, this Java-based application might prove useful for you.

Comparing LDRAW models and checking against the NXT Retail Kit

As someone who is running simply a large trunk with LEGO parts where a new NXT kit gets emptied out to for further building I have found it hard in the past to answer frequent questions like "Can this model of your's been built with a single retail kit?" - figuring out the answer to that was somewhat troublesome and required a lot of comparing to the according parts inventory at Peeron. Hence I finally implemented a Java application that may come in handy: Model Differ (working title). It allows for comparison of two models that are laid down in LDRAW format and lists the parts that are mutually not contained (honoring also the number of occurrences of a particular part). For convenience, it's possible also to check a model directly against the NXT Retail Kit. If you are into CADing your models with LDRAW, have a look - the only thing you need is a Java Runtime (version 5 or above). And some LDRAW model, of course.

Java for the NXT: Eclipse-Plugin

Good news, everyone! (in my best Professor Farnsworth voice) At least for those amongst us who are into programming their NXT with Java , in particular with leJOS NXJ : there's finally an Eclipse plugin available that in an integrated way allows to upload the firmware and to develop, compile and upload NXT Java programs to the brick in Eclipse (the most popular Java IDE presently around, and justifiably so). Based on the latest leJOS NXJ release , it supports the most recent Eclipse version 3.3 ( Europa ), thus runs on Windows and Linux. Use Eclipse's Update manager to install it from the remote update site as follows: Name: leJOS NXJ (or whatever you like) URL: http://mynxt.matthiaspaulschol z.eu/lejos/eclipse/ For configuration and usage, consult the leJOS NXJ topic in Eclipse's Help->Help contents view after installation. Give it a try and provide feedback. Oh yes...

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!