Add support for nRF52840 USB Dongle #118
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The nRF52840 Dongle is small USB key commonly used with nRF Connect, although apps can be built for it using Zephyr OS.
(Arduino and Mbed don't support this board)
It doesn't come with a JTAG debugger of any sort, thus DFU is the only method supported for programming.
DFU uploads are performed using
nrfutil
, which can be installed using Python's package manager and simply issuingpip install nrfutil
command.For development purposed I manually installed nrfutil in PlatformIO's virtual environment and the upload works, but a custom tool (tool-nrfutil maybe?) might be more appropriate.
I didn't tried with Adafruit's nrfutil fork (which can already be installed through PlatformIO).
Problems
Using nrfutil vanilla I can't seem to generate a valid DFU package when selecting a SoftDevice version different from 0x00.
When generating a DFU package, the application versions string is required. How can I get a custom value from platformio.ini or provide a default one otherwise?