Error when building nRF PCA10059 (nRF52840 dongle)
From within the ports/nrf directory I'm running:
make BOARD=pca10059
And getting the following error:
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
mkdir -p build-pca10059/genhdr
Create build-pca10059/genhdr/pins.h
GEN build-pca10059/genhdr/mpversion.h
GEN build-pca10059/genhdr/moduledefs.h
make: *** No rule to make target 'lib/tinyusb/src/portable/nordic/nrf5x/hal_nrf5x.c', needed by 'build-pca10059/genhdr/qstr.i.last'. Stop.
Building other targets (i.e. pca10028) works fine. Any ideas?
Nordic port for nrf51822, nrf52832 and nrf52840
This is an initial port for the nRF series including nrf51822, nrf52832 and nrf52840 support.
Modules currently supported:
- UART
- LED
- Pin
- ADC
- PWM (nrf52)
- SPI
- I2C
Additional micropython modules:
- music - backport of micro:bit music module for both nrf51 and nrf52 (+ ticker and softpwm drivers)
- Temperature
- RTC (Real time counter - low-power counter)
- ubluepy - Bluetooth LE module using existing python library, bluepy, as API template. (Extended to also act as a peripheral role)
Additional features:
- Bluetooth LE REPL
Current target boards supported by nrf51822:
- BBC micro:bit
- pca10000 (dongle)
- pca10001 (dev-kit)
- pca10028 (dev-kit)
- pca10032 (dongle)
Current target boards supported by nrf52832:
- Bluefruit nRF52 Feather
- BL652 & DVK from Laird
- pca10040
Current target board supported by nrf52840: pca10056
The port introduces a new HAL written from scratch to make it license compatible with micropython for redistribution. Header files for individual chips (Nordic Semi MDK) are distributed, as it uses a compatible BSD license. Hence, no dependency on any other 3rd party for HAL or libraries.
All targets, except for the nrf52840, have Bluetooth LE support using Nordic Semiconductor Bluetooth Stacks (Softdevice) downloaded directly from Nordic's website using the provided script.
Some modules are not be 100% aligned with current micropython machine API. However, the port is functional and gives a good base to start writing micropython code on the nrf5x devices with or without Bluetooth LE.
Subsequent patches are expected to get the port up to date to the new machine module APIs, adding new HAL drivers and modules, adding new target boards and optimizing flash/ram footprint (specially on the nrf51 targets).