Jul 1, 2006

Clicking Brick Syndrome

Here is a potential temporary fix for the dreaded “Clicking Brick Syndrome”. Note that this is not coming from any official source, but what I and some others have managed to put together to fix a problem that we can’t actually reproduce… in other words, blame me, not LEGO, and if it looks like a shotgun approach, it is (but it’s the best I’ve got).

1) Completely disconnect your NXT from the computer (no USB connection).
2) Remove all external BlueTooth dongles from your computer, and turn BlueTooth off on the computer (just to be sure).
3) Reboot the computer (this is to make sure no other application is trying to compete for the USB port).
4) Restart the Mindstorms application (and, if possible, don’t start any other applications).
5) Remove one battery from the NXT for a couple of seconds, then reinsert it.
5) Push the NXT reset button firmly for five seconds (make sure you actually press it, and press it for the whole five seconds).
6) Now (with the NXT clicking and the environment up and running), connect the NXT to the computer via the USB cable. Preferably use a “primary” USB port, one on the computer itself and not on a keyboard or monitor.
7) On a PC, you can go to the device manager and check to see if the NXT shows up in “Firmware Update Mode” (if not, you may need to uninstall and reinstall the software and drivers)
8) Update the firmware to 1.03 using the “update firmware” under the tools menu.
9) If this does not work, try *briefly* (one second) pushing the reset button again.

If the above sequence does not work, try repeating steps 1-9 but using a different USB port on the computer.

If even *that* doesn’t work, try installing the software on a different computer and repeating the entire process.

Please use the comments section of this post to announce your results: what you did, what seemed to fix it, or what else you tried and it still refuses to do anything but click. Feel free to include any and all system information you can dig out as well: what we can piece together I’ll try to get to the right hands within LEGO. For those interested in the details, one potential conflict that could be causing this is the Mindstorms environment not finding the NXT at the USB port it thinks it is connected at: thus all the fuss about having other applications closed, and physically switching USB ports.

PS - thanks to commentor Rick Rhodes for bringing this up as well, in the form of a forwarded list from "John".

--
Brian Davis

38 comments:

Anonymous said...

did everything mentioned here, twice. No luck

Anonymous said...

I want to re-enforce that people should try different computers.

I tried in two different Apple laptops with no luck.
Then I used a windows computer (dell) and it worked!

Tony Naggs said...

Although I have no NXT yet I do have a little knowledge of Bluetooth, and some rusty experience of building & programming USB.

I hope I can make some comments that are helpful towards solving the problems.

>2) Remove all external BlueTooth dongles from your computer ..

The basis for this suggestion is not obvious. Should all devices with Bluetooth enabled be switched or removed from the room? (Mobile phones, wireless headsets, Bluetooth transmitters on/added to MP3 players?)

Or is it just Bluetooth devices that have been paired with the NXT brick that are suspected of triggering a problem?


Regards,
Tony
(Posting on USB to follow...)

Tony Naggs said...

I am skeptical that Bluetooth devices in the vicinity are causing the problem. I have not yet noticed anyone mention it when they have succeeded with their firmware download after an earlier failure.

So this post is a Systems look at USB, and typical problems with it.

You may be thinking something like this: Lego Systems have been happily shipping USB infra-red Towers with Mindstorms RCX for years, is it really possible that they have tripped up with USB used with the Mindstorms NXT?

To which my reply is that it is certainly possible, and given the number of reports of firmware transfer troubles it seems likely that something has indeed become unstuck with the NXT software and the USB.

The differences start with the technology, and are also in the usage. The Lego Tower is a Low Speed USB device, (definitions below), which is typically plugged in once and left connected whilst using the Mindstorms software. The NXT connection is probably a Full Speed device[*], transfering larger quantities of data, and the NXT brick is likely to be unplugged to put into a model whilst the Mindstorms is running. This may even be whilst the software has the connection open - a "surprise removal". (It may keep the connection open even when not transfering data.)

* - I am guessing this, as I don't have a NXT to check.


USB 101
Brief background about USB. (There are whole books about this!)

USB has a tree topography, (shape), one device (the PC) controls every data transfer, and is the destination or source for each piece of data transfered. It has a small number of ports, to which either devices (keyboard, mobile phone, memory stick, ...) or a hub can be connected. A hub is a special type of device that presents more ports for further devices to be plugged into.

Up to 5 hubs can be chained together, with a maximum cable segment of 5m between each hub or device.

USB specification 1.0 was published in 1996 and partially supported in later editions of Windows 95. A refined USB 1.1 spec (1998) is supported in Windows 98 and Windows 2000, and is fairly solid.

