# brintOS nRF9151 SOM station This machine reads an Emcraft SOM-NRF9151 through a SEGGER J-Link (SWD) and the Starter Kit's console bridge, both attached to this machine over WebUSB. It needs **Developer mode** on: it runs the HardwareJS runtime in its own `/boot`. openocd -f board/emcraft-som-nrf9151.cfg -c init -c "flash probe 0" -c shutdown openocd -f board/emcraft-som-nrf9151.cfg -c init -c "dump_image /tmp/flash.bin 0 0x100000" -c shutdown som-console # the board's shell in picocom, 115200 8N1; C-a C-x leaves som-console --list # every USB-serial port this machine has minicom -b 115200 -D $(som-console --find) To install Emcraft's release 1.2-114 on the board (§7 of the guide): som-program-nrf91 --app asset_tracker_v2 --check # writes nothing som-program-nrf91 --app asset_tracker_v2 Before anything that halts, erases or writes the nRF9151, read §6 of the guide: the application's watchdog, the debug lock after a reset of an erased chip, and the write-once UICR. /usr/share/brintos-nrf-station/nrf9151-som-station.md What the station carries: | Path | What it is | |---|---| | `/usr/share/openocd/scripts/board/emcraft-som-nrf9151.cfg` | the SOM's openocd board config: J-Link, SWD, nRF91 | | `/usr/share/openocd/scripts/mfg-jtag.cfg` | the one place the debug adapter is named | | `/usr/share/openocd/scripts/target/nordic/` | the Nordic target configs | | `/usr/share/brintos-som/nrf9151/` | release 1.2-114: `asset_tracker_v2` and `hello_mcuboot`, each with its PROVENANCE | | `som-program-nrf91`, `som-test-nrf91` | install a release; test the board over its shell, read-only by default | | `/boot/hardwarejs.html`, `/boot/hardwarejs.js` | the HardwareJS runtime this machine launches with in Developer mode | | `/usr/share/brintos-hardwarejs-runtime/PROVENANCE` | the HardwareJS commit that runtime was built from, and its sha256 sums | To check the station itself, with no board attached: brintos-selftest 99-nrf-station.test 99-som-nrf91.test 99-openocd.test 99-som-console.test