2019-10-11 06:57:43 -04:00
|
|
|
|
# CircuitPython port to Spresense #
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
|
|
|
|
This directory contains the port of CircuitPython to Spresense. It is a compact
|
|
|
|
|
development board based on Sony’s power-efficient multicore microcontroller
|
|
|
|
|
CXD5602.
|
|
|
|
|
|
|
|
|
|
Board features:
|
|
|
|
|
|
|
|
|
|
* Integrated GPS
|
|
|
|
|
* The embedded GNSS with support for GPS, QZSS and GLONASS enables applications
|
|
|
|
|
where tracking is required.
|
|
|
|
|
* Hi-res audio output and multi mic inputs
|
|
|
|
|
* Advanced 192kHz/24 bit audio codec and amplifier for audio output, and
|
|
|
|
|
support for up to 8 mic input channels.
|
|
|
|
|
* Multicore microcontroller
|
|
|
|
|
* Spresense is powered by Sony's CXD5602 microcontroller (ARM® Cortex®-M4F × 6
|
|
|
|
|
cores), with a clock speed of 156 MHz.
|
|
|
|
|
|
|
|
|
|
Currently, Spresense port does not support GNSS, Audio and Multicore.
|
|
|
|
|
|
|
|
|
|
Refer to [developer.sony.com/develop/spresense/](https://developer.sony.com/develop/spresense/)
|
|
|
|
|
for further information about this board.
|
|
|
|
|
|
2019-10-11 06:57:43 -04:00
|
|
|
|
## Prerequisites ##
|
|
|
|
|
|
|
|
|
|
### Linux ###
|
|
|
|
|
|
|
|
|
|
Add user to `dialout` group:
|
|
|
|
|
|
|
|
|
|
$ sudo usermod -a -G dialout <user-name>
|
|
|
|
|
|
|
|
|
|
### Windows ###
|
|
|
|
|
|
|
|
|
|
Download and install USB serial driver
|
|
|
|
|
|
|
|
|
|
* [CP210x USB to serial driver for Windows 7/8/8.1](https://www.silabs.com/documents/public/software/CP210x_Windows_Drivers.zip)
|
|
|
|
|
|
|
|
|
|
* [CP210x USB to serial driver for Windows 10](https://www.silabs.com/documents/public/software/CP210x_Universal_Windows_Driver.zip)
|
|
|
|
|
|
|
|
|
|
### macOS ###
|
|
|
|
|
|
|
|
|
|
Download and install USB serial driver
|
|
|
|
|
|
|
|
|
|
* [CP210x USB to serial driver for Mac OS X](https://www.silabs.com/documents/public/software/Mac_OSX_VCP_Driver.zip)
|
|
|
|
|
|
|
|
|
|
## Build instructions ##
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
|
|
|
|
Pull all submodules into your clone:
|
|
|
|
|
|
|
|
|
|
$ git submodule update --init --recursive
|
|
|
|
|
|
|
|
|
|
Build the MicroPython cross-compiler:
|
|
|
|
|
|
|
|
|
|
$ make -C mpy-cross
|
|
|
|
|
|
2019-10-11 02:09:15 -04:00
|
|
|
|
Change directory to cxd56:
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
2019-10-11 02:09:15 -04:00
|
|
|
|
$ cd ports/cxd56
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
|
|
|
|
To build circuitpython image run:
|
|
|
|
|
|
2019-10-11 02:54:36 -04:00
|
|
|
|
$ make BOARD=spresense
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
2019-10-11 06:57:43 -04:00
|
|
|
|
## USB connection ##
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
2019-10-11 06:57:43 -04:00
|
|
|
|
Connect the `Spresense main board` to the PC via the USB cable.
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
2019-10-11 06:57:43 -04:00
|
|
|
|
## Flash the bootloader ##
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
|
|
|
|
The correct bootloader is required for the Spresense board to function.
|
|
|
|
|
|
|
|
|
|
Bootloader information:
|
|
|
|
|
|
|
|
|
|
* The bootloader has to be flashed the very first time the board is used.
|
|
|
|
|
|
|
|
|
|
* You have to accept the End User License Agreement to be able to download and use the Spresense bootloader binary.
|
|
|
|
|
|
|
|
|
|
Download the spresense binaries zip archive from: <https://developer.sony.com/file/download/download-spresense-firmware-v1-4-000>
|
|
|
|
|
|
|
|
|
|
Extract spresense binaries in your PC to ports/spresense/spresense-exported-sdk/firmware/
|
|
|
|
|
|
|
|
|
|
To flash the bootloader run the command:
|
|
|
|
|
|
2019-10-11 02:54:36 -04:00
|
|
|
|
$ make BOARD=spresense flash-bootloader
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
2019-10-11 06:57:43 -04:00
|
|
|
|
## Flash the circuitpython.spk image ##
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
|
|
|
|
To flash the firmware run the command:
|
|
|
|
|
|
2019-10-11 02:54:36 -04:00
|
|
|
|
$ make BOARD=spresense flash
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
2019-10-11 06:57:43 -04:00
|
|
|
|
## Accessing the board ##
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
2019-10-11 06:57:43 -04:00
|
|
|
|
Connect the `Spresense extension board` to the PC via the USB cable.
|
2019-10-09 02:27:08 -04:00
|
|
|
|
|
|
|
|
|
Once built and deployed, access the CircuitPython REPL (the Python prompt) via USB. You can run:
|
|
|
|
|
|
|
|
|
|
$ screen /dev/ttyACM0 115200
|