Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
WIP: Nano 33 BLE #407
Per adafruit/Adafruit_nRF52_Bootloader#94 and adafruit/Adafruit_nRF52_Bootloader#97 I'm interested in using the UF2 bootloader on my Nano 33 BLE. I got it working, though the stock Arduino board def uses bossac, which doesn't work with the adafruit NRF52 bootloader. To adjust for this, I added a new board in this board collection to use nrfutil dfu. The pin definitions are based on the original (though ported to this repo's technique), most everything else is related to or based on the Itsy or Feather nrf52832 definitions.
I have successfully run several Adafruit BLE demos, including the "Controller" example where adding these lines to the color packet handler lets you control the onboard RGB LED using the Bluefruit app:
analogWrite(LEDR, 255 - red); analogWrite(LEDG, 255 - green); analogWrite(LEDB, 255 - blue);
No idea if there's appetite for merging this, but I figured I'd share and submit it at the very least.
thanks! this is cool, and we want to make sure we match folk's expectations.
Glad you like it! I've pushed my latest commits, which include a README in the bootloader directory. I also tested flashing back to the original bootloader, which worked great with my Atmel-ICE - flashing the Adafruit bootloader also worked great, so those are the instructions I used. Pretty sure there are some open-source CMSIS-DAP programmer firmwares out there, so should be accessible for those with the technical skills.
I do have some photos of my (hacky) pogo pin jig that I haven't added yet, let me know if you think they'd be useful. (You can put a mechanical-only pogo pin 2 holes away from either side of the electrically-useful ones to go into the actual header holes for alignment, which is handy if you have a no-header version of the board. Today I didn't even clamp it when doing the bootloader since I had it down to a single command I could send with one hand.)
@rpavlik Hi Ryan,
I was taking a look at the Nano 33 BLE board, but it appears that the official docs disagree on D7 and D8. Specifically, the official board pinout diagram shows D7 is P0.09, and D8 is P0.10. However, the official Arduino BSP v1.1.3 variant.cpp says they are 0.23 and P0.21, respectively:
Your commits appear to follow the BSP. Can you verify that D7 and D8, when mapped to P0.23 and P0.21 respectively as in your commits, will work in blink sketch targeting D7 / D8?
If an LED doesn't blink on D7/D8 as-is, can you try again after adjusting