How do you upload your custom code to the board?

We support uploading custom code in two ways, using on board USB-Serial connection or J-Link Lite CortexM-9, J-Trace for Cortex-M, J-Link EDU with J-Link 9-pin Cortex-M Adapter or similar which supports CortextM-0. P3(Serial Wire Debug (SWD)) connector is used to interface with the board.  Option two, (using on board USB-Serial connection remove the need to buy/use Segger J-Link/J-Trace modules. More information you can find here in BLE DEV.N DFU v1.0