Firmware update failure (Lite and MagicBox)


#1

I attempted to update the firmware on my Dobot products using Dobotlink (which came with DobotLab). I was able to update my original Magician arm, but the Magician Lite and MagicBox are giving me problems after I tried to update them.

The LED light on the Magician Lite blinks white and it repeatedly makes a double-beep sound.
Windows Device Manager shows the arm as “STM Device in DFU Mode”. The arm does not show up in DobotLink or DobotStudio.

If I hold in the “Key” button for a few seconds, the beeping and flashing light stops. Arm motors are still powered (they’re stiff), but Device Manager changes it to “Unknown USB Device (Device Descriptor Request Failed)”. Still nothing shows up in Dobot software.

I did also try to update the MagicBox (not while connected to the arm). On powerup, it does the same double-beep with a blank screen, but holding “up” for a few seconds makes the box boot up to normal mode (and my computer then recognizes it). Attempting to update it’s firmware shows the error “Failure to enter DFU mode” and appears to do nothing else.

I am not sure what to do from here.

MagicBox current firmware 1.0.7.0
I don’t remember the Magician Lite current firmware.


Magic Box Frimware update error
#2

Still been working on this. No luck with the Magician Lite.

I did use Dobot Studio to put an older firmware on the MagicBox. That did stop the double beeping, and it boots up like it did before and Windows shows the contents in Explorer. However, Dobot Studio doesn’t recognize the device (it sees the serial port, but clicking Connect gives me “The current serial port is not connected to Dobot, please select the correct port!”)
DobotLink also does show the serial port, but as soon as I connect, I get the errors “Communication TimeOut” and “Device Lost Connected”.


#3

I managed to get my Magician Lite and MagicBox working, after a long troubleshooting process. I’ll post my steps in case it helps others.


Magician Lite issue: LED flashing white and double-beeping. Holding “key” for a few seconds stops this, but the arm doesn’t go to normal mode. Serial port not showing on PC at any time.

Google and download STM32CubePrg (I downloaded W64 version). You’ll need to give them an email address. It’ll need to be a real address, as they’ll send you the link by email.

Download the firmwares (under the OG Magician, but has firmware for Lite and MagicBox in .DFU format)
Convert MagicianLite DFU file to HEX file. A conversion app (DfuFileMgr.exe) (is in the DobotStudio/tools/DFU (Dobot Studio, not Dobot Studio 2000). Select “I want to EXTRACT” from the first window, open the Magician Lite DFU file in the “Images” box, and make sure to select “Hex” near the bottom. Then press “Extract”.

Turn on Magician Lite. Unit will be double-beeping and flashing a white LED. Connect USB-C cable to PC.

In STM32CubeProgrammer, select USB in the blue dropdown box on the right. Press connect. Might need to press the “refresh” button next to port to connect successfully.

Go to download (second green button down on the left). Select the Magician Lite .hex file created earlier. Click “Start Programming.”

After the programming finished, the robot still double-beeps and flashes. Press and hold key for a few seconds. The robot now boots up in normal mode and works normally. It will still double-beep and flash white LED on power-on though, and will need to hold the key button to get to normal mode.

To fix the bootup problem was a bit wierd. I plugged in the robot arm, and I think I held the key to put it in “normal” mode. I ran the DobotLink program (the one that started this whole mess), and selected the DFU version of the firmware (the one I made the HEX file out of), then pressed start update. The robot beeped and went to green LED. The update program itself failed (DFU device not found), but now the arm boots up normally now.


MagicBox issue - boots up normal, but the serial port doesn’t connect properly:

Similar to above, download the firmware (it’s in the OG Magician firmware pack). Use DfuFileMgr.exe create a .hex file out of the MagicBox .dfu file.

Use the DobotLink to try to update to one of these files. I think it was the .DFU I used. This causes the MagicBot to blank the display and start double-beeping.

Follow the instructions above for using the STM32CubeProgrammer, using the MagicBox files instead. Also do the DobotLink update part with the downloaded firmware files to stop the double-beeping.


Once both devices worked properly and the computer could “talk” to them, I was able to use another computer (my laptop) with DobotLink to update them to the latest properly.

I think the problem originally came from a hardware incompatibility on my Desktop. Back when I got my Magician Lite, Dobot Studio would simply close every time I had it connect to my MagicBox. I traced the problem back to my expansion bay add-on. It’s one of those 5 1/4 drive bays with readers for SD and CF cards, as well as extra USB ports. I even bought a completely different expansion bay, and the problem still happened.

I found the Magic Box worked if I disabled all the card readers in Device Manager, and I forgot about that issue. I think that hardware issue affected my Magician Lite and Magic Box when they would reboot into firmware update mode, even though they were still disabled in Device Manager.