-
Notifications
You must be signed in to change notification settings - Fork 467
Flashing on Arduino Nano 33 BLE? #94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
did you install the bootloader with a jlink as per |
No, I was hoping to not need a j-link, just have the bossac/sam-ba Arduino bootloader that it came with on it right now. I've only got stlinkv2, atmel-ice, and black magic probe, so looks like I've got the start of a new Adafruit order already with a j-link mini edu 😉 |
black magic might be able to do it - but we have not tried it ourselves so we dont know the exact command to run |
Ok thanks! I'll poke around and let you know if I figure it out with the bmp. |
OK, so the BMP can do it too! Pinout of bottom port is:
(see https://www.hackster.io/visualmicro/arduino-nano-33-iot-debugging-633ad8 - couldn't find a license ref for the arduino store's photo) Assuming you've done the gdb -nx --batch \
-ex 'target extended-remote /dev/ttyBmpGdb' \
-ex 'monitor swdp_scan' \
-ex 'attach 1' \
-ex 'load arduino_nano_33_ble_bootloader-0.2.13-19-ge25b63a_s140_6.1.1.hex' \
-ex 'compare-sections' \
-ex 'kill' You'll get some warnings and stuff but they don't appear to affect it (too much, anyway) - it at least installs well enough to reboot and expose the nano33boot MSC device. Further flashes of the bootloader can be done as usual with However, it does disconnect/reconnect regularly - here's my dmesg with a 5.2 kernel
Also doesn't appear to be able to flash circuitpython - it takes it, takes a while to copy, activity light looks as expected (patterned blinking during copy, then shifts to a more frantic blinking), but it never resets on its own. When I reset it, I get the same bootloader MSC instead of the circuitpy one - not sure if that's expected for a qspiflash-less device. Arduino's bossac also doesn't succeed - is this to be expected since it's not a samd chip?:
I don't have any other uf2's built for nrf52840 to test, unfortunately. |
Oh, but if I call it an ItsyBitsy nrf52840, flashing "Blink" to it will blink the blue part of the RGB LED, which is something. Of course, your board defs use adafruit-nrfutil instead of bossac. The double-click of the reset button properly enters the bootloader instead of the sketch, which is also great. |
OK, some of my small tweaks are up on #97 . Since I can't find the original bootloader's source code (see arduino/ArduinoCore-nRF528x-mbedos#23 ), and adding SAM-BA/bossac support would probably increase code size a bit, I think my next approach will be to make a modified board definition for Arduino to use nrfutil instead of bossac. |
OK, I see part of the issue with the UF2 part: The current.uf2 file is listed as only 512bytes (so 1 uf2 block) in size, compared to 598KB for my CPB. I get most of the same dmesg warnings on the CPB, so they're not related to my issues. The capacity of the "drive" is shown as the same ( On the plus side, the nrfutil-used DFU stuff works fine, so I've been able to try a handful of bluefruit sketches. |
closed due to lack of activities. |
I see it's listed, and it builds, but adafruit-nrfutil doesn't work, and my simple bossac command didn't work either. (have used the reset button to get into bootloader, but still no dice) Do I need to find the swd pins? or is there a way to flash it e.g. like the .ino update-bootloaders for the samdx1 boards?
My command line was:
Didn't matter which hex I picked (with or without sd) neither of them appeared to actually have an effect, despite seeming to complete a flash process, I'd still get no MSC device and bossac showed the same ID.
The text was updated successfully, but these errors were encountered: