circuitpython/ports/nrf
Dan Halbert e631350b9b
Merge pull request #8070 from dhalbert/port-specific-submodules
Provide port-specific fetch of submodules
2023-06-06 14:46:39 -04:00
..
bluetooth remove lib from exludes, fix all remaining typos 2023-03-23 13:59:08 +07:00
boards M60 keyboard: allow run on battery 2023-05-28 12:11:34 +08:00
common-hal Add memorymap support for the nRF processors. 2023-05-07 15:58:25 +01:00
device/nrf52 more missing-prototypes fixes 2021-11-10 21:00:17 -06:00
freeze run code formatting script 2021-03-15 19:27:36 +05:30
nrfx@3f55e49eb1 update nrfx submodule to v2 2019-12-18 15:39:11 +07:00
peripherals/nrf Use memory fence when disabling cache to avoid -O2 problems 2022-12-29 19:49:40 -05:00
supervisor fix typos (partial) detected by codepell 2023-03-18 22:17:02 +07:00
.gitignore remove redundant port/*/.gitignore; cleanup others 2022-10-01 11:52:36 -04:00
background.c Fix ticks 2023-04-07 09:49:51 -07:00
background.h Add Bangle.js 2, JDI memory displays and ACeP epd 2023-02-15 15:03:40 -08:00
espruino_dfu_private_key.pem Add Bangle.js 2, JDI memory displays and ACeP epd 2023-02-15 15:03:40 -08:00
gccollect.c run code formatting script 2021-03-15 19:27:36 +05:30
ld_defines.c run code formatting script 2021-03-15 19:27:36 +05:30
Makefile fetch-port-submodules; fetch-all-submodules 2023-06-05 17:23:34 -04:00
mpconfigport.h fix typos (partial) detected by codepell 2023-03-18 22:17:02 +07:00
mpconfigport.mk Add memorymap to nrf52840 devices only 2023-05-07 18:21:22 +01:00
mphalport.h Merge tag 'v1.17' into merge-1.17 2021-10-15 08:20:54 -05:00
nrfx_config.h Create first BLE-only board, Micro:Bit v2 2021-07-14 09:55:51 -07:00
nrfx_glue.h nrf/modules/nrf: Add function to enable/disable DCDC. 2021-08-09 14:55:59 +10:00
nrfx_log.h all: Reformat C and Python source code with tools/codeformat.py. 2020-02-28 10:33:03 +11:00
qstrdefsport.h nrf/qstrdefsport.h: Add entries for in-built FS mount points. 2021-08-08 23:17:49 +10:00
README.md nrf: Facilitate use of freeze manifest. 2021-08-08 23:17:55 +10:00
sd_mutex.c -Werror=missing-prototypes for nRF 2021-11-10 11:26:54 -06:00
sd_mutex.h run code formatting script 2021-03-15 19:27:36 +05:30

CircuitPython Port To The Nordic Semiconductor nRF52 Series

This is a port of CircuitPython to the Nordic Semiconductor nRF52 series of chips.

Note

: There are board-specific READMEs that may be more up to date than the generic board-neutral documentation below.

Flash

Some boards have UF2 bootloaders and can simply be flashed in the normal way, by copying firmware.uf2 to the BOOT drive.

For some boards, you can use the flash target:

make BOARD=pca10056 flash

Segger Targets

Install the necessary tools to flash and debug using Segger:

JLink Download

nrfjprog linux-32bit Download

nrfjprog linux-64bit Download

nrfjprog osx Download

nrfjprog win32 Download

note: On Linux it might be required to link SEGGER's libjlinkarm.so inside nrfjprog's folder.

DFU Targets

run follow command to install adafruit-nrfutil from PyPi

$ pip3 install --user adafruit-nrfutil

make flash and make sd will not work with DFU targets. Hence, dfu-gen and dfu-flash must be used instead.

  • dfu-gen: Generates a Firmware zip to be used by the DFU flash application.
  • dfu-flash: Triggers the DFU flash application to upload the firmware from the generated Firmware zip file.

When enabled you have different options to test it: