Archive for January, 2008

More Barnes & Noble Fun in Round Rock, TX

Monday, January 28th, 2008

On February 2nd from 10AM to noon, I’ll be demonstrating robots from my book The Unofficial LEGO MINDSTORMS NXT Inventor’s Guide at the Barnes & Noble in Round Rock. I recently did a book signing there, and they invited me back to participate in an event supporting the bestselling The Dangerous Book for Boys. This is a nationwide event for Barnes & Noble, meaning that BN locations around the nation are each hosting their own event with an activity that would interest readers of The Dangerous Book for Boys. I plan on bringing my “dangerous” Guard-Bot to the event as well as another robot.

The store will have copies of The Dangerous Book for Boys and my book available, and I’ll be available to sign copies after my demonstration. The address for the store is below. I hope to see you there!

La Frontera Village
2701 Parker Road Bldg A Suite 700
Round Rock, TX 78681


LEGO Celebrates the 50th Birthday of the LEGO Brick

Monday, January 28th, 2008

If Google’s response to an event measures the event’s significance, this month is incredibly important. As the LEGO Company celebrates the 50th anniversary of the LEGO Brick (the LEGO homepage reads, “Happy Birthday LEGO Brick!”), the Google homepage features the image below. Wouldn’t it be great if Google featured LEGO every day?


Barnes & Noble Book Signing in Austin, TX

Thursday, January 24th, 2008

On April 19th at 2PM, I’m going to be doing another book signing for The Unofficial LEGO MINDSTORMS NXT Inventor’s Guide at a Barnes & Noble in Austin, TX. I plan on bringing two robots from the book with me, of course, and I hope to meet some LEGO fans in south Austin.

Here is the address of the Barnes & Noble location where the book signing will be held:

Sunset Valley Village
5601 Brodie Lane Suite 300
Austin, TX 78745

Barnes & Noble

Using the Motor Power Meter Block with Tag-Bot

Wednesday, January 23rd, 2008

A reader (Nathan G.) of The ULMN Inventor’s Guide recently wrote me about an NXT-G program he was working on for Tag-Bot. The program’s purpose was to solve Tag-Bot’s inability to determine its steering position. In the book, I simply instruct readers to always center the robot’s steering before starting a program—the robot then assumes that its steering has been centered. The reader used an unofficial NXT-G block, the Motor Power Meter block, to fix the problem.

Motor Power Meter NXT-G Block

What does this enormously helpful block do? The repository on reports the following:

This block is a “sensor” which allows you to monitor the actual power sent to the NXT servo motor. In a single motor mode (Motor block) with “Motor Power” enabled the firmware automatically increases the power to keep constant speed. Monitoring the ”Actual Power” allows detecting stall conditions as well as slip conditions (e.g. when your robot hits the wall, its motors might still be able to slip in place but the robot does not move).

I modified Nathan’s program some, but the basic idea remains the same. Using the Power Meter option within the standard Wait block to determine a stall condition, Tag-Bot first steers to the rightmost position and then resets the built-in rotation sensor of the steering motor (Motor A). Next, it steers to the leftmost position and then divides the current value of Motor A’s rotation sensor by 2. The quotient is the number of degrees that the steering motor should turn to center the steering. Voilà! Automatic steering. You can start the program with Tag-Bot’s steering in any position, and it should always be able to center it.

If you’d like to download the mini-program shown below, click here. Remember that you have to download the Motor Power Meter block if you want to use this program.


Tutorial: Setting up LDraw to Create Virtual NXT Robots

Sunday, January 20th, 2008

I used the free LDraw system of tools to create most of the images and all of the building instructions in the ULMN Inventor’s Guide. If you’re interested in learning how to create virtual NXT robots as well, the following tutorial shows how to set up LDraw on your computer and customize it specifically for NXT parts.

Note that the most commonly used LDraw tool for creating models is the program MLCad (see image below). To facilitate the process of finding and selecting parts from the NXT set within MLCad, I’ve customized a “favorites” file used by MLCad, listing all the pieces in the retail version of the NXT set. The pieces are listed in the same order as found in Appendix A (LEGO MINDSTORMS NXT Piece Library) of the ULMN Inventor’s Guide. You’ll use this customized file in the tutorial.


Setting Up LDraw to Create Virtual NXT Models (for Windows users)

Note: If you already have LDraw and MLCad installed, skip to step 2.

Step 1: Download the LDraw Tools Installer from the LDraw website. Once downloaded, open the file and follow the instructions. You can choose “Basic,” “Intermediate,” or “Advanced” installation. For this tutorial, only “Basic” is necessary (which includes the installation of MLCad).

Step 2: Download the Unofficial Part Files from the LDraw website. Although you don’t need all of the unofficial files, you’re going to download everything at once to make it easy. You’ll download a single zipped folder, and when you unzip the folder, make sure to extract the files to your C:\LDraw directory. If you’re using Windows XP, you would unzip or extract the folder’s contents by right-clicking the zipped folder and selecting “Extract All…”

Step 3: Go to and download the 24 bits stone color version of the LDraw NXT parts. Even though you already got these parts when you downloaded the unofficial part files in step 2, you want to use the modified color settings of Philo. After downloading the zipped folder, extract or unzip the folder’s contents to your C:\LDraw directory. You’ll be asked if you want to overwrite the existing files–select “Yes” or “Yes to all.”

Step 4: Download the customized MLC_Favorites file by right-clicking on this link and saving the file to your C:\LDraw\Apps\MLCad directory. Since you are replacing an existing favorites files, you’ll be asked if you want to overwrite it–select “Yes.” Note: If you have already added favorite pieces within MLCad and want to keep them, you can copy and paste the contents of my file into your existing MLC_Favorites file.

