|
|
|
|
|
by vegadw
690 days ago
|
|
Cool to see you on HN! What do you see as setting your synths and hardware apart from, say, the Osmose and Hydrasynth? If you don't mind me asking, for your hardware, what's running under the hood? Big ARM cores / SOC? RTOS on a Cortex-M? What challenges have you faced working on whichever you're less used to? (The VST if you have more hardware background, the hardware if you have more desktop software background) |
|
The synth engine in the Anyma Phi runs on a STM32F4. The UI and MIDI routing runs on a separate STM32F4. No RTOS, we find it much easier to reason with cooperative multitasking, and easier to debug. So far, we don't have any latency/jitter issue with this approach, although it required writing some things (e.g. graphics) in a specific way. The Omega runs on a mix of Cortex-A7 and STM32.
I have a pure software background but I came to appreciate the stability, predictability and simplicity of embedded development: you have a single runtime environment to master and you can use it fully, a Makefile is enough, and you have to be so careful with third-party code that you generally know how everything works from end to end. The really annoying downside is the total amount of hair lost chasing bugs where it's hard to know whether the hardware or the software is at fault. In contrast, programming a cross-platform GUI is sometimes hell, and a VST has to deal with much more different configurations than a hardware synth, you're never sure of the assumptions you can make. The first version of Anyma V crashed for many people but we never had the case on the dozen machines we tested it on.