Sulu Programming With nRF Setup


Getting nRF52840DK programmer ready:

  1. Download the nRF SDK and the 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 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 be off.

    1. The switches on the nRF should be configured as follows (orientation being the usb ports are facing upward and to the right):

      1. Switch in bottom left: set to DEFAULT

      2. Switch in center right: USB

      3. Switch in top right: ON

  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

  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. After the programming is done, the LEDs will blink in circular pattern.

    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 . 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


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



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



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.