summaryrefslogtreecommitdiff
path: root/ports/nrf/README.md
diff options
context:
space:
mode:
authorarturo182 <arturo182@tlen.pl>2018-02-07 20:40:44 +0100
committerarturo182 <arturo182@tlen.pl>2018-02-07 22:44:13 +0100
commit05bd5d4ee658e516bfa1471d1e5f816f2609679d (patch)
treecd798a76ac22e5225db69bb1ae5a67963a99eb81 /ports/nrf/README.md
parent29ae4cdd1cd8d9dd4cdaabc29b6dd682b590106d (diff)
nrf: Remove nRF51 boards and files, update README
Diffstat (limited to 'ports/nrf/README.md')
-rw-r--r--ports/nrf/README.md59
1 files changed, 18 insertions, 41 deletions
diff --git a/ports/nrf/README.md b/ports/nrf/README.md
index 2cfa52c39..eff0f80b5 100644
--- a/ports/nrf/README.md
+++ b/ports/nrf/README.md
@@ -1,6 +1,6 @@
-# MicroPython Port To The Nordic Semiconductor nRF Series
+# CircuitPython Port To The Nordic Semiconductor nRF52 Series
-This is a port of MicroPython to the Nordic Semiconductor nRF series of chips.
+This is a port of CircuitPython to the Nordic Semiconductor nRF52 series of chips.
## Supported Features
@@ -10,30 +10,21 @@ This is a port of MicroPython to the Nordic Semiconductor nRF series of chips.
* Pins
* ADC
* I2C
-* PWM (nRF52 only)
+* PWM
* Temperature
* RTC (Real Time Counter. Low-Power counter)
* BLE support including:
- * Peripheral role on nrf51 targets
- * Central role and Peripheral role on nrf52 targets
+ * Peripheral role
+ * Scanner role
* _REPL over Bluetooth LE_ (optionally using WebBluetooth)
- * ubluepy: Bluetooth LE module for MicroPython
+ * ubluepy: Bluetooth LE module for CircuitPython
* 1 non-connectable advertiser while in connection
## Tested Hardware
-* nRF51
- * [micro:bit](http://microbit.org/)
- * PCA10000 (dongle)
- * PCA10001
- * PCA10028
- * PCA10031 (dongle)
- * [WT51822-S4AT](http://www.wireless-tag.com/wireless_module/BLE/WT51822-S4AT.html)
* nRF52832
- * [PCA10040](http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Fdevelopment%2Fnrf52_dev_kit.html)
+ * [PCA10040](http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Fdevelopment%2Fnrf52_dev_kit.html)
* [Adafruit Feather nRF52](https://www.adafruit.com/product/3406)
- * [Thingy:52](http://www.nordicsemi.com/eng/Products/Nordic-Thingy-52)
- * [Arduino Primo](http://www.arduino.org/products/boards/arduino-primo)
* nRF52840
* [PCA10056](http://www.nordicsemi.com/eng/Products/nRF52840-Preview-DK)
@@ -41,21 +32,21 @@ This is a port of MicroPython to the Nordic Semiconductor nRF series of chips.
Prerequisite steps for building the nrf port:
- git clone <URL>.git micropython
- cd micropython
+ git clone <URL>.git circuitpython
+ cd circuitpython
git submodule update --init
make -C mpy-cross
-By default, the PCA10040 (nrf52832) is used as compile target. To build and flash issue the following command inside the ports/nrf/ folder:
+By default, the feather52 (nRF52832) is used as compile target. To build and flash issue the following command inside the ports/nrf/ folder:
make
make flash
Alternatively the target board could be defined:
- make BOARD=pca10040
+ make BOARD=pca10056
make flash
-
+
## Compile and Flash with Bluetooth Stack
First prepare the bluetooth folder by downloading Bluetooth LE stacks and headers:
@@ -76,16 +67,9 @@ Note: further tuning of features to include in bluetooth or even setting up the
Target Board (BOARD) | Bluetooth Stack (SD) | Bluetooth Support | Flash Util
---------------------|-------------------------|------------------------|-------------------------------
-microbit | s110 | Peripheral | [PyOCD](#pyocdopenocd-targets)
-pca10000 | s110 | Peripheral | [Segger](#segger-targets)
-pca10001 | s110 | Peripheral | [Segger](#segger-targets)
-pca10028 | s110 | Peripheral | [Segger](#segger-targets)
-pca10031 | s110 | Peripheral | [Segger](#segger-targets)
-wt51822_s4at | s110 | Peripheral | Manual, see [datasheet](https://4tronix.co.uk/picobot2/WT51822-S4AT.pdf) for pinout
-pca10040 | s132 | Peripheral and Central | [Segger](#segger-targets)
-feather52 | s132 | Peripheral and Central | [UART DFU](#dfu-targets)
-arduino_primo | s132 | Peripheral and Central | [PyOCD](#pyocdopenocd-targets)
-pca10056 | s140 | Peripheral | [Segger](#segger-targets)
+pca10040 | s132 | Peripheral and Scanner | [Segger](#segger-targets)
+feather52 | s132 | Peripheral and Scanner | [UART DFU](#dfu-targets)
+pca10056 | s140 | Peripheral and Scanner | [Segger](#segger-targets)
## Segger Targets
@@ -103,13 +87,6 @@ Install the necessary tools to flash and debug using Segger:
note: On Linux it might be required to link SEGGER's `libjlinkarm.so` inside nrfjprog's folder.
-## PyOCD/OpenOCD Targets
-
-Install the necessary tools to flash and debug using OpenOCD:
-
- sudo apt-get install openocd
- sudo pip install pyOCD
-
## DFU Targets
sudo apt-get install build-essential libffi-dev pkg-config gcc-arm-none-eabi git python python-pip
@@ -117,17 +94,17 @@ Install the necessary tools to flash and debug using OpenOCD:
cd Adafruit_nRF52_Arduino/tools/nrfutil-0.5.2/
sudo pip install -r requirements.txt
sudo python setup.py install
-
+
**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.
+* dfu-flash: Triggers the DFU flash application to upload the firmware from the generated Firmware zip file.
Example on how to generate and flash feather52 target:
make BOARD=feather52 SD=s132
make BOARD=feather52 SD=s132 dfu-gen
make BOARD=feather52 SD=s132 dfu-flash
-
+
## Bluetooth LE REPL
The port also implements a BLE REPL driver. This feature is disabled by default, as it will deactivate the UART REPL when activated. As some of the nRF devices only have one UART, using the BLE REPL free's the UART instance such that it can be used as a general UART peripheral not bound to REPL.