USB 1.0 specified 2 transfer speeds:
Low (1.5M bits per second), for mice, keyboards, the Lego Tower.
Full (12Mbps), for modems, low resolution web cams, etc

USB 2.0 (2000) added a much faster, High Speed, transfer rate (480Mbps) that supports such things streaming video and fast diskdrives. The hubs between the PC and the USB 2 device must be USB 2 hubs in order for the High Speed transfer to work.

USB 2.0 is supported by Windows XP, and Windows Server 2003. Windows 2000 needs non-Microsoft drivers, typically supplied with your PC.

[Phew.]

how USB 2.0 can start to go wrong

For each hub, and device, connected Windows must have appropriate driver software. Unfortunately USB 2 has to cope with many complex situations and the drivers have been quite buggy.

To bypass many of the hub driver issues it is often suggested to plug the USB device into a USB port directly on the PC.

(Similar problems with hub drivers occur on other platforms, and the same suggestion made.)

More on USB to come later...

Regards,
Tony

Tony Naggs said...

Microsoft have been very good at documenting USB issues in Windows XP, and providing fixes. I suspect the issues they have found are typical of other sets of USB drivers.

So my suggestion for fixing the USB transfer problem is to ensure you have the latest USB drivers for your OS.

For Windows this involves downloading and installing the service packs. The latest Service pack for Win XP is SP2, the list of fixes contains several USB ones:
http://support.microsoft.com/default.aspx?scid=kb;EN-US;811113

(Other service packs for Windows include USB fixes too.)

Note that the install instructions for the service pack advise you to back up your data before installing.

The latest Service pack for Win 2000 is SP4, go here to find it:
http://support.microsoft.com/kb/260910/EN-US/

Go here to the Win XP Service Pack 2
http://support.microsoft.com/windowsxpsp2


For information, to help persuade you to consider installing the service pack here are a few of USB related fixes in the above service packs. These may also give you ideas to try in order to fix your firmware update issues...

After removing a USB device Suspend does not work, or the USB device does not work after you resume.
http://support.microsoft.com/?kbid=822603

The PC does not recognize that the device has been removed.
http://support.microsoft.com/kb/918005


USB Devices May Not Work After You Unplug a Downstream USB Hub from the Host Controller
http://support.microsoft.com/?kbid=810400

Fast Swap of USB Devices May Cause USB Host Controller to Stop Functioning on Windows XP
http://support.microsoft.com/?kbid=816843

A program cannot re-establish communication with a modem device after the USB cable is quickly reconnected
http://support.microsoft.com/?kbid=822112


Several issues relate to "surprise removal"s, as explained previously. The guidance given for this is to exit the application or reboot the system. The software could also be adapted to close the port after a transfer fails, or if it receives notification that the device has been removed. (Windows has notifications for device arrival & removal that the program can sign-up for.)

If you have fixed your firmware issue by using a different PC it would be interesting to see which Windows version and Service Packs are on each.

I hope this stuff is helpful.

Best regards,
Tony
tonynaggs @ gmail.com

Brian Davis said...

Tony, that's a lot of nice information on USB - thank you. To answer "the basis for this suggestion [removing all USB dongles] is not obvious", I should explain more. It turns out one of the MDP had a similar issue with "Clicking Brick Syndrome", and it repeatably resolved when they removed their USB mouse dongle from the computer. In other words, this is an empirical observation of *some* (clearly not all) firmware download problems.

--
Brian Davis

Tony Naggs said...

Hi Brian, (and everyone else!)

Whilst I have some knowledge of USB, I obviously cannot directly investigate the firmware programming problem until the NXT arrives in the sunny UK.

If removing other USB devices is having an effect it can only be because of software (probably device driver) issues.

I will do anything I can to help from here.

Ta ta for now,
Tony

Anonymous said...

My new out of the box NXT brick would not come back to life until the NXT PC app 1.02 was installed, rebooted and then the 1.03 NXT firmware upgrade installed.

Anonymous said...

I just bought my NXT in January 2007, I am having the same problem and not recieving any support from lego. I am very disapointed thus far, it seems like a lot of work for an exspensive brand name product. I have tried all the methods posted with no result, I hope I can fix this soon.

SOLUTION! said...

I would like to thank anonymous guy to send the solution for "bricked" Mindstorm NXT brick:

It worked for me!!!!!!!!!!!!!!!!

If you have installed Lego NTX SW:

1. download the MINDSTORMS NXT Driver v1.02 from
http://mindstorms.lego.com/support/updates/?sw=1.0&fw=0.00&nxtswid=2

2. Install the program and reset computer

3. Log on and open Mindstorm program

