We’re having trouble getting Notecards up to the latest LTS firmware. If we try to update them through Notehub, it normally fails due to MD5 check error, which requires changing to a different firmware version to clear out the bad download, then try again, and it’s taking sometimes 5+ attempts this way to get the firmware updated. We have product to ship and it is taking an hour or more to get a single Notecard firmware updated, which is really making life difficult.
The cards in question are SKU NOTE-NBGLN
They currently have notecard-8.2.1.17285
I am trying to install notecard-u5-8.2.3.17326$20250812122356.bin
So, I tried using the Notecard CLI to update the cards using the instructions here:
For both my setup and my co-worker’s, we get the same error:
retrying after error: dfu.put: JSON object expected: kwGTAJUzaAFGAPAd+TCxACMAIgFGWEb/90T… {io}
This will keep retrying and failing until I hit Ctrl-C. If I then do notecard -info, it confirms that the firmware version did not change.
I next tried running notecard -factory to reset the card to factory defaults, which it seemed able to do, but the firmware update still fails with the same error message.
Is there any clean way to update the firmware on these cards? Am I going about it all wrong?
Scott
Update:
I tried the third method on the page above, the STM32 Programmer software, and after getting that downloaded and installed, I was able to successfully update the Notecards. So for anyone else struggling with this issue, that may be the ticket for you too. That helps get us past our immediate problem. I’d still be interested in any info or suggestions for getting the official Blues firmware update mechanisms working.
I’m glad you found at least a temporary solution using STM32CubeProgrammer. However, the other methods should of course work just fine. I don’t have an NBGLN device handy, but as soon as I do I just wanted to let you know that we will look into replicating this issue to see if we can find the root cause. Will be in touch!
On the off chance you have an FTDI debug cable (per this guide), you could monitor the trace logs coming from the Notecard and it may help you to debug while sideloading a firmware update. Still planning on debugging this when I’m back in the office though too!
I attempted the sideload while monitoring the serial debug output. I am attaching a log here of the full attempt. The stuff in this log scrolls repeatedly as it keeps re-trying. Here is the bit that seems most eye-catching to me:
Would you be able to retry using the latest version (v1.9.1) of the Notecard CLI? This one fixes some sideloading bugs and it may do the trick.
Also, if you could collect the trace log again, but start from before you issue the sideload command with the CLI and issue t +req to make sure we see the requests and responses between your PC and the Notecard. Also please list what notecard -version shows.
Thanks Rob. I updated the CLI to 1.9.1. I’m having trouble getting output from the debug serial now, and I’m not sure how to issue t +req. … But maybe none of that matters, because the sideload command DOES appear to work now. The only thing that has changed as far as I know is the CLI version. It goes through all the process of uploading the bin, does not give error messages, and at the end reports success. So from where I am standing that issue seems resolved. Thank you!
Is there any word on the MD5 checksum errors when attempting OTA update of Notecard fw? This one seems less urgent since we can sideload units with the latest before they go out the door, but would be nice to have working or at least have some indication that a fix for OTA update is in progress. I wonder if, at a minimum, the Notecard could delete or overwrite any bad bin downloaded, so that we don’t have to download a different version first, just to be able to retry the update?
Thanks again for your help, Rob. I appreciate you.