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.
2019-10-14 02:42:10 -04:00
Download the spresense binaries zip archive from: [Spresense firmware v1-4-000 ](https://developer.sony.com/file/download/download-spresense-firmware-v1-4-000 )
2019-10-09 02:27:08 -04:00
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 11:15:25 -04:00
## Flash the circuitpython 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