4. Connect NXT brick via USB (message NTX brick in firware upgrade mode appears (or something like that))

5. Update FW (Tools->Update NXT FW) to version 1.03 or (even better) 1.04 even if you don't have anything on NXT display.

6. After succesfull update you will hear familiar sound and Lego logo!

7. Enjoy!!!!!!!!!!

Anonymous said...

I had the smae problem with my NXT, I was messing around with the system files on the NXT, trying to free as much memory as possible.

I then reset the NXT and thats when i noticed it wouldnt start back up./

So, I connected the USB cable to the NXT and ran the mindstorm softwar./ I then ran the firmware upgrade option, and re-flashed version 1.4./ my NXT then booted backup again.

Anonymous said...

It worked for me. Thanks for the help.

Dr. Combs said...

Worked for me on a PowerBook G4. Thanks!
----------
Steven B. Combs, Ph.D.
:: Give Us One Minute (GUOM)
:: http://www.giveusoneminute.com
:: giveusoneminute@gmail.com

Toby Nixon said...

reposting on this blog thread in case it helps out..

ummm no idea how it worked this is the sequence i followed... (i'm guessing that to get it to work on the 1 machine - you would need to disable/reenable the USB ports.. nfi how you do that)

1. Spent 4 hours trying to unbrick my brick. Send frantic emails to lego support, read numerous forum/blog posts. none seem to fix my issue.
2. try to reset brick 1000 times, hard and soft, try pluggin /unplugging usb, try uninstalling / reinstalling driver/software. try upgrading to 1.2 driver. try to get some sleep.
3. Next day brought it into work, installed everything on work laptop. updated driver to 1.2. device manager not detecting it, after changing batteries, and resetting device! :(
4. considering writing abusive email to LEGO...
5. plugged it into machine again, didn't bother with reset of device, just pressed orange button on front panel, suddenly Device manager detects unknown device which changes to LEGO "firmware update mode" name.
6. now ran Update Firmware command from LEGO Mindstorms app and all is well!

The part that helped me was trying it on a second machine, I just wish i knew what the solution to reseting the usb configuration for the original machine was, as this would probably also have fixed it.

Anonymous said...

No, this won`t work for me. But I figured out the way to do it, and it is easy, and it works! Many good ideas, but here is the best I think: UPGRADE THE MINDSTORMS NXT-G DRIVER!

Riccardo said...

Well done. All went as you specified.
I tried several times...and after some times appeared - firmware update mode -, and then the program updated the device.

Sage said...

Awesome...work perfectly! Thanks!

Anonymous said...

Hello,
I just want to thank you for your Solution.

It has worked with me, I'm using windows Vista and everything works well.

However, I have just small comment on your solution, which is;
Instead of saying - where I' quoting from your post -

8) Update the firmware to 1.03 using the “update firmware” under the tools menu.

I think it is better to say

8) From Lego Mindstorms Education NXT application - go to Tools menu and select update firmware. That is to download the firmware into your Lego device.

Thank you for consideration and Thank very much for your post :)

Hourani

Drudoo said...

I tried two time at two different MacBook's (10.5.4), no luck, then i did the same at my PC (Packard Bell), and it was fixed in a sec.

Really strange that is doesn't work at mac.

Smile said...

hi
i want to add some communication in mindstorm like bluetooth
so lemme tell vt should i do vd dz robot to make it interesting ??????n one thing can i make bluetooth antenna separately???

Anonymous said...

I installed lejos Java into my NXT. I wanted to reset it back to default. I followed these steps and it worked perfectly.

Thanks,

Anonymous said...

With USB-Connection to a MEDION-PC in NXT-firmware-mode I followed these steps and it worked perfectly.
Thanks for your support!
Greetings from Germany.

Lars said...

Had the trouble with two bricks and tried to fix them as described. Result: They seem to work (Firmware v. 1.0.5) except for both having a dead display now.

One of my numerous firmware downloads resulted in a display showing something (looked like being powered to low, flickered and showing only a third of the black pixels) even though the brick was well powered, i.e. having a charged accumulator which was being connected to charging power. Weird. :-(

Roque said...

It worked for me, tkx a lot man.

Simpfan said...

Works great Thank you so much. This was my rescue because I think my brick was broken. Thank you.

nano said...

If you are having this problem with your Macintosh and you keep getting the 'no NXT found" when trying to update the firmware (even after resetting the brick), you need to do the following:

In Terminal:

$ sudo mv /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/AppleUSBCDC.kext /var/tmp
$ sudo touch /System/Library/Extensions

and reboot. After this, you will be able to update the firmware. The problem is that the built-in CDC driver is attaching to the NXT device and not letting go. The above commands set that driver aside, letting the NXT software do its thing.

After updating the firmware, return your OS to the original state:

$sudo mv /var/tmp/AppleUSBCDC.kext /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns
$ sudo touch /System/Library/Extensions

and reboot.

Do this at your own risk. YMMV. Pay atention to any trailing "/" or lack thereof.

Henk, Arnhem said...

I made the mistake to upload the FirmWare with the Bluetooth connection. That was no a good idea. (I thought I killed my son's Mindstorms-brick).

This worked for me (http://nxtasy.org/2007/02/25/problems-downoading-firmware-bricked-your-nxt/)

Make sure the LEGO MINDSTORMS NXT is connected directly to the computer/Mac using a USB cable (Bluetooth connection will not work).
1. Press the hardware reset button on the NXT brick for at least 3-5 seconds. The hardware reset button is a tiny little button at the bottom of the pinhole on the bottom of the NXT case, just under the USB connector. You can push it with an unfolded paperclip but a LEGO antenna works to.
2. If the NXT is clicking before you press the hardware reset button, it will stop clicking after you press the hardware reset button. Continue to press on the hardware reset button for a few seconds longer until it clicks one time. Now release the hardware reset button.
3. Wait for the NXT to start clicking continuously again (It will take approximately 2-4 seconds).
4. Now go to the menubar within the LEGO MINDSTORMS NXT Software and select Tools->Update Firmware and select a firmware version and press Download.

Key is that you do this via the USB connection. My addition to this process is that I temporarily removed the Bluetooth dongle from the computer.

Henk, Arnhem, The Netherlands

palione said...

11/13/2010

Brilliant
Good explanation
Worked first time
Brick is back in action

updated firmware to 1.05

Andy Belk said...

I had a similar problem with NXT SW 1.1 running on a new MacBook Air (I bricked one NXT, then proceeded to brick ANOTHER !).

I tried all the suggestions on this page, but nothing worked.

I then got hold of an old PowerBook G4 running 10.5.8, installed the 1.1 SW on that (and the driver patch), and presto the bricks immediately updated their firmware (to 1.29).

I don't think LEGO's intel driver is working or installing properly for bulk transfers

Willie and Teddy said...

Didn't work on a Mac without monkeying around in Terminal. Installed mindstorms software on a virtual PC partition and it saw the NXT brick right away and let me update the firmware. It's all good now. Thanks!

freeware.preacher said...

The NXT-G Environment wouldn't install the firmware directly, so I installed the LeJOS NXJ firmware and then overwrote it with the Lego one.

Jeremy said...

No, this does not work. What does work, is if you have RobotC, update the firmware from there, and BOOM. I have gotten my brick stuck many a time (many times experimenting what ways get it stuck) and RobotC is the only known fix for the clicking brick. If you don't have RobotC, get it. It is a great text based language.

sir KitKat said...

I plug my device in a new computer (win 7 x64) and when win searches and installes the drivers I removed the usb cable.
Result: A fast clicking brick when I want to power the brick on.

Solution:
-> Press the Reset button for 15 seconds
-> Then, while still holding the reset button, push the power on button (orange button on NXT 2.0)
You will hear some clicking noises in the process
-> Release the reset button
-> try to power on the brick if you don't hear the slow clicking noises.

Slow clicking noises = brick is in firmware update mode

regardes
sir KitKat

TECHTEACHDE said...

Thank you! I was given a used NXT with no software from a student that I teach. The brick worked fine then and several times afterwards. However, the other day we pulled it out and the display was blank but the sound worked. Then it just went into the clicking mode. I got the software from LEGO and installed it on my work computer. I connected the brick and nothing happened. I took it home and installed the software on my personal computer then followed your directions and it works! THANK YOU VERY MUCH! The NXT is a great teaching tool!!!

hookJ said...

WORKED-- THANKS!!!

YosiKarl said...

Worked as charm!

Johnathan said...

Had a unique issue with this. I installed the Arduino software earlier in the week. For use with my Arduino board. When I went into the NXT Brick for another project I decided to update the firmware. The brick went blank and started clicking. No resetting would work at all. In the end the issue was the Arduino board had taken the port that the USB cable was using for the brick. as such when the brick was connected and was looking for firmware it was actually looking at the Arduino software. I basically deleted the driver that the port was using. Replugged the cable to the brick and Device Manager showed the NXT Brick instead of the Bossa item Arduino was using. Iw as then able to apply the Mindstorms firmware and heard the friendly Lego opening tune. :)

Tudd said...

Didn't work on my laptop but did on my PC

Related Posts Plugin for WordPress, Blogger...