🛠 Flasher un .hex sans rien installer : MSD et nRF Connect Programmer

nRF52833-DK (boards.json id: nrf52833-dk) · debutant · Le J-Link OB du kit expose un lecteur USB en glisser-déposer : déposez votre hex, appuyez sur Reset, c'est programmé.

The four entry points of the kit

The nRF52833-DK User Guide documents several programming methods, all via the J-Link OB interface MCU connected to port J2:

  1. MSD drag-and-drop: The J-Link OB exposes a mass storage device; dropping a .hex file programs it directly.
  2. nRF Connect Programmer (graphical interface of nRF Connect for Desktop).
  3. nrfjprog (command line of the nRF Command Line Tools).
  4. west flash / IDE (SES, Keil, IAR) via the J-Link debugger.

Drag-and-drop is unbeatable for testing a provided hex file without installing a toolchain: no SDK, no west, no specific driver.

Step 1 — Programming via drag-and-drop

  1. Connect the kit via micro-USB to connector J2 (the one for the interface MCU, not J3).
  2. A removable drive appears on your machine.
  3. Drop your firmware.hex onto this drive; the copy programs the nRF52833 flash.
  4. Press the kit's Reset button: the new firmware starts.

If your image comes from the nRF5 SDK with SoftDevice (everything that does BLE), remember that the application hex alone is not enough: you need a merged SoftDevice + application image (mergehex tool), otherwise the board programs without broadcasting anything. Zephyr/NCS builds, on the other hand, produce a standalone hex.

Step 2 — The tool-based alternatives

nrfjprog --program firmware.hex --chiperase -f   # efface, programme, redémarre
nrfjprog --reboot

nRF Connect Programmer does the same thing graphically: select the "nRF52833" target, load the hex, click Write. It is also the recommended tool for reading/writing the flash protection configuration.

Step 3 — The virtual COM port to view logs

The J-Link OB also exposes a virtual COM port connected to the SoC's P0.05-P0.08 pins (up to 1 Mbit/s with hardware handshake). Two pitfalls documented in the User Guide:

The freezing MSD reader: recovery

The User Guide (§7.3) is explicit: under Windows, defragmentation, an antivirus scan (or quarantining the drive's pseudo-file), or an attempt to USB boot from the drive can make the interface MCU unresponsive. Recovery: cut the power (unplug the USB), replug it — the J-Link OB restarts. To avoid the problem, J-Link Commander allows disabling mass storage: command msddisable (and msdenable to re-enable it).

Verify that it works

After Reset, LED1 (P0.13, active low) should react if your firmware blinks. If not: wrong image (SoftDevice not merged), wrong port (J3 instead of J2), or firmware that immediately turns off the LEDs — check with nRF Connect Programmer by reading back the flash.

Other tutorials for this board

Code examples for this board

← Back to the board 🛠 All tutorials