I have compiled a list of links to clubs, resources and other cool stuff Lego…

NXT and Mindstorms Related Blogs
NXTasy.org .. a Lego Mindstorms NXT Community
The NXT Step The NXT STEP Blog brings together news and information related to the LEGO Mindstorms NXT system.
BNXT
NXTBot Covering the world of consumer and personal robotics

Lego Community / Market / MOCs
LUGNET, the worlds largest online Lego community.  If you want info on Lego, go there.
RTL Toronto. The local Robotics / Train club in the Greater Toronto Area. A lot of cool things happen there…
BrickShelf Lego Maniacs from all over upload their MOCs here.
A central portal to begin to discover everything related to lego. Great for those who are just starting out and are looking for links…
Bricklink Looking for those hard-to-find Lego pieces?
Lego Mindstorms The official Lego Mindstorms website.
Lego The official Lego website.

Rendering / Instructions / CAD
LPUB By Kevin Clague – don’t know what I would do without this tool…
LSYNTH Another great tool from Kevin. Allows you to create benable parts in your renderings.
LDRAW A collection of tools to create, edit, render and publish Lego parts and creations.

Programming / Sensors / Other
Pete has put together some very interesting and useful sensors here. You can buy directly from him.
MINDSENSORS A variety of NXT and RCX custom sensors such as multiplexers, sensors and actuators which are LEGO RCX, Mindstorms NXT, and I2C compatible.
NQC (Not Quite C) is a C-based programming language that is powerful and easy to learn. NQC is a DOS-based compiler. You write your code, then compile it using NQC or NQC with a 4GL program such as BricXCC (RCXCC).
BricXCC / RCXCC A great Windows-based development environment for programming the RCX.
RobotC A great Windows-based development environment for programming the NXT using a C-like language.

Cool Technic / Robot Creations
Jennifer Clark Some of the coolest scale models of construction equipment I have seen. Excellent work and detail.
J.P. Brown Excellent – just check out the CubeSolver….
Jin Sato A nice gathering of cool robots.
Joe Negata A neat list of Lego robots.
Demmos Bosman Nice scale models of various trucks.

Other
Lego Lingo Every business / sector / whatever has its acronyms. Well, so does Lego. Check it out.

A while back, I received an email from Mario Ferrari informing me that he was going to send copy of his new book, Building Robots with Lego Mindstorms.  When I received the book, I immediately cracked it open and skimmed all the sections.  My first reaction was that the book being some 600 pages in length contained a plethora of information similar to that of other Lego Mindstorms books written by other Lugnet members.  Once I had a chance to go through the book in more detail, I realized that it offered much information about the various building techniques and programming languages used to build robots.  The book offers a wide variety of pictures, new ideas, and new approaches that I will find useful when building my next challenge.  The appendix offers a great resource of links to other user-sites where even more great ideas and info can be found.  If you are a beginner to intermediate Mindstorms user, you will find this book exciting and informative.  Considering myself between intermediate and advanced, I found the book exciting to read and informative but was hungry for some advanced building ideas and instructions.  One thing that I would like to see for future writers of Mindstorms-type books would be a building instructions section, or possible a CD containing drawings/instructions for advanced projects.  Good work guys!

The Official Guide to Lego Mindstorms by Johnathen Knudsen.  I found reading this book to be quite informative.  I have spent much of my time building and programming Lego Mindstorms.  The book covered this area from the basics right up to higher level development.  There were many pictures, step-by-step instructions and code samples as well.  I learned a few tricks from the code samples in this book.

Having participated in the creation of this book, I have to admit some bias to the review. 10 Cool Lego Mindstorms Ultimate Builders Projects contains 10 original Lego Mindstorms creations.  The model I submitted is DominoBot. It was a great challenge to build and create the building instructions for this model.  The book contains step-by-step instructions on how to build each of the 10 robots.  The book should challenge the intermediate enthusiast and contains some great ideas on building techniques. If you are interested in this book, it can be obtained by most retailers including Amazon, Chapters, Ingigo, and the publisher Syngress. I have also included building instructions in the Instructions section of this website.


A while back, I was given a challenge to integrate a dynamic JavaScript-based legend into Chameleon 1.1.  The following information is my take on creating a Widget for use in a MapServer / Chameleon 1.1 implementation.  If you are not sure what Chameleon and MapServer are, then the following info may be of little use to you.  To learn about these online mapping tools, you can find more at the DM Solutions – MapTools website.

First, the disclaimer stuff: I am not a PHP / MapScript guru and learned much of the skills used in developing this Widget by reviewing and understanding code written by DM Solutions.  DM Solutions developed Chameleon as a interface to MapServer.  DJAJSLegend Widget is provided “as is” and I offer no warranties or guarantees that will work in your environment yada yada yada.  The code was developed and tested on IE 6, IIS 5.x running on both Win 2000 and XP machines.

