From 687e3d0d6696a27bc72d5b6f83fc39a3956a8ab6 Mon Sep 17 00:00:00 2001 From: Sam Calisch <sam.calisch@cba.mit.edu> Date: Fri, 28 Jul 2017 14:17:05 -0400 Subject: [PATCH] Update README.md --- README.md | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index e850515..32a25a2 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. -- GitLab