Step 5: Run MLCad and selecte File –> Scan Parts from the menu bar. MLCad might take a little while as it scans for new parts, and when it’s finished, it should ask you if you want to create a new Parts.lst file–select “Yes.” Finally, click “Favorites” from the list on the mid-left of MLCad. All the NXT set parts should appear below (see following image). Have fun! The best place to get more information about using LDraw is the website.


Hints and Tips:

1. Many of the pieces in the NXT set use the new “stone” colors (i.e., light stone gray, medium stone gray, and dark stone gray). When you want to change the color of a piece—the default is black—enter one of the following values as a color number in MLCad:

Light stone gray: 0x02E5E4DE

Medium stone gray: 0x02A3A2A4

Dark stone gray: 0x02635F61

2. For now, the best way to add electrical cables is to use the “RJ12 Cable End” part. This part is simply the end of an NXT cable and signifies a complete cable (and prevents your model from looking messy!).

3. The turntable in the NXT set exists as two parts in LDraw (the “top” and the “base”). Simply put the parts together in the workspace in order to achieve a complete turntable.

Line-Bot: Another Version of Zippy-Bot

Thursday, January 17th, 2008

The basic Zippy-Bot model from Chapter 11 of The ULMN Inventor’s Guide allows you to create a number of unique robots by adding on different subassemblies. I included two robots in the book—Bumper-Bot and Claw-Bot—based on Zippy-Bot, but I had wanted to include a third: a simple line-follower. Well, I’ve finally created that line-follower and named it Line-Bot. The robot uses one additional subassembly, the Light Sensor subassembly, and an extremely simple NXT-G program.

You can build Line-Bot by downloading the LEGO Digital Designer (LDD) file of the Light Sensor subassembly. (If you haven’t downloaded the LDD software yet, you can do so at Once you’ve opened my file, clicking the Building Guide Mode button or hitting F7 on your keyboard takes you to the building instruction for the model. Follow the instructions to build the subassembly, and then attach it to Zippy-Bot by pushing its bushed friction pegs into the angled beams on the front as shown in the image below. Use a small or medium size cable to connect the light sensor to input port 1 on the NXT.

After construction, download the NXT-G program Line-Bot.rbt, and after you’ve loaded the program into Line-Bot, place the robot on the outside of the black line on the NXT test pad. Run the program, and that’s it! Line-Bot steers left when it detects the black line, steers right when it detects the white surface, and goes straight when it reads an “in between” value. Note that, depending on the lighting in your room, you may need to modify the trigger values used by the two Switch blocks in the program. In addition, depending on the NXT’s current battery level, you may need to adjust Line-Bot’s speed (if the robot goes too fast, it’ll “get lost”).

Feel free to experiment with the program and the robot’s design, and let me know what you can come up with!


Update on Round Rock, TX Book Signing

Tuesday, January 15th, 2008

The book signing last Saturday at the Barnes & Noble in Round Rock was a success and incredibly fun. It was great meeting everyone, answering questions, and signing copies of The Unofficial LEGO MINDSTORMS NXT Inventor’s Guide. A lot of parents showed up with their children who are MINDSTORMS maniacs, but some adult fans of LEGO came by as well as someone from National Instruments (the company that developed NXT-G). Not surprisingly, I heard more than one person say, “We got the NXT set for Christmas!” I’m sure a lot of people got the NXT set for Christmas.

And, yes, I managed to keep Guard-Bot and Tag-Bot on the table. I programmed Guard-Bot to walk in a square and Tag-Bot to sit still and turn its head every seven seconds. Tag-Bot, of course, appeared as if it was examining its surroundings, and I got some funny responses from people walking by.

I’m planning on having another signing at a location in Austin–more on that later.


Book Signing Saturday: Here Comes Guard-Bot and Tag-Bot!

Thursday, January 10th, 2008

I recently sat down and rebuilt Guard-Bot (see below) for the book signing Saturday. As I mentioned earlier, I’ll be taking this bot and Tag-Bot with me to the signing. Since I’m not going to have that much space on the table for Guard-Bot to walk around on, I’m having to figure out how the robot can walk around without falling off the table. Since I’m not demonstrating how to break a robot into a million pieces, I really don’t want any robots falling off the table. Guard-Bot is a sturdy robot, but it’s not exactly invincible. Not quite.

For the details about the book signing January 12th, click here to read a previous post. I hope to see you there!


LEGO Storage Solutions: The Stanley Professional Organizer

Saturday, January 5th, 2008

All LEGO fans, no matter what aspect of the LEGO universe they may participate in, are faced with one common challenge: storage. Being able to effectively store one’s collection of LEGO pieces is important, especially as that collection grows.

And here’s one possible storage solution: The Stanley Professional Organizer (model# 014725M). I do not personally own one of these organizers, but I’ve read some positive reviews from other LEGO fans. Although I believe it’s not possible to store an entire NXT set in one of these, this organizer could prove helpful for storing the smaller pieces from the NXT set. Of course, getting the tiny pieces properly organized can be a big help.

Currently, Amazon is selling these organizers for about $15.


Results of MINDSTORMS NXT Sumo Competition

Wednesday, January 2nd, 2008

Did you enter the MINDSTORMS NXT Sumo competition? If so, you’ll be excited to hear that the results are in! At the MINDSTORMS website you can find all the details and some great sumo-related resources, but here are the winners:

First place: MG_Sumo by mpego

Second place: Wedge Bot by Aliator531

Third place: F-16 Bulldozer by exploud123

MINDSTORMS NXT Sumo Competition