nimphea
Nimphea - Elegant Nim bindings for libDaisy Hardware Abstraction Library (Daisy Audio Platform: Seed, Patch, Pod, Field, Petal, Versio)
Wraps a native library — check OS Compatibility below for platform-specific linking notes.
Summary
| Latest Version | 1.1.0 |
|---|---|
| License | MIT |
| CI Status | Failing |
| Downloads | 0 |
| Last Indexed | 2026-09-04 07:26 |
Tags
Authors
- Brokezawa
Installation
nimble install nimphea
choosenim install nimphea
git clone https://github.com/Brokezawa/Nimphea
OS Compatibility
| Platform | Linux | macOS | Windows | FreeBSD | OpenBSD | NetBSD | Android | iOS | WASM | Embedded |
|---|---|---|---|---|---|---|---|---|---|---|
| nimphea | ✓ | ✓ | ✓ | - | - | - | - | - | - | - |
Dependencies
| Package | Version | Optional |
|---|---|---|
| nim >= | 2.0.0 | No |
| unittest2 >= | 0.2.0 | No |
Source
| Repository | https://github.com/Brokezawa/Nimphea |
|---|---|
| Homepage | https://github.com/Brokezawa/Nimphea |
| Registry Source | nimble_official |
README
Nimphea
A comprehensive, type-safe Nim wrapper for the libDaisy hardware abstraction library, enabling elegant Nim development for the Electro-Smith Daisy Seed embedded audio platform.
What is this?
This wrapper allows you to write firmware for the Daisy Seed embedded audio board using the Nim programming language instead of C++. It provides a clean, type-safe API that wraps libDaisy's hardware abstraction layer.
Key Features: - Zero overhead - Direct C++ interop with no runtime cost - Type safety - Nim's strong type system catches errors at compile time - Clean API - Idiomatic Nim interfaces to libDaisy functionality - Comprehensive - High coverage of libDaisy features - Hardware Accelerated DSP - Full CMSIS-DSP support included - Well documented - Searchable API reference and handwritten guides
Quick Start
Hardware Requirements
- Daisy Seed - STM32H750-based embedded audio board
- USB cable - For programming and power
- Audio I/O (optional) - For audio applications
Software Requirements
- Nim - 2.0 or later
- ARM Toolchain -
arm-none-eabi-gccand related tools - dfu-util - For uploading firmware
Installation
- Install the Nimphea library:
nimble install nimphea
Note: This will automatically clone and build
libDaisy. It may take a few minutes.
- Create a project from a template: Clone one of the starter templates to begin:
- Basic Template
-
Build and Flash: Navigate to your project directory and use the pre-configured nimble tasks:
nimble make
nimble flash
Documentation
Official docs (GitHub Pages): https://brokezawa.github.io/nimphea
Examples
The Nimphea Examples Repository contains 40+ tested examples covering:
- Basic - GPIO, LEDs, buttons
- Audio - Passthrough, synthesis, effects
- DSP - CMSIS-DSP accelerated math
- Peripherals - ADC, PWM, I2C, SPI, UART, USB, MIDI
- Displays - OLED (I2C/SPI), LCD character displays
- Sensors - IMU, gesture, touch controllers
- Storage - SD Card, QSPI flash, SDRAM
License
This wrapper follows the same MIT license as libDaisy. See LICENSE file for details.
contributing
Contributions are welcome! See CONTRIBUTING for details.