Hacker News new | past | comments | ask | show | jobs | submit login
Dexed FM synthesizer similar to DX7 running on bare metal Raspberry Pi (github.com/probonopd)
176 points by rcarmo on April 17, 2022 | hide | past | favorite | 33 comments



Pretty cool. Seems like this project was built on the Microdexed [1] code, which is a port of Dexed to run on a teensy. It uses circle [2] as a bare-metal basis on the pi, which was also used by mt-32pi [3] to run a sample-based synth that can emulate the roland mt-32.

[1] https://codeberg.org/dcoredump/MicroDexed [2] https://github.com/rsta2/circle [3] https://github.com/dwhinham/mt32-pi


There's also https://codeberg.org/positionhigh/MicroDexed-touch, which is evolving to have a touch-based UI atop a Teensy board. Pretty impressive.


Wow, that does look pretty feature-rich. Also seems like there might be some M8 or LSDJ influence. Cool project!


totaly true, also ideas from QY70 and other trackers. We have a struggle with the SPI Flash and free memory in general on the teensy. Apart from the dynamic custom samples and cosmetics in the UI,i think it is already usable.


As a sidenote, I looked at Circle and wondered a bit where the line is drawn between "bare metal" and "mini OS" :) After all it's a big package with drivers and filesystems and stuff.. I guess at some point you could just run normal Linux and disable preemption and you're at the same level.


Yeah Circle itself starts to verge into "unikernel" like MirageOS.


Nice! I've just recently started targeting the 64-bit Pi as a plugin platform, and have ported my entire library to it. So that's nearly 300 plugins also for the Pi, but no synths, just audio processors. And I use Dexed to make sounds, so this is right in my wheelhouse. Even have spare Pi 3s kicking around :)

I'm still trying to get Renoise up and running on the new Pi (400), but have already demoed a full Reaper mix with various plugins running that was made on an iMac Pro with no consideration as to CPU load, running just fine on the Pi too. All the sounds were 96k and on the Pi the project was resampled on the fly to 48k, but it played!

Add the right synths (such as Dexed: I like running it at 24 bit as a sound design machine, not just a DX7 imitation) and samples and the Pi is starting to turn into a full-on music workstation. Thrilling!

I would add that running Dexed on a bare metal Pi, means that you don't have to reinvent sound design and can use patches made elsewhere… but then, play them on the discrete unit, through whatever DAC, and then DISTORT them in analog in whatever circuit you devise, or a stompbox. Or simply run it into a ADC, some basic thing, that's not meant to take those high levels: I have a Razer thing that's easy to distort by running into its little mic input.

Overdriving FM with analog distortion gives you intense sounds that you'd struggle to match, purely in the box :) and being able to run a Dexed on a spare Pi makes all this very easy, doesn't it?


Example of famous dx7 songs - https://www.youtube.com/watch?v=BCwn26FePAo


When I was young I hated those bands that uses synthesizers and preferred the guitars and drums. Now that I am older and got into electronics and programming I now am amazed on what they can do and even started collecting some of them.



This warms my heart to see. I was looking at various hardware (teensy and so on) at the time I originally started the project, but never had the time and energy to wrangle actually putting it together.


Nice

I've been building little raspi synths for awhile but they all sit inside Linux because bypassing the os is outside of my dev comfort zone.

But it's obviously the way to go. The dx7 is pretty well tread space, I'd love to see some great granular synths on rpi like the GR-1


I tried hooking up a midi keyboard to our pi with a floss software synth installed called timidity, but the latency was terrible, no matter what I did. Turned down buffering, installed jack. Happen to know how to get past that?


Pipewire a route to check? I'm afraid I do all my production in Logic Studio and only dabbled in linux audio (probably one of suckiest things about Linux, or was, it's been getting much better over the years)

Edit: spider senses tingling yes, this will help, if you can get it on your distro (most modern seem capable, with various levels of tinkering - hey it wouldn't be linux audio without some deperation/fun!) https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/FAQ...


I don't know timidity but I didn't have that issue with the options I tried.


This is pretty sweet because you could then also use Juce to write other kinds of synth engines and then also have a similar process to Dex (which also uses Juce) to turn your vst/au plugin into a hardware synth.


But there's also a project from Juce that enables the same thing but just dropping in your vst plugin but it requires a particular dac hat which I got but I had been too busy to try it out.


I'm amazed that anyone can come up with new projects on the pi right now. I guess some people have a backstock of unused ones.

They're so hard to find around here that they're being scaled at $200/pop for the 4s.


With https://twitter.com/rpilocator I've bought 5 4's at retail price over the last month. They are by no means easy to get - but with a little effort they are possible to get. (Unless you need an 8gb one, those seem super rare.)


I found one in England from PiHut and had it shipped here a few months ago. But it was DOA. Their return process is that I have to ship it back and they might refund me for that.

I just ate it. So if anyone wants a Pi 4 w/ 2GB of bad SDRAM lemme know. I may just see if I can reflow the chip to fix. But I’m pretty terrible with hot air + smd, so I’m hesitant.

I really wanted the 4GB model to run monitoring software for my home network, etc. anyway. So I got a RockPro64 and I love that thing.

When I looked you could still get a 3 easily, which would be fine for this. It runs on a teensy too apparently, so it doesn’t seem the 4 helps in any way. Given it runs on a 2 means it’s just 32bit. You can probably still find a 3 easily.


Any chance to see it run on different ARM boards other than the RPi? I ask because the RPi audio output is notoriously bad, to the point it requires an external DAC for any decent audio use, while there are many other cheap ARM boards out there with perfectly good internal DACs, and sometimes also very good ADCs.


You’d need to port it. But Dexed already runs on a lot of things, including the Teensy (see links elsewhere in the comments).


Usually I have hard to solve ground loop noise issues with my Raspberry Pi based synths when used in combinaton with other synths. So while this is for sure a nice project, with all due respect and kudos, for those really only interested in the DX7 sound, it is probably better to look into the new Volka FM 2.


Looks great, hope they get parameter assignment via MIDI controls working, got a load of pi's sat here doing nothing and midi controller galore but kinda limited if you can't change params on the fly with the controller.


Recent demo upload on uputube: https://youtube.com/watch?v=Z3t94ceMHJo


Yes, that is where I saw it.


It's annoying how you have to use the HDMI for audio. I wish the rpi had a DAC.


The upside is, you have lots of DAC's that fill that whole market and with that, better choice.

Now you can always use an external USB DAC, I personally use a Behringer UMC202HD, though the UMC204HD maybe a better model if you want to hook in external MIDI devices into the mix.


You can use a DAC, according to the docs, there are loads supported as the other commenter suggests. I've got one of these https://www.hifiberry.com/dacs/


I use a $25 Dayton USB audio DAC and it works fine.


The YouTube video of this project makes it all clear: https://www.youtube.com/watch?v=Z3t94ceMHJo


Oooo. Now to see about hooking up my Alesis to this....


Anyone know roughly how much the BOM costs for this?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: