Uploaded March 2014 | Updated September 2026, 1 week ago
This part explains how ADSR envelopes work. Unfortunately we hit the limits of the gcc optimizer and and the performance issues force us to go down to 11kHz sampling rate :(
This means no further features like LFO etc until we switch to assembler but then just few would be able to follow. Sorry folks.
Source code can be found here:
github.com/bitluni/arduinoMIDISynth
You might also want to read about (it's used to calculate the ramps):
en.wikipedia.org/wiki/Linear_interpolation
Basic infos about synthesizer can be found here:
en.wikipedia.org/wiki/Synthesizer
This part explains how ADSR envelopes work. Unfortunately we hit the limits of the gcc optimizer and and the performance issues force us to go down to 11kHz sampling rate :(
This means no further features like LFO etc until we switch to assembler but then just few would be able to follow. Sorry folks.
Source code can be found here:
github.com/bitluni/arduinoMIDISynth
You might also want to read about (it's used to calculate the ramps):
en.wikipedia.org/wiki/Linear_interpolation
Basic infos about synthesizer can be found here:
en.wikipedia.org/wiki/Synthesizer






![Cheap USB Host Microcontroller [CH559, ESP32, HID]
This video shows an affordable way to add USB support to maker projects.
$2 for 10 PCBs (Any Color): https://jlcpcb.com (sponsor)
The CH559 is a 8051 architecture based microcontroller that has built in dual USB Hosts. This allows to interface generic Keyboards, Mice, MIDI devices and in my case gamepads. I added this chip as an add on to my ESP32 based game console to replace the SNES controllers by cheap generic ones. The communications is handled over UART which can be done by both ends in hardware. There still is some work to do but you can try it out already. Have fun!
CH559 firmware sources & compiler:
https://github.com/atc1441/CH559sdccUSBHost
Aarons video:
https://youtu.be/Th88RiSmj2w
Links to my game using the USB:
https://github.com/bitluni/GameWing2USB
CH559:
https://link.bitluni.net/ch559
Links to the parts (affiliate links):
USB SNES Gamepad ($2.70 shipped):
USB Fake PS3 Controller ($3.30 shipped):
https://aliexpress.bitluni.net/usbPs3
https://aliexpress.bitluni.net/usbSnes
Set of Tweezers ($3):
https://aliexpress.bitluni.net/tweezers
Flux ($3 for two):
https://aliexpress.bitluni.net/flux
Ultrasonic Cleaner(~$50):
https://aliexpress.bitluni.net/cleaner
Soldering Mat ($9):
https://aliexpress.bitluni.net/mat
My camera and lens (4k 60fps):
https://amazon.bitluni.net/gh5
plz share :-)
Check out my Tindie store to get some of my creations:
https://www.tindie.com/stores/bitluni
Consider supporting my lab for some extras and frequent updates:
https://github.com/sponsors/bitluni
https://www.patreon.com/bitluni
https://paypal.me/bitluni
Twitter: @bitluni
reddit: u/bitluni
#electronics #diy #maker Cheap USB Host Microcontroller [CH559, ESP32, HID]](https://i.ytimg.com/vi/po3FBdY0GS4/mqdefault.jpg)

![ESP32 VGA Beginner Tutorial [Arduino Library ESP32Lib]
This is a beginner tutorial how to set up VGA with the least effort on the ESP32. My new Arduino library makes ist super simple to get started and provides many examples that explain the capabilities. The performance boost is insane compared to older implementations.
Hardware (affiliate links):
My ESP32 VGA Shield: https://link.bitluni.net/vga
ESP32 MINI KIT (~$4.90) http://s.click.aliexpress.com/e/8fMcA6M
LOLIN32 (~$4.92) http://s.click.aliexpress.com/e/byshmypE
TTGO ESP32 ($4.90+) http://s.click.aliexpress.com/e/bzgFPjVe
My favorite multimeter:
US https://amzn.to/2Ne7WvW
DE https://amzn.to/2S72ZWv
Software:
Arduino IDE - https://www.arduino.cc/en/main/software
Link for the Boards Manager for ESP32 support. This need to be added to the preferences:
https://dl.espressif.com/dl/package_esp32_index.json
The link to my library with some extra documentation:
https://github.com/bitluni/ESP32Lib
plz share :-)
Consider supporting my lab on Patreon for some extras and frequent updates:
https://www.patreon.com/bitluni
Im also thankful for any donation on PayPal:
https://paypal.me/bitluni
Twitter: @bitluni
reddit: r/bitluni
#ESP32Lib #Arduino #IoT ESP32 VGA Beginner Tutorial [Arduino Library ESP32Lib]](https://i.ytimg.com/vi/qJ68fRff5_k/mqdefault.jpg)

