Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/copych/esp32-dualcore-i2s
Proof of concept for dual core sound synthezis via i2s
https://github.com/copych/esp32-dualcore-i2s
arduino esp32 i2s multithreading sound synthesizer
Last synced: about 2 months ago
JSON representation
Proof of concept for dual core sound synthezis via i2s
- Host: GitHub
- URL: https://github.com/copych/esp32-dualcore-i2s
- Owner: copych
- Created: 2022-11-13T18:52:55.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2022-11-14T18:59:11.000Z (about 2 years ago)
- Last Synced: 2023-03-08T08:28:31.441Z (almost 2 years ago)
- Topics: arduino, esp32, i2s, multithreading, sound, synthesizer
- Language: C++
- Homepage:
- Size: 16.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ESP32 multitasking dual core sound synthesis
Proof of concept for ESP32 dual core multithread sound synthesis.This sketch creates 2 tasks -- one for each of two Xtensa LX6 cores. Each task generates a Sin() signal of a given frequency. One of the tasks then sums the buffers and writes the result to i2s DMA buffer. Data safety is based on a xTaskNotifyGive() / ulTaskNotifyTake().
Sampling rate is 44100Hz, samples are 16bit stereo.
Project was compiled in ArduinoIDE with ESP core 2.0.5.
Hardware is ESP32 DevKit with a PCM5102 extenal DAC connected to GPIOs 5, 18 and 19.
Initial code for a single core and internal DAC was taken from here: https://github.com/infrasonicaudio/esp32-i2s-synth-example