Ondes framboise - a DIY digital Ondes Martenot emulator

From circuitbending to homebrew stompboxes & synths, keep the DIY spirit alive!

Moderators: Kent, luketeaford, Joe.

Post Reply
clarionut
Learning to Wiggle
Posts: 8
Joined: Fri Feb 05, 2021 2:17 pm

Ondes framboise - a DIY digital Ondes Martenot emulator

Post by clarionut » Fri Feb 05, 2021 2:19 pm

Those of you who, like me, dream of owning an Ondes but could never justify it in reality may be interested in my Ondes Framboise project. It's a digital emulator of an Ondes based on a Raspberry Pi 3A+ running Pure Data plus some custom hardware and software, which attempts to provide all the features of a genuine Ondes Martenot:

Input by keyboard (including sideways motion for vibrato) or by ribbon, with a total range of 8 octaves (4 octaves plus shift of ±1 or 2 octaves)

Volume control by Touche button or foot pedal

All of the voices (Ondes, Creux, Gambe, Nasillard, Octaviant, petit Gambe & Souffle) + Tutti switch

Transposition buttons

Emulation of all four Diffuseurs (Principal, Résonance, Métallique & Palme) in software, each on its own output channel with built-in amplifiers

Pedal controlled low-pass filter

Legato / claquement mode

Although far from perfect it's a lot better than not having an Ondes at all! I'm in the process of publishing the design at the moment. 3D printed parts and construction details are on Thingiverse (https://www.thingiverse.com/thing:4742145) and the code (Pure Data patch and custom server code) are on GitHub (https://github.com/clarionut/ondes_framboise). The current incarnation is a first prototype built solely to test function - it's far from elegant.

There are a couple of demos on YouTube - Rachmaninov 'Vocalise'

and Messaien 'Feuillets Inédits'


I hope you find it interesting!
Last edited by clarionut on Fri Feb 05, 2021 6:16 pm, edited 1 time in total.

User avatar
Flounderguts
Super Deluxe Wiggler
Posts: 1116
Joined: Thu Dec 07, 2017 5:56 pm
Location: SLC
Contact:

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by Flounderguts » Fri Feb 05, 2021 4:36 pm

Nice first post.

Owning a DIY Ondes might be cooler than owning a real one :sb:

Where did you pull the keybed from?
----------------------

Flounderguts

User avatar
SphericalSound
Wiggling with Experience
Posts: 444
Joined: Thu Feb 01, 2018 9:23 am
Location: Spain

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by SphericalSound » Fri Feb 05, 2021 4:37 pm

Johnny Greenwood will approve this.

How are you approaching the ring thing?. To me it´s the very essence of the ondes... In fact, once you have it working, reproduce the rest of the electrical analogic part should be quite easy. It´s a circuit with +90 years, so it was extremely simple, I guess.

In any case it seems a super interesting project. Go for the framboise!
Last edited by SphericalSound on Fri Feb 05, 2021 4:40 pm, edited 1 time in total.

User avatar
hox3d
Common Wiggler
Posts: 171
Joined: Fri Feb 02, 2018 6:30 am
Location: Grenoble, Alps

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by hox3d » Fri Feb 05, 2021 4:39 pm

Ondes Framboises.

Ahahah! Great name.

clarionut
Learning to Wiggle
Posts: 8
Joined: Fri Feb 05, 2021 2:17 pm

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by clarionut » Fri Feb 05, 2021 5:52 pm

I bought the keyboard sometime in the mid 80s when such things were still available for organ and synth builders. It's been used in variety of computer music projects since then. There don't seem to be any around these days, but a MIDI keyboard could be used with some modifications to the code.

The ribbon controller is based on a 10-turn potentiometer with a loop of spring tensioned monofilament as the thread. It probably wouldn't feel right to an Ondist but it works well for me. A real Ondes ribbon controller is an extraordinarily clever variable capacitor - fine for RF oscillators, but unfortunately I have very limited abilities with analogue electronics. Hence the decision to go for fully digital emulation.

clarionut
Learning to Wiggle
Posts: 8
Joined: Fri Feb 05, 2021 2:17 pm

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by clarionut » Sun Feb 07, 2021 4:42 am

A quick update - the construction notes document on Thingiverse now has block diagrams of all the custom electronics. The audio chain isn't included - it just plugs together (with a bit of soldering if you want audio output sockets).

I'm just hoping someone out there wants to try building an Ondes framboise themselves!

My next experiments will be to replace the Raspberry Pi 3A+ with a 3B+, then tweak the code to work with a MIDI keyboard (basically remove the server code that reads all of the keyboard switches and handle legato / claquement mode in Pure Data) which should be trivial, and also to use an external USB stick for MIDI files for playback and 4-channel WAV files from recording mode.

clarionut
Learning to Wiggle
Posts: 8
Joined: Fri Feb 05, 2021 2:17 pm

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by clarionut » Wed Feb 10, 2021 10:23 am

Update 10th February. I've added a circuit layout for the custom interface board to the construction notes on Thingiverse. I hope the details are right because I haven't built it yet! It's intended to work with a MIDI keyboard rather than the switch-based keyboard of the prototype. I've just acquired a Korg microkey2-61 5-octave small-key keyboard and this looks very promising; the keybed is only a very little longer than the full size 4-octave keyboard of the first prototype. It's also easy to automount a USB stick (at least on Raspbian Buster), so pretty much everything is ready for prototype 2. It will need some changes to both the Pure Data patch and the server code but these will be pretty trivial.

I just hope someone else will be tempted to have a go!

ZTX500
Common Wiggler
Posts: 56
Joined: Sun Jun 21, 2020 3:27 am

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by ZTX500 » Wed Feb 10, 2021 11:01 am

This is very interesting - and nice to see emulation of all of the voices and diffuseurs.

How did you find information for building the simulation - or is it done mainly 'by ear'? I see there have been some recent papers by Najnudel et al. about building digital emulations of the Ondes Martinot (e.g. https://ieeexplore.ieee.org/stamp/stamp ... er=9194365 ) but it looks like characterisation of the diffuseurs and voices is still a work in progress.

It sounds to me as though the tone of an Ondes Martinot goes quite far from sinusoidal (even with the sinusoidal voice) at low frequencies, producing quite a characteristic growl. This is also the behaviour of my primitive DIY theremin, which uses the same heterodyne technique for frequency generation as the Ondes. In the case of my theremin, I think it arises from the two oscillators having a small amount of parasitic influence on one another, which becomes more pronounced as they approach the same frequency (and eventually frequency-lock at very low difference frequency). I'm not sure if this has ever been measured or characterised for the Ondes Martinot - it doesn't look like this behaviour is part of Najnudel's analysis linked above.

clarionut
Learning to Wiggle
Posts: 8
Joined: Fri Feb 05, 2021 2:17 pm

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by clarionut » Wed Feb 10, 2021 2:50 pm

I found various descriptions of the Ondes voices by searching the internet though some of it is tricky to interpret. I found the Najnudel paper but unfortunately don't have access to it. My best understanding is that (approximately) Ondes = sine wave, Creux = peak-limited triangle wave, Gambe = square wave, Nasillard = pulse wave, Octaviant = full-wave rectified sine, petit gambe = square (again) and Souffle = pink noise. The last three can be mixed in at adjustable levels. I assume in the original Ondes these were generated from the original heterodyne-generated sine wave. In the framboise they're all (except Souffle) generated by wavetable synthesis. The waveforms are slightly smoothed to avoid excessively harsh harmonics, and the duty cycle of the Nasillard was adjusted by ear to give a solid but nasal sound - rather like a bassoon in some registers. I'd love to see some waveforms taken from a genuine Ondes but haven't been able to find any published.

For the diffuseurs, I used Pure Data's freeverb~ for the resonance - not perfect but a decent starting point. For the metallique and palme I found the resonators~ patch online (details are in the GitHub documents). For the Palme I use 4 chromatic octaves of resonators. It should strictly be 2 octaves, but the simulation can't excite harmonics like a real Palme. The metallique uses fewer resonators based on frequencies taken from a published analysis of a chinese gong, with some further frequencies added to make it work over a wider range of input pitch.

The frequency locking with Theremins is interesting but I don't think it applies to the Ondes. Going slightly off piste, I have a Moog Etherwave+ and in its original form it had a large null zone so it would stay silent when left alone, though this was at the expense of a restricted bass range and relatively poor tone quality at the low end. I suspect this may be a design feature. I fitted an ESPE-01 module which almost eliminates the null zone but gives a much extended and far better sounding bass. It's also no longer silent when left alone, having gone through the null zone and out the other side.

ZTX500
Common Wiggler
Posts: 56
Joined: Sun Jun 21, 2020 3:27 am

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by ZTX500 » Wed Feb 10, 2021 4:45 pm

That understanding of the voices is roughly what I have seen on the web - but I've never seen waveforms or a schematic. Like you I assumed that they were formed from waveshaping the original sine wave. The most detailed 'sketch' of the waveforms I've seen is this one https://electro-music.com/forum/phpbb-f ... 26_295.jpg with qualitative amplitudes of harmonics.

clarionut
Learning to Wiggle
Posts: 8
Joined: Fri Feb 05, 2021 2:17 pm

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by clarionut » Wed Feb 10, 2021 4:54 pm

Yep, that's one that I found back at the beginning of the project. Not quite the same as a waveform from a 'scope though...

clarionut
Learning to Wiggle
Posts: 8
Joined: Fri Feb 05, 2021 2:17 pm

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by clarionut » Tue Feb 16, 2021 9:18 am

I've now uploaded a new version of the server code for the Ondes framboise on GitHub - ondes_server_M.c. This works with a MIDI keyboard rather than the switch-matrix keyboard of the original and handles the MIDI messaging and note priorities, so the Pure Data patch is unchanged from the original. On Raspbian Stretch the MIDI keyboard appears as /dev/snd/midiC1D0 - I've yet to find out if it's in the same place on Buster, so the code may need to be changed for this.

The construction notes (see here) on Thingiverse have now been updated with a more thoroughly tested version of the interface board layout. I hope this is now complete and correct (but no guarantees!).

clarionut
Learning to Wiggle
Posts: 8
Joined: Fri Feb 05, 2021 2:17 pm

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by clarionut » Sun Feb 21, 2021 10:15 am

Final update for now. The new interface board and the server code to work with a MIDI keyboard have both been tested in the Ondes and everything works as expected. I used a Korg microKEY2-61. New mounts to attach the keyboard to the linear rails and a new vibrato stop are still needed but these are pretty trivial and my design will not work for anyone using different keyboard. The Thingiverse and GitHub pages are now fully up to date. I don't think there's much more I can add at this point, but I'm very happy to answer any questions if someone does want to have a go building an Ondes framboise for themselves.

I should have said, the MIDI keyboard version works best with a Raspberry Pi 3B+ as it needs at least 2 USB ports, 3 if you use an externally mounted USB stick to transfer MIDI and WAV files, leaving you with a spare socket for a computer keyboard. It might work with a USB hub on a 3A+ but I haven't tested this configuration.
Last edited by clarionut on Sun Feb 21, 2021 1:25 pm, edited 1 time in total.

Zifor
Common Wiggler
Posts: 106
Joined: Sat Feb 18, 2017 3:57 pm
Location: Belfast

Re: Ondes framboise - a DIY digital Ondes Martenot emulator

Post by Zifor » Sun Feb 21, 2021 10:23 am

Following this , would quite like an onde to excited to see how this progresses
Maggots Gnawing Leppers Toes

Post Reply

Return to “Music Tech DIY”