Stm32 Auto Tune Board
Home of the Auto-Tune plug-in, the music industry standard for pitch correction and vocal effects. Shop and learn about the best plug-ins for pitch correction, vocal effects, voice processing, and noise reduction. Auto-Tune Pro, Auto-Tune Artist, Auto-Tune EFX+, Auto-Tune Access, Harmony Engine, Mic Mod and more. How to implement a self tuning PID-like Controller. The problem is that the program needs to auto-tune and choose correct Kp, Ki constants and adapt to varying.
- Aug 29, 2019 Contribute to gerdb/tinnitus32 development by creating an account on GitHub. The blue button on the STM32 discovery board starts the Auto-Tune procedure.
- Apr 12, 2020 In order to auto-tune a PID controller, it may be necessary to determine the expected behavior of the controlled element. There are several different distinct types of behavior, even in an engine. Let's start with idle: We want to achieve a target-rpm and what we can control is idle-air (also timing and fuel, but let's keep it simple for now).
- STMicroelectronics is a leading Integrated Device Manufacturer delivering solutions that are key to Smart Driving. These include tools for our STM32, STM8 and SPC5 MCU families, as well as tools for Audio ICs, digital power conversion, motor control and a number of simulators. Advanced Nucleo board for new STM32L4+ prototypes.
An easy to build Theremin for only 50$
- Only an STM32 evaluation board, 3 oscillators and some knobs and switches needed.
- Excellent audio quality: 16/24bit audio DAC with headphone amplifier
- Can load waveforms with Theremin sound directly from an USB stick
- Very fast autotune: 1sec
The STM32F407G-DISC1 evaluation board can be used.So you need only 3 additional oscillators and some potentiometers and switches.
Schematic
Layout
The oscillators can be built up on a breadboard.With THD components:
Or with SMD components:
Daisydisk flower. After the removal, DaisyDisk leaves in the system various leftover files, hidden folders, etc.
Bill of material
Component | Volume 1 | Volume 2 | Pitch | |
---|---|---|---|---|
C1 | 1µF | 1µF | 1µF | ceramic capacitor |
C2 | 470pF | 470pF | 470pF | ceramic capacitor |
C3 | 33pF | 68pF | 33pF | ceramic capacitor |
C4 | 2.2nF | 2.2nF | 2.2nF | ceramic capacitor |
R1 | 10R | 10R | 10R | resistor 1% |
R2 | 22k | 22k | 1Meg | resistor 1% |
R3 | 100R | 100R | 100R | resistor 1% |
IC1 | CD4011UBE | CD4011UBE | CD4011UBE | Quad NAND |
L1 should be an air-coil with 2.5mH, 3mH and 4mH.Eg. x windings of 0.15mm wire on a core with 50mm diameter.Picture below shows all 3 coils with different number of windings.
Use http://hamwaves.com/antennas/inductance.html for other diameters.
Pin maps
Name | PIN Name | Connector | Description |
---|---|---|---|
GND | GND | P1 | Ground for oscillators and potentiometers |
VDD | VDD | P1 | 3V supply for oscillators and potentiometers |
PITCH_OSC | PE9 | P1 | Signal from pitch oscillator |
VOLUME_OSC | PE11 | P1 | Signal from volume oscillator |
ANALOG_1 | PA1 | P1 | Analog input from volume potentiometer |
ANALOG_2 | PA2 | P1 | Analog input from zoom volume potentiometer |
ANALOG_3 | PA3 | P1 | Analog input from shift pitch potentiometer |
ANALOG_4 | PC4 | P1 | Analog input from zoom pitch potentiometer |
ANALOG_5 | PC5 | P1 | Analog input from waveform potentiometer |
Connect an extra 100nF capacitor under each potentiometer from the potentiometer output to GND.
Auto-tune
The blue button on the STM32 discovery board starts the Auto-Tune procedure.Connect an external button to:
Name | PIN Name | Connector | Description |
---|---|---|---|
VDD | VDD | P1 | 3V supply auto-tune button |
Auto-tune | PA0 | P1 | Signal from auto-tune button |
Pitch LED display
Optional display to show the current played note one a piano like display.
Connect 3mm LEDs with a series resistor of 100R to these PINs and connect allcathodes of to GND:
Name | PIN Name | Connector | Description |
---|---|---|---|
PITCH LED 0 | PE12 | P1 | Note c |
PITCH LED 1 | PE14 | P1 | Note cis |
PITCH LED 2 | PE15 | P1 | Note d |
PITCH LED 3 | PB11 | P1 | Note dis |
PITCH LED 4 | PB12 | P1 | Note e |
PITCH LED 5 | PB13 | P1 | Note f |
PITCH LED 6 | PB14 | P1 | Note fis |
PITCH LED 7 | PB15 | P1 | Note g |
PITCH LED 8 | PD8 | P1 | Note gis |
PITCH LED 9 | PD9 | P1 | Note a |
PITCH LED 10 | PD10 | P1 | Note b |
PITCH LED 11 | PD11 | P1 | Note h |
Power supply
The STM32 discovery board must be supplied by 5V (100mA). It is importand that the GND is connected to earth (PE). If a normal wall adapter is used, there must be an extra connection to earth (PE).
The best power supply would be a linear one like this: https://github.com/gerdb/tinnitus32/wiki/Power-supply
Programming software for STM32
You find the binary file in the 'Binary' folder. Download the tinnitus project as ZIP
Program the STM32 board with the STM32CUBEPROG tool.
Case and front panel
A wooden wine box or a bamboo box for the kitchen (both about 10$) can be used as a case for the timbremin.
The cheapest way for a professional looking front panel is to use the service of a sign manufacturer. For example:https://www.digitaldruck-fabrik.de/werbeschilder/hart-pvc-polystyrolplatte.aspx
Price of a 380x110mm front panel: 5$
You can use the template under hardware/Frontpanel, but you have to adapt the size of the front panel file to your case. Use eg. https://inkscape.org
A very cheap and easy to build Theremin for only 50$
- Only an STM32 evaluation board, 2 oscillators and some knobs and switches needed.
- Excellent audio quality: 16/24bit audio DAC with headphone amplifier
- Can load waveforms with Theremin sound directly from an USB stick
- Very fast autotune: 1sec
The STM32F407G-DISC1 evaluation board can be used.So you need only 2 additional oscillators and some potentiometers and switches.
Schematic
(Values of pitch oscillator)
Stm32 Evaluation Board
Layout
The oscillators can be built up on a breadboard:
Bill of material
Component | Pitch | Volume | Price |
---|---|---|---|
C1 | 150pF | 180pF | 0.05$ |
C2 | 150pF | 180pF | 0.05$ |
C3 | 330pF | 390pF | 0.05$ |
C4 | 1µF | 1µF | 0.05$ |
R1 | 2M2 | 2M2 | 0.05$ |
R2 | 1k | 1k | 0.05$ |
R3 | 10R | 10R | 0.05$ |
IC1 | CD4069UBE | CD4069UBE | 0.48$ |
Suppliers:m: www.mouser.comf: www.farnell.com / www.newark.comd: www.digikey.com
L1 should be an air-coil with 1mH. Eg. 200 windings of 0.15mm wire on a core with 40mm diameter.
Use http://hamwaves.com/antennas/inductance.html for other diameters.
Pin maps
Name | PIN Name | Connector | Description |
---|---|---|---|
GND | GND | P1 | Ground for oscillators and potentiometers |
VDD | VDD | P1 | 3V supply for oscillators and potentiometers |
PITCH_OSC | PE9 | P1 | Signal from pitch oscillator |
VOLUME_OSC | PE11 | P1 | Signal from volume oscillator |
ANALOG_1 | PA1 | P1 | Analog input from volume potentiometer |
ANALOG_2 | PA2 | P1 | Analog input from zoom volume potentiometer |
ANALOG_3 | PA3 | P1 | Analog input from shift pitch potentiometer |
ANALOG_4 | PC4 | P1 | Analog input from zoom pitch potentiometer |
ANALOG_5 | PC5 | P1 | Analog input from waveform potentiometer |
Connect an extra 100nF capacitor under each potentiometer from the potentiometer output to GND.
Stm32 Auto Tune Board Game
Auto-tune
The blue button on the STM32 discovery board starts the Auto-Tune procedure.
You can also use an additional button and connect it to:
Name | PIN Name | Connector | Description |
---|---|---|---|
VDD | VDD | P1 | 3V supply auto-tune button |
Auto-tune | PA0 | P1 | Signal from auto-tune button |
Stm32 Dev Board
Pitch LED display
Optional display to show the current played note one a piano like display.
Connect 3mm LEDs with a series resistor of 100R to these PINs and connect allcathodes of to GND:
Name | PIN Name | Connector | Description |
---|---|---|---|
PITCH LED 0 | PE12 | P1 | Note c |
PITCH LED 1 | PE14 | P1 | Note cis |
PITCH LED 2 | PE15 | P1 | Note d |
PITCH LED 3 | PB11 | P1 | Note dis |
PITCH LED 4 | PB12 | P1 | Note e |
PITCH LED 5 | PB13 | P1 | Note f |
PITCH LED 6 | PB14 | P1 | Note fis |
PITCH LED 7 | PB15 | P1 | Note g |
PITCH LED 8 | PD8 | P1 | Note gis |
PITCH LED 9 | PD9 | P1 | Note a |
PITCH LED 10 | PD10 | P1 | Note b |
PITCH LED 11 | PD11 | P1 | Note h |
Power supply
The STM32 discovery board must be supplied by 5V (100mA). It is importand that the GND is connected to earth (PE). If a normal wall adapter is used, there must be an extra connection to earth (PE).
The best power supply would be a linear one like this: https://github.com/gerdb/tinnitus32/wiki/Power-supply
USB-stick with sound file
Antares Auto-tune
It's possible to store a *.WAV or a *.C file on an USB-stick and use it as sound source for the theremin.
WAV file
The file name must be WAV1.WAV and it must contain 1 periode of a sound sample. File format must be WAV (Microsoft) and the data format signed 16 bit PCM with only one mono track. Use Audacity to export it. https://www.audacityteam.org/
C file
The file name must be WAV1.C and it must contain 1 periode of a sound sample. File format must be the same as the Audio Wavetables from the Open.Theremin V3 project. http://www.gaudi.ch/OpenTheremin/index.php/download/audio-wavetables
Programming software for STM32
You find the binary file in the 'Binary' folder. Download the tinnitus project as ZIP
Program the STM32 board with the STM32CUBEPROG tool.
Case and front panel
As case a wooden wine box could be used.
The cheapest way for a professional looking front panel would be to use the service of a sign manufacturer. For example:https://www.digitaldruck-fabrik.de/werbeschilder/hart-pvc-polystyrolplatte.aspx
Price of a 380x110mm front panel is about 4€ or 5$
Autotune Online
You can use the template under hardware/Frontpanel, but you have to adapt the size of the front panel file to your wine box. Use eg. https://inkscape.org