All Projects → keshikan → CureSynth_Whip

keshikan / CureSynth_Whip

Licence: GPL-3.0 license
Polyphonic MIDI Synthesizer for STM32F7

Programming Languages

c
50402 projects - #5 most used programming language
C++
36643 projects - #6 most used programming language
assembly
5116 projects

Projects that are alternatives of or similar to CureSynth Whip

esp32 basic synth
ESP32 based simple synthesizer project
Stars: ✭ 134 (+197.78%)
Mutual labels:  midi, synthesizer
Shaden
🎧 A modular audio synthesizer.
Stars: ✭ 175 (+288.89%)
Mutual labels:  midi, synthesizer
Miti
miti is a musical instrument textual interface. Basically, its MIDI, but with human-readable text. 🎵
Stars: ✭ 103 (+128.89%)
Mutual labels:  midi, synthesizer
Fluidsynth
Software synthesizer based on the SoundFont 2 specifications
Stars: ✭ 811 (+1702.22%)
Mutual labels:  midi, synthesizer
guitar
🎸 Online guitar toy and tablature recorder/player
Stars: ✭ 80 (+77.78%)
Mutual labels:  midi, synthesizer
Audiobench
Open source modular synthesizer
Stars: ✭ 63 (+40%)
Mutual labels:  midi, synthesizer
Fsynth
Web-based and pixels-based collaborative synthesizer
Stars: ✭ 146 (+224.44%)
Mutual labels:  midi, synthesizer
arduino-midi-sound-module
Turn your Arduino Uno into a 16-voice MIDI sound synthesizer
Stars: ✭ 43 (-4.44%)
Mutual labels:  midi, synthesizer
Mt32 Pi
🎹🎶 A baremetal kernel that turns your Raspberry Pi 3 or later into a Roland MT-32 emulator and SoundFont synthesizer based on Circle, Munt, and FluidSynth.
Stars: ✭ 231 (+413.33%)
Mutual labels:  midi, synthesizer
Unimidi
Realtime MIDI IO for Ruby
Stars: ✭ 229 (+408.89%)
Mutual labels:  midi, synthesizer
Webaudiofont
Use full GM set of musical instruments to play MIDI and single sounds or effects. Support for reverberation and equaliser. No plugins, no Flash. Pure HTML5 implementation compatible with desktop and mobile browser. See live examples.
Stars: ✭ 600 (+1233.33%)
Mutual labels:  midi, synthesizer
STM32 TimerInterrupt
This library enables you to use Interrupt from Hardware Timers on an STM32F/L/H/G/WB/MP1-based board. These STM32F/L/H/G/WB/MP1 Hardware Timers, using Interrupt, still work even if other functions are blocking. Moreover, they are much more precise (certainly depending on clock frequency accuracy) than other software timers using millis() or micr…
Stars: ✭ 27 (-40%)
Mutual labels:  stm32, stm32f7
Romplayer
AudioKit Sample Player (ROM Player) - EXS24, Sound Font, Wave Player
Stars: ✭ 445 (+888.89%)
Mutual labels:  midi, synthesizer
Audiokitsynthone
AudioKit Synth One: Open-Source iOS Synthesizer App
Stars: ✭ 1,258 (+2695.56%)
Mutual labels:  midi, synthesizer
Awesome Music Production
A curated list of software, services and resources to create and distribute music.
Stars: ✭ 340 (+655.56%)
Mutual labels:  midi, synthesizer
Lick
LiCK, Library for ChucK
Stars: ✭ 118 (+162.22%)
Mutual labels:  midi, synthesizer
MicroDexed
Dexed port for Teensy (3.5/3.6 with audio shield)
Stars: ✭ 20 (-55.56%)
Mutual labels:  midi, synthesizer
kiro-synth
Modular sound synthesizer written in Rust
Stars: ✭ 62 (+37.78%)
Mutual labels:  midi, synthesizer
Omnimidi
A software MIDI synthesizer for professional use.
Stars: ✭ 181 (+302.22%)
Mutual labels:  midi, synthesizer
Adlplug
FM Chip Synthesizer — OPL & OPN — VST/LV2/Standalone
Stars: ✭ 249 (+453.33%)
Mutual labels:  midi, synthesizer

MIDI Synthesizer for STM32F7 "CureSynth Whip"

Overview

This repository shows STM32F7 (ARM Cortex-M7) based polyphonic MIDI synthesizer "CureSynth Whip", which is GM1(General MIDI Level 1) nearly compatible. It can generate sound about 128 Instruments and 1 Drum set. Delay, LPF/HPF, Distortion effects are available for each part.

STM32F7を使用した、16パートのマルチティンバーMIDI音源「CureSynth Whip」です。シンセサイザー部はGM1規格に(ほぼ)対応しており、メロディ128音色、ドラムセット1種のパッチリストを搭載しています。各パートに対し、ディレイ・LPF/HPF・ディストーションを掛けることができます。

Sample Image

Specifications

Hardware spec

  • MCU: STM32F765VIT6 / ARM Cortex-M7 (STMicroelectronics)
  • DAC: PCM5102A (Texas Instruments)
  • Display: 128*64 SH1106 OLED Module (No brand, bought from AliExpress)

Synthesizer spec

  • Sound generation: One oscillator(sin, saw, square, triangle, noise) + one ring-modulator
  • Max polyphony: 36
  • Number of channels: 16 (one MIDI-IN)
  • Output: 16bit, 32kHz
  • Effects: Delay, LPF/HPF, Distortion, Sweep(Up, Down)
  • Format: General MIDI 1, Original format

Building Information

Making hardware

See Schematic.

Building software

Install SW4STM32(need registration), import Project files, and build.
In addition, use this binary file for STM32F765.

Notice: Use gcc optimization flag "-O3".

File Location

Memos for Development (written in Japanese)

References

MIDI specification

Synthesizer programming

Digital filter programming

SIMD of STM32

Hardware

Author

(c) 2017 Keshikan ( Website, Twitter )

License

Source codes and schematic are licensed under GPLv3 unless otherwise specified.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].