Skip to content

Klangstrom/klangstrom-libraries

Repository files navigation

Klangstrom (KLST) is a subtractive infrastructure design framework to facilitate generative, networked, embedded sound + music + composition. klangstrom is comprised of two software libraries ( klang a node+text-based sound synthesis library and strom a node+text-based generative composition library ), an embedded hardware platform, and a programming environment to allow seamless development of generative, networked, embedded sound + music + composition applications.


contains a series of libraries that are mostly but not exclusively used by the Arduino IDE or arduino-cli. klangstrom-libraries are used ( as git subtree ) in the repositories klangstrom-hardware and klangstrom-arduino.

libraries included in klangstrom-libraries:

klangstrom-libraries
├── Klangstrom
├── Klangstrom_Emulator
├── Klangstrom_KLST_EMU                
├── Klangstrom_KLST_PANDA_STM32        
├── Klangstrom_KLST_PANDA_STM32_CubeMX 
├── USBDevices
└── USBHost # <- ⚠️ WIP ⚠️ currently broken

Klangstrom

Klangstrom is the library that applications interact with. it defines the Klangstrom API.

Klangstrom_Emulator

infrastructure for running Klangstrom emulators. it is based on Umfeld for Arduino. it tries to mimic some Arduino functions but by far not every available function.

this library is usually not used directly.

Klangstrom_KLST_EMU

implementation of Klangstrom API for running on the emulator. currently emulates KLST_PANDA and KLST_CATERPILLAR.

Klangstrom_KLST_PANDA_STM32

implementation of board-specific (BSP) functions of the Klangstrom API for KLST_PANDA and KLST_CATERPILLAR.

this library is usually not used directly.

Klangstrom_KLST_PANDA_STM32_CubeMX

low-level firmware files generated by STM32CubeMX with definitions found in the project configuration files ( .ioc ) in the klangstrom-hardware repository.

this library is usually not used directly.

USBDevices

⚠️⚠️⚠️ WIP library is currently broken ⚠️⚠️⚠️

USB device library for STM32H7 devices. in USB terminology a device is a peripheral that is connect to a host e.g a keyboard, mouse or audio interface.

USBHost

⚠️⚠️⚠️ WIP library is currently broken ⚠️⚠️⚠️

USB host library for STM32H7 devices. in USB terminology a host allows devices to connect to it. this library implements a sub-set of Human-Interface Devices (HID):

  • keyboard
  • mouse
  • MIDI

About

a series of libraries that are mostly but not exclusively used by the Arduino IDE or arduino-cli

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages