May 12, 2007

Book Review - Maximum LEGO NXT


Well, I got a copy of Brian Bagnall's "Maximum LEGO NXT: Building Robots with Java Brains" and I've finished my first review of the material. In a sentence: The material looks awesome.

21 chapters and 3 appendices (in roughly 500 pages) - Brian starts out with a nice summarized history of Mindstorms and then quickly moves into a description of LeJOS. I've got a bit of experience with Java, and I actually read Chapter 3 (Java for Primates) and was reminded quickly of some standard programming rules that I had forgotten. He also provides a good but quick summary of the Java API. (I've skipped around a bit and also read Chapters 4, 7, 12, and 20, so I think I've got a fairly good grasp on the technical writing and the quality of the robots.)

Mixed into the book are chapters that cover a broad range of topics - one chapter covers the Technic components, another a little design theory, and he's got a really nice chapter on Bluetooth.

Around chapter 8, Brian gets into the heart of some serious robot building - the robots he includes are impressive, and he provides complete CAD step-by-steps (grayscale) for all of them. What's impressive is that he also provides plenty of mathematical discussions before getting into the actual Java code. I've forgotten a lot of basic geometry and I was surprised to see quite a bit of it included at various places in the book.

My absolute favorite design in the book has to be his version of the Mars explorer, Sojourner. His recreation is fairly true to the original - you really have to see it.

A lot of people have wondered why it took so long to get the book out. Once you see the work that went into this book, I think you'll understand and cut Brian some slack - the book is very well done.

Now I'm going to try and find some time to actually go through the remaining chapters and build his robots and try out the LeJOS code. It may take some time, not just because I'm busy and always have other projects, but also because the book is just very extensive.

Good job, Brian... definitely a quality NXT book... and I'll forgive you for not including The NXT Step as a reference in one of your appendices ;)

12 comments:

Anonymous said...

I like the book too but I think people should know that it doesn't teach me to program java or LejOS. The jva programs are listed but you are not taught how to program it only given the whole program. Don't get me wrong I like the book and the robots but I don't understand the programs that I type in and why they work and I want to know how to program like this book.

David Levy said...

I haven't seen the book but I rather liked his earlier "Core Lego Mindstorms Programming" which used Lejos to show how to program with Behavioral Control. (Subsumption).

One of the best books to learn Java ( esp if you have programmed in other languages) is Thinking in Java by Bruce Eckel.

Note: you can see books offered by the NXT Step Blog Contributors in the site's book section
David

Jim Kelly said...

Anonymous,

You are partially correct - the book does offer some basic information in programming in LeJOS. The book does not make the claim that you'll be a java expert when you finish it - the book is intended (I believe) to introduce you to LeJOS and then show you some powerful programs that can be used with the NXT robots.

David has suggested a good book on Java - and I think many people will tell you that one of the best ways to learn how to program is to take existing programs and break them down and examine how they work. I learn better that way and I have a feeling you will, too.

If you want to learn how to program like Brian, take his programs and follow them line-by-line and see if you can't figure out the "how" and "why" of his code. This, of course, will require that you have a basic understanding of java and LeJOS, so you may need to invest in a book or 2 on the subjects if you really want to become an expert.

Jim

Anonymous said...

Do the robots in this book require many parts not included in the standard NXT set? If so, does it specify which pieces are not included so I can order them before getting to that step?

Thanks,
Mike

Guy Ziv said...

Jim
Wasn't there something connecting a GPS in this book?

Jim Kelly said...

Guy,

Yes, there is something in there related to GPS but I loaned my copy out temporarily and should have it back in a day or 2... will check then.

Jim

Jim Kelly said...

Mike,

There are a few robots that I saw that use parts not included in the retail NXT kit - BUT - I did notice that Brian tells you which parts are not standard to NXT and he tells you where to get replacements. I don't know for all robots if this is the case, but for the Sojourner, it uses 6 rubber tires - he tells you to use 2 rubber tires from the RCX kit or to use certain gears from the NXT.

Hope this helps.

Jim

Anonymous said...

I just received this today. The back of the book states that the bots are built, "all using only NXT kit parts."

Not true. In fact, in Chapter 15, the robot gripper uses RCX parts. Page 344 clearly states, "Now comes the RIS kit parts." and later on the same page: "Slide the RCX motor..."

Beware. Other than this, after my brief paging thru the book - I see some great projects here.

stuart said...

Just got the book and it looks great, but I'm completely stopped at chaper 2. The installation instructions are wrong and inadequate. I'm a software professional and I've managed to puzzle some of it out, but I've never used Java and have hit a brick wall.

Is there a support forum or some sort of FAQ? Otherwise this book isn't going to be of much value.

Anonymous said...

I have purchased this book; it just came in the mail through Amazon. The book is great, the diagrams a perfect. If you're using Linux you need to install g++, libusb, and ant, but no worries there.

However, what disturbs me is that there are many discrepancies, mainly in how to load the firmware and files. I found an interesting thread here. It seems that the book was released before the newest version of leJOS NXJ will come out. This introduces several problems:

1) There is no firmware uploader, so the NXT is constantly in the clicking phase waiting for a firmware flash. The uploader will be released next version.
2) .lej files called by the book, while .bin files should be used.
3) There are many problems with setting up Eclipse.

Despite these problems, I'm still satisfied with the book. You can get all of the programs I've tried to run so far to run smoothly. If you are having trouble with this book, try reading the documentation that comes with the leJOS download. Additionally, the leJOS forum admin claims that the new leJOS release should be available in the next few weeks.

--Hardrive

Chris said...

Stuart,

A FAQ is in the process of being put together, take a look at it here.

Nadia said...

Hi,
have you started changing your NXT firmware yet?
I tried to do it yesterday, but I wasn't able.
I downloaded leJOS NXJ from this page:
http://sourceforge.net/project/showfiles.php?group_id=9339&package_id=217619&release_id=497635

and I did add the system variables too,
but when I press the reset button of my NXT, to change the firmware, and connceted it to my computer nothing happened.
I was expecting to write somewhere lejosfirmdl. page 29
do you have any idea?
please let me know
my email is : eternity5219@yahoo.com

Related Posts Plugin for WordPress, Blogger...