Unable to Flash Duet 6HC Firmware
-
Here is an interesting update
I have been working on the laptop and forgot to turn of Bossa
At this point, about 2 1/2 hours in, the progress bar just started moving (1% complete, writing page 11)
Time to go visit my sites, I'll update when I return. -
@tdm418 said in Unable to Flash Duet 6HC Firmware:
Here is an interesting update
I have been working on the laptop and forgot to turn of Bossa
At this point, about 2 1/2 hours in, the progress bar just started moving (1% complete, writing page 11)
Time to go visit my sites, I'll update when I return.It sound like Bossa has chosen a very low baud rate. You may get better results if you provide VIN power to the Duet. Laptops in particular can't usually provide much USB power.
-
@dc42, thank you for your time. I'm sure that you're right. Unfortunately, I'm traveling and don't have a power supply. If I can't get it going utilizing @Danal 's method it will have to wait a few days until I'm home.
@Danal, thank you too. I am mostly complete with your methods; however, I'm getting errors with make that I can't figure out. Many years since I've used Linux regularly.
make: wx-config: Command not found
make: wx-config: Command not found
CPP BOSSA src/BossaForm.cpp
In file included from src/BossaForm.cpp:8:
src/BossaForm.h:11:10: fatal error: wx/artprov.h: No such file or directory
#include <wx/artprov.h>
^~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:260: obj/BossaForm.o] Error 1I did an apt-file search on the artprov.h file and it came up as part of wx3.0-headers. Installed that, still the same error
Googled a bit, found that the package to install is libwxgtk3.0-dev. So far, so good.Another error, missing readline.h. Installed that via guile-2.2-dev
Appeared to complete the make without error!!!At this point, It's pretty late. I removed an entire crew from my project today so it's been pretty miserable. I'll pick this up tomorrow whenever I get a break and report back in.
-
@tdm418 said in Unable to Flash Duet 6HC Firmware:
Another error, missing readline.h. Installed that via guile-2.2-dev
I'm sure you satisfied the dependency via more dependencies (of guile-2.2-dev), but just for the sake of correctness the dependency you actually needed was
libreadline-dev
so for those who find the thread later
sudo apt update && sudo apt install -y libwxgtk3.0-dev libreadline-dev
will satisfy the build dependencies (for some reason I had issues with apt wanting to use ipv6, so i had to force it to use ipv4)edit: howwever, neither dependency is needed if we skip the graphical interface and only build bossac
apt update && sudo apt install -y git git clone https://github.com/shumatech/BOSSA ~/BOSSA cd ~/BOSSA make bossac
-
Interesting. I do not remember needing to install anything beyond the git clone... and I started with the Duet provided image.
HOWEVER, when I run make right now, it fails for the same thing. I believe I've done an apt-get autoclean since then, and because bossa is not an apt-get package, some of its dependencies were removed. Very interesting.
Thanks for the research @bearer.
-
Repost of instructions above, with various corrections:
In a Duet3 +Pi configuration, if you need to re-flash the 6HC main board via BOSSA, you can use the Pi itself as the host for bossa (really bossac, the command line version) in order to flash the Duet.
(You may wish to pull the latest release before flashing, if so do it via regular sudo apt-get update && sudo apt-get install duetsoftwareframework)
- Connect a regular USB cable from the Pi to the Duet.
- It is OK to power Duet from VIN and Pi from ribbon ... OR disconnect ribbon and power the Pi the regular Pi way (micro USB power connector) and let the Pi power the Duet via USB (no VIN on the Duet). Do not do both.
- SSH to the Pi and install bossa.
- Do NOT install the apt-get version, it is old and does not work for what we need
- Install Pre-reqs sudo apt update && sudo apt install -y libwxgtk3.0-dev libreadline-dev
- Install bossa
- git clone https://github.com/shumatech/BOSSA
- cd BOSSA
- make
- Then use bossac to flash the Duet. (having already erased it, etc.)
~/BOSSA/bin/bossac -e -w -v -b /opt/dsf/sd/sys/Duet3Firmware_MB6HC.bin -R
-
Now I'm getting a failure of "No device found on /dev/ttyACM0"
I have probed tty devices and there is no ACM* listed
Tried forcing the ACM0 port on the bossac command line but no go on that eitherI have plugged the Duet board into all of the USB ports and still no ACM* appears
I am getting the following output from dmesg consistently[38775.703615] uart-pl011 fe201000.serial: no DMA platform data
[41960.637148] usb 1-1.3: new high-speed USB device number 39 using xhci_hcd
[41960.737392] usb 1-1.3: device descriptor read/64, error -71
[41960.957390] usb 1-1.3: device descriptor read/64, error -71
[41961.177147] usb 1-1.3: new high-speed USB device number 40 using xhci_hcd
[41961.277386] usb 1-1.3: device descriptor read/64, error -71
[41961.497394] usb 1-1.3: device descriptor read/64, error -71
[41961.617475] usb 1-1-port3: attempt power cycle
[41962.277164] usb 1-1.3: new high-speed USB device number 41 using xhci_hcd
[41962.277464] usb 1-1.3: Device not responding to setup address.
[41962.497423] usb 1-1.3: Device not responding to setup address.
[41962.717171] usb 1-1.3: device not accepting address 41, error -71
[41962.817172] usb 1-1.3: new high-speed USB device number 42 using xhci_hcd
[41962.817545] usb 1-1.3: Device not responding to setup address.
[41963.037536] usb 1-1.3: Device not responding to setup address.
[41963.257174] usb 1-1.3: device not accepting address 42, error -71
[41963.257521] usb 1-1-port3: unable to enumerate USB device -
show output from
lsusb
anddmesg
? (i.e. all of dmesg, after booting, with duet3 attached, use pastebin or google markdown formating and use ```) -
Be sure you've successfully erased the 6HC board.
- Power off the 6HC, place a jumper across the ERASE pins and power up to erase the firmware. The Bossa port should appear on the Pi (if it doesn't, try pressing the Reset button).
- The erase jumper is located in the center of the board near the large CPU chip.
- Remove the ERASE jumper, and run the bossac command.
- Power off the 6HC, place a jumper across the ERASE pins and power up to erase the firmware. The Bossa port should appear on the Pi (if it doesn't, try pressing the Reset button).
-
@Danal said in Unable to Flash Duet 6HC Firmware:
Be sure you've successfully erased the 6HC board.
- Power off the 6HC, place a jumper across the ERASE pins and power up to erase the firmware. The Bossa port should appear on the Pi (if it doesn't, try pressing the Reset button).
- The erase jumper is located in the center of the board near the large CPU chip.
- Remove the ERASE jumper, and run the bossac command.
Sometimes you also need to either press the Reset button, or power the Duet down and up again.
- Power off the 6HC, place a jumper across the ERASE pins and power up to erase the firmware. The Bossa port should appear on the Pi (if it doesn't, try pressing the Reset button).
-
@bearer - Here you go http://dpaste.com/308PSPP
@Danal - I have erased/reset/power cycled multiple times. If you look at the above pastebin, you will seepi@duet3:~ $ ls -l
total 4
-rw-r--r-- 1 pi pi 0 Jan 31 20:50 0xf800
drwxr-xr-x 9 pi pi 4096 Jan 31 06:21 BOSSASo it does recognize the Bossa port, still getting the "No device found on /dev/ttyACM0"
@dc42 - As above, I have performed multiple erase/reset/power cycles
-
Have you tried using Bossa on your laptop with VIN power to the Duet, as I suggested in my earlier response?
-
@tdm418 said in Unable to Flash Duet 6HC Firmware:
@bearer - Here you go http://dpaste.com/308PSPP
goodie, nothing to suggest it should be a problem with the Pi.
did the usb serial console work at all before you tried upgrading?
( right, lets wait for Vin to be applied, I think we all assumed that was done.)
-
@dc42, I am currently traveling to my jobsites so I haven't had access to a power supply. I did borrow a transformer from a site today though, so I'll wire it up and try that method.
@bearer, I'm glad the pi came up clean. I upgraded the pi before anything else, so I can't answer the question.
-
@dc42 , I wired up the transformer and connected it, tried to flash the firmware again. It's a 12v 2A wall wart. The Bossa port as identified by the Device Manager has configured itself for a much higher throughput - 115k instead of 9600, as it was on USB. I'm assuming that the autoconfigure got it right, 8 data bit, no parity, 1 stop bit, no flow control.
Same result as before, with USB power only. Bossa has been sitting at 0% complete for about 45 minutes at this point. -
@tdm418 said in Unable to Flash Duet 6HC Firmware:
Bossa has been sitting at 0% complete for about 45 minutes at this point.
Bossa takes less than 2 minutes. If it hasn't progressed, there is very little point in waiting.
-
@tdm418 said in Unable to Flash Duet 6HC Firmware:
@dc42 , I wired up the transformer and connected it, tried to flash the firmware again. It's a 12v 2A wall wart. The Bossa port as identified by the Device Manager has configured itself for a much higher throughput - 115k instead of 9600, as it was on USB. I'm assuming that the autoconfigure got it right, 8 data bit, no parity, 1 stop bit, no flow control.
Same result as before, with USB power only. Bossa has been sitting at 0% complete for about 45 minutes at this point.I think that either there is something very strange about your laptop configuration, or the microcontroller is faulty. Would you like your Duet 3 replaced under warranty?
-
@dc42 , I'm going to keep trying for a bit, but ultimately, yes, the warranty may be necessary.
I did just try to connect through Bossa under Opensuse and it doesn't recognize any connections at all.
If there is any troubleshooting that can be accomplished more easily with a Linux box, I'd love to give it a try first -
@tdm418 said in Unable to Flash Duet 6HC Firmware:
If there is any troubleshooting that can be accomplished more easily with a Linux box, I'd love to give it a try first
With an erased, reset, board, powered by USB or VIN, it should show up as /dev/ttyACM0. If it does not, nothing else is going to work.
This should be true on your SUSE box, or on the Duet provided image for a Pi.
-
So I have been playing with this some more with no positive results, but some results nevertheless.
For the most part, the Linux Bossa just will not connect at all. Occasionally, it will say that it cannot connect to ttyACM0, which seems to be a recognition of the port. I just tried changing permissions via chmod a+rw /dev/ttyACM0. I am now getting an error message of " Device Unsupported".
I really appreciate everyone's time in this venture tremendously, @dc42 ,@Danal ,@bearer . If this is just wasting time at this point, I'm fine with the warranty. If there is something else to be done, or something to be learned, I'll keep plugging away as long as possible. I fly home tomorrow afternoon, and can try to replicate this from my desktop. The desktop; however, was initially a lot more reluctant to make any connection at all, so that also might be a dead end.