:-)

The provided code is open source and contains copyrighted components (as described in the code) by other authors as well.  Translation – I was not the original creator of the JavaScript Tree Legend code. My role was to take the Tree Legend, make it “callable” from within a Widget and allow for some of its properties to be controlled more easily by users of Chameleon.

Now on to the nitty-gritty. The purpose of this Widget is to allow a user to create a tree-like legend.  It is flexible and can be modified using a variety of different parameters in the Widget call. A sample call is here:

<CWC2 TYPE="DJAJSLegend" TREESOURCE="treelegend/tree/tree.js" MENUSRC="treelegend/zenondemo.js" TREECSS="treelegend/tree/tree.css" OPENNODES="[1,4,16]"AUTOSUBMIT="0" LEGENDSTYLE="4" />

TREESOURCE – optional – if specified, you can provide the virtual reference to the file tree.js. If not specified, the default location is used.

MENUSRC – optional – if specified, you can provide the virtual reference to the file zenondemo.js This file contains an array that is used to construct the tree and parent/child nodes. Please read the notes in the file for details on features that can be added / removed.

TREECSS – optoinal – allows you to specify the location of the style sheet file. The CS Stylesheet used to change the look of the tree.

OPENNODES – optoional (recommended) – user can specify which parent nodes are to be open by default. You must use the [] brackets. If none, do not incude the option.

AUTOSUBMIT – optional – set this value to 1 of you want to map to turn on/off layers when any layer checkbox is clicked. default is 0.

LEGENDSTYLE – user can change the graphic icons used in the display of the legend. There are 3 choices. If you want to add more, see tree.js.

For those that are optional, if you want to use the defaults, do not even include the item in the widget call

For a basic Widget call, you would use the following:

<CWC2 TYPE="DJAJSLegend" LEGENDSTYLE="1" />

Feel free to download the source and try it out yourself. I ask only that you participate in the same public license practises that others do by keeping the original copyright information intact.  If you mofify, fix, update, change any part of this code, please pass it back to me. :-) .

Information

:: Chameleon 1.1
:: MapServer 4.0/4.1
:: Browsers:
NS 6+ *
IE 5.x+ *
Mozilla *
(* limited testing)

Rate This Post: 1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

I am an AFOL (Adult Fan of Lego) and specialize in building and programming Lego robots (look at the rest of this site for more of my robots). I use (or play) with Lego Technic / Mindstorms for the most part. I got an idea to see what I could come up with for a cradle for my Axim. Below is my first run at a Lego Dell Axim X50 / X50v cradle. It also has an add-on joystick for making use of the D-pad easier when playing games.

Read More >>

I managed to re-work an old design. By using 2 motors and drive mechanisms, I was able to get the walker to steer. The key to steering is the syncro mechanism that I setup. It uses 2 touch sensors – 1 on each of the left and right center drive legs. Using NQC, the code will monitor the timing of the rotations.
It goes something like this: When sensor #1 is triggered – is sensor #2 triggered? If not, stop drive #1 and wait for drive #2 to catch up, then start drive #1 again. This works quite well, except that the bot looks odd when in correction mode. Using the proximity detection from my previous bot (Proximity Detector), this walker will detect obstacles and engage in reversing and turning around. Steering is accomplished by reversing one drive unit. This will set one set of legs in reverse and steer the bot.
For more pics, go to the CREATIONS link and view the Steerable 6 Legged Hex pics.
Read More >>

Read More >>

Johnny5 was built more as a test to see how similar I could build him out of lego.  Programming on Johnny5 was simply line following with object avoidance via touch sensors at the front. His hands and head would also move in a pre-defined pattern.  The pneumatics are there for visual effects.  They serve no function on this model.

Rate This Post: 1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

DTM

This is my LEGO ??dpi (25 I think) DTM scanner. The DTM works via a combination of RCX-based code done in NQC / RCXCC, and a program made in Visual Basic (5).
RCX – The RCX is responsible for scanning a line, and populating its datalog with pixel values and then sending a signal for the PC to upload this data. The RCX then waits for the PC to send a signal back to continue.
PC – The VB application will upload the datalog and populate and array. It will also check on a few variables including a line number. With a line number, and the pixel array, the VB app will proceed to draw the image pixel by pixel. The whole process is very slow, but nevertheless, lots of fun to work with… Since there is so much to talk about with this one, I have given it a page of its own.

This is what I like to call a Digital Terrain Modeller. It is really just another fancy name for a digital scanner. First off, I would like to give credit where due:
Simen Svale and his 25dpi Lego Scanner and
KGB AgEnT (a.k.a Clint Rutkas) with his 25dpi Lego Scanner.
Both of these Mindstorms fanatics provided me with source code and ideas as to how I could make my scanner work. Thanks guys!

Read More >>