Experiments with embedded devices. This repository contains Arduino sketches and accompanying Python scripts.
Usage:
- Connect to serial port at 115200 baud
- Send
Ato flash blue LED - Send
Bto flash green LED - Send
Cto flash red LED
Usage:
- Scan for devices to find the device you want to connect to
- Update
BLE_DEVICE_ADDRESSvariable - Currently hardcoded to read BLE Characteristics of certain handler numbers at src/bleak.py#L25
- Uses an
asyncio.Queuefor collecting notifications. This is in preparation to feed data into an ML workflow for training
Usage:
- Much simpler sketch for transmitting acc data over serial
- Has more bandwidth for higher sampling rate as well
- Transmit 16-bit integer PCM from the Nicla Voice through serial port
- This was particarly tricky to figure out because:
- Arduino docs suggests that PDM library can be used, which is not the case
- Audio samples are only accessible through
NDP.extractData. Moreover,NDPwill only be initialised if all 3 synpkg are successfully loaded - This means that your Nicla Voice will always boot with a bunch of shit printed into the Serial port, which you need to kill
- Requires
pyserialmodule