Downloads:

https://www.segger.com/downloads/embedded-studio/
https://www.nordicsemi.com/Products/Development-software/nRF5-SDK/Download#infotabs

Getting nRF52840DK programmer ready:

  1. Download the nRF SDK and the configure_nRF_to_low_VDD.zip file attached above and unzip them.

  2. Move the nRF board firmware to a specific level of hierachy {Location you unzipped the nRF5 SDK to}\DeviceDownload\nRF5_SDK_17.1.0_ddde560\nRF5_SDK_17.1.0_ddde560\examples\MyProjects (My Project folder does not exist, you will need create a folder and rename it to MyProject)

  3. Copy the unzipped configure_nRF_to_low_VDD.zip files under MyPorjects folder, the structure should be examples\MyProjects\configure_nRF_to_low_VDD\. You should see the pca10056 folder, blinky.eww, main.c, uicr_config.h under this path.

  4. Open {Location you unzipped the nRF5 SDK to}\DeviceDownload\nRF5_SDK_17.1.0_ddde560\nRF5_SDK_17.1.0_ddde560\examples\MyProjects\configure_nRF_to_low_VDD\pca10056\blank\ses\EVA6_1_8v-REG0_test.emProject with Segger embedded studio

  5. IMPORTANT Connect the nRF to the computer, but do not have scum connected to the nRF. You need flash the firmware first. Make sure the NRF Power Source switch on board is selected to VDD.

  6. In Segger Embedded Studio, compile the project and use J-Link to flash the nRF. The shortcut is Ctrl+T, to connect J-Link, and Ctrl+T, L to program the nRF.

  7. There is a little switch labeled NRF power source. Move it from the VDD position to the USB position. The nRF chip and all LEDs should turn off.

  8. Connect a second USB cable to the other port on the nRF .

  9. The nRF should be turned on again. LEDs should be dimmer. Confirm output voltage VDD is 1.8V.

  10. Clone Fil' repo and checkout branch develop_12 https://github.com/filmak/SCuM-programmer/tree/develop_12

  11. Open {Location you cloned the repo}\SCuM-programmer\scum-programmer\scum-programmer.emProject with Segger embedded studio

  12. In Segger Embedded Studio, compile the project and use J-Link to flash the nRF. The shortcut is Ctrl+T, to connect J-Link, and Ctrl+T, L to program the nRF.

    1. LEDs will blink in circular pattern when you use Thomas’s program.

    2. If you see an error about a core_cm4.h file not found or similar, go to Tools -> Package Manager and install the CMSIS-CORE Support Package and the Nordic Semiconductor nRF CPU Support Package (then restart Segger Embedded Studio)

  13. To bootload (after completing wiring setups below), enter command: python test_bootload.py . You will need to manually change the COM port and the path to the binary file.

    1. If errors importing serial, run pip install pyserial

Wiring

nRF → Sulu Connections (only make connections after steps above completed):

GND → GND

5V → EXT_BAT

P0.28 → 3WB_CLK
P0.29 → 3WB_DATA
P0.30 → 3WB_EN
P0.31 → HRESET

Sulu → Sulu Connections (use pin headers):

1.8V → VBAT

1.1V → VDDD

EXT_VBAT → 1.1V_IN

VBAT → VDDIO
VDDD → BTSRC_SEL

UART → Sulu Connections:

UART from SCuM can passthrough nRF serial connection, but there are still minor problems that need to be fixed in the setup. For now, it’s easiest to use a USB UART device. One found here works well. Any serial device must be configured to it’s 1.8V setting to properly work with SCuM. You can use any serial monitor (set to 19200 baud), such as the one build into the Arduino IDE.

GND → GND

RXD (UART RX) → RsTx