YAM - alternative Ambika firmware

@Bjarne the hex files worked perfectly. Maybe my browser is messing up the files when I download them from GitHub or something.

@matrix12x That’s probably it. Glad to hear you got it sorted

Hi, Is it possible to add voice panning option?

No, that requires hardware modifications

What kind of hardware modifications would the Ambika need so it could have more memory for more features?

@eutopiatetheory The most feasible would be to simply upgrade to atmega1284 for double flash memory and some more ram but unfortunately there are reported hardware issues with that particular cpu in dip package which affect stability. The only other alternative I see is a complete re-engineering of the entire software and hardware (at least voice cards) based on ARM processors. However, this means you might as well build a new synth from scratch, which I think few DIY’ers are capable of (at least in reasonable time).

edit1: see this thread: Why not...?
edit2: see this thread: Ambika mod to be more like PPG?
edit3: see this thread: ATMega 1284P
edit4: and of course: YAM - alternative Shruthi-1 firmware

I was looking at the ATmega1284P, now I know why that doesn’t work.

The latest source code and build is best found at GitHub: https://github.com/bjoeri/ambika/tree/master/yam_firmware_builds

Note that the build files must be downloaded as binary, and read the readme!


Thanks man, I figured it out, had to make 6 copies of the voice.bin file, thats what was bothering me as there was only one voice.bin file. Updated the firmware and its working like a charm.


Glad to hear it!

@Bjarne are there any videos/files of how new firmware sounds?

I’ve been very lazy demonstrating the YAM features but there are some examples over at the YAM for Shruthi thread: https://forum.mutable-instruments.net/t/yam-alternative-shruthi-1-firmware

Note that I’ve prioritized backwards compatibility so there’s no big risk in trying it out.


You the man :slight_smile: I love the Ambika and the Shruthi. If you put open tickets in Github, I’ll help you do them. (even if its things like documentation, linking soundcloud files etc.)

1 Like

Are the .HEX files available for the Controller and Voice cards? i unzipped the attachment from Bjarne on May 22nd and it only seemed to contain the .bin files.


I don’t have the hex files at hand, but it is very easy to upgrade the firmware from SD card (using the YAM bin files), so you can start by flashing the original firmware (using the original hex files).

I’m just in the process of assembling an Ambika for which I’ve had the parts for some time and was hoping to flash the AVRs as I built it. I’m still awaiting the 4050 to get the card interface working.

Thanks for responding anyway.

Flash them using the originals found here: https://mutable-instruments.net/archive/ambika/build/firmware/
Then update to YAM from SD card later.

How hard would it be to expand the spread function to cover several parameters?

I got an Oberheim two voice, and one of the keys to its thick sound, is that the parameters on its voices are always a slightly bit off. It could be fun to try, to initialize all voices a bit off each other on filter, ADSR’s and pitch.

Well, it is a cool idea, but since the spread is managed on the controller and only the accumulated pitch is transferred to the voice cards, it is not a small hack:


On the same note, you can use the RND modulation source and modulate various parameters (cutoff, attack etc) a little in the modulation matrix. It’s not as quick as the proposed macro modulation you suggested, but it allows for more control. I use it a lot on patches.