18 releases (9 breaking)
Uses new Rust 2024
| 0.11.0 | Jun 10, 2025 |
|---|---|
| 0.10.0 | Jun 10, 2024 |
| 0.9.0 | Jan 16, 2024 |
| 0.8.0 | Sep 23, 2023 |
| 0.5.0 | May 15, 2022 |
#222 in Embedded development
962 downloads per month
79KB
1.5K
SLoC
Daisy
Rust no_std, embedded_hal board support package for the Electro-Smith Daisy
platform.
Supported boards
Currently this library supports following boards:
- Daisy Seed (codec AK4556),
seed - Daisy Seed 1.1 (codec WM8731),
seed_1_1 - Daisy Seed 1.2 (codec PCM3060),
seed_1_2 - Daisy Patch SM (codec PCM3060),
patch_sm
Select the board by using its respective feature.
Flashing an example
Using DFU. Connect using a sigle USB cable, click BOOT+RESET before flashing:
make flash-dfu WHAT=blinky BOARD=seed_1_1
Using probe-rs. This requires ST-Link probe, but provides
additional logs and panic messages:
make flash WHAT=blinky BOARD=seed_1_1
Using Daisy Bootloader. This extends the maximum firmware capacity. You can find a guide with an example under examples/bootloader.
Sampling rate
By default, the audio sampling rate is set to 48 kHz. This can be increased to
96 kHz by enabling the sampling_rate_96khz feature.
Block length
By default, the audio block length is 32 frames. This can be increased to 64
by enabling the block_length_64 feature.
API stability
I am still trying to figure out a good API for the project. Expect it to change.
To mitigate breakage of your code on library update, use macros defined under
board.rs to initialize resources whenever possible.
HAL compatibility
This library is closely tied to stm32h7xx-hal.
Make sure to use compatible versions in your Cargo.toml.
| Daisy | HAL |
|---|---|
0.10 |
0.16 |
0.9 |
0.15 |
0.8 |
0.14 |
0.2-0.7 |
0.12 |
0.1 |
0.11 |
Razor
- This library aims to abstract all peripherals that are available on Daisy.
- This library will not abstract anything that is not on Daisy, e.g. pots, SD cards, MIDI, ...
License
This library is distributed under the terms of the MIT license. See LICENSE for details.
This project was forked from antoinevg/daisy_bsp. Kudos to Antoine for making his library public.
Changelog
Read the CHANGELOG.md to learn about changes introduced in each release.
Versioning
See VERSIONING.md to find detailed information about versioning of the project.
Dependencies
~64MB
~1M SLoC