diff --git a/README.md b/README.md index e8505152332163d83b8aaaae23fb8e2ea4dc024b..32a25a21ab5a94d3a6e7fdcefc8024aacb3722ad 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,18 @@ This board comes flashed with a Serial DFU bootloader and it has an onboard USB- # Custom board with Segger J-Link -<img src='jlink/flashing-bootloader.png' width=50%> +The Segger J-Link is a very helpful tool, but it's quite expensive. With it, we can use Nordic's command line utilities, including `nrfjprog`. I wrote a shell script with three commands to erase, flash the adafruit bootloader, and then start the chip running. + +``` +nrfjprog -f nrf52 --eraseall +nrfjprog -f nrf52 --program feather52_bootloader_v050_s132_v201.hex +nrfjprog -f nrf52 --run +``` + +<img src='jlink/jlink-wiring.jpg' width=30%> +<img src='jlink/flashing-bootloader.png' width=30%> + +The J-Link requires a wire to ensure the target has power. In the image above, red is target power (3.3V), black is ground, green is SWDCLK, and blue is SWDIO. # Custom board with OpenOCD and Raspberry Pi @@ -30,6 +41,6 @@ You don't have to spend hundreds on a J-Link (even though it is very nice). Usi <img src='openocd/bootloader-raspberrypi.jpg' width=53%> <img src='openocd/flashing-bootloader.png' width=30%> -Support for the NRF52 is not in the stable release of OpenOCD as of V 0.10, but you can patch it following the instructions on <a href='https://primalcortex.wordpress.com/2017/06/10/setting-up-openocd-for-programming-the-nordic-nrf52832-chip/'>this page</a>. +Support for the NRF52 is not in the stable release of OpenOCD as of V 0.10, but you can patch it following the instructions on <a href='https://primalcortex.wordpress.com/2017/06/10/setting-up-openocd-for-programming-the-nordic-nrf52832-chip/'>this page</a>. They worked for me, with the small addition that I needed to eliminate two duplicate variable definitions that broke my build.