Announcement

Collapse
No announcement yet.

Raspberry Pi Based Organ-top Synthesizer

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Raspberry Pi Based Organ-top Synthesizer

    I wasn't sure which forum to post this into, since it's an organ build (sort of), but the sound generation is entirely in software (thus virtual), and it was designed specifically to replace the top panel of my 1962 Hammond M-111, adding a third keyboard and a lot of additional voices. I decided that the Virtual Organs forum was the best fit. So without further much ado about nothing ...

    This is my Raspberry Pi 3 based organ-top synthesizer. The keyboard is from a Yamaha CN-70 combo-ish organ I picked up cheap ($0). The enclosure is hand made to replace the top panel of the organ.

    Click image for larger version

Name:	pi-synth1.jpg
Views:	1
Size:	83.5 KB
ID:	613555

    Unlike my previous organ-top synthesizer, the keyboard is a good 5cm (2") lower, and a full 61 keys to boot.

    Click image for larger version

Name:	pi-synth1a.jpg
Views:	1
Size:	54.2 KB
ID:	613556

    The 2-line x 40-character LCD shows the currently selected voices. At the moment, the buttons to the left of the screen are for the numbers 0 to 9, and the ones to the right are to select which part of the keyboard to change the voice of, transpose, etc. (not all the buttons do anything yet). I plan to label the keys, once I've settled on the user interface I want.

    Click image for larger version

Name:	pi-synth2.jpg
Views:	1
Size:	93.6 KB
ID:	613557

    Everything is done by a single Raspberry Pi 3 computer, which scans the keyboard matrix (the two bundles of coloured wires), the pushbuttons (upper left ribbon cable), controls the display (lower left ribbon cable), and of course generates all the voices. It is capable of 128-note polyphony.

    Click image for larger version

Name:	pi-synth3.jpg
Views:	1
Size:	106.7 KB
ID:	613558

    Click image for larger version

Name:	pi-synth3a.jpg
Views:	1
Size:	99.9 KB
ID:	613559

    There have been a few sample-based Pi synths out there, but I decided to go with purely synthesized voices. The software is custom written by me, and is controlled by a voice configuration file. Voices are designed by specifying traditional synthesizer parameters (e.g. wave form, ADSR envelope, filters), in combination with other techniques (e.g. list of harmonics, Hammond drawbar registrations). Each voice can consist of up to four layers, each with its own parameters, so it's possible to construct some fairly decent simulations of real instruments.

    The software is still a work in progress, so that capabilities will change and grow over time. I leave the synth on even when the organ is off (it consumes about 4W) so that I can access the Pi to work on the software.

    One issue I'm trying to figure out is related to the Hammond's start motor. When I start up the Hammond, at the point that I release the start motor switch, the synth display goes haywire, filling with garbage characters. The Pi itself is still fine, and reinitializing the display allows everything to continue, but it's annoying. Turning off the start motor seems to produce some sort of very localized EMP that confuses the display.
    Stefan Vorkoetter: http://www.stefanv.com

    1962 Hammond M-111 with Improved Vibrato, Internal Rotary Speaker, Drum Machine,
    Window Seat Tone Cabinets, Completely Rebuilt Amplifier, and Recapped Tone Generator.
    1978 PAiA 1550 Stringz'n'Thingz with many enhancements.
    2017 Raspberry Pi organ-top synthesizer.

    #2
    It'd be neat if you could demo with some audio files for us to hear.
    Viscount C400 3-manual
    8 channels + 2 reverb channels (w/ Lexicon MX200)
    Klipsch RSX-3 speakers and Klipsch Ultra 5.1 subwoofers

    Comment


      #3
      Originally posted by rjsilva View Post
      It'd be neat if you could demo with some audio files for us to hear.
      Will do so as soon as I have a chance to make some recordings.
      Stefan Vorkoetter: http://www.stefanv.com

      1962 Hammond M-111 with Improved Vibrato, Internal Rotary Speaker, Drum Machine,
      Window Seat Tone Cabinets, Completely Rebuilt Amplifier, and Recapped Tone Generator.
      1978 PAiA 1550 Stringz'n'Thingz with many enhancements.
      2017 Raspberry Pi organ-top synthesizer.

      Comment


        #4
        Originally posted by stefanv View Post
        I wasn't sure which forum to post this into, since it's an organ build (sort of), but the sound generation is entirely in software (thus virtual), and it was designed specifically to replace the top panel of my 1962 Hammond M-111, adding a third keyboard and a lot of additional voices. I decided that the Virtual Organs forum was the best fit. So without further much ado about nothing ...

        This is my Raspberry Pi 3 based organ-top synthesizer. The keyboard is from a Yamaha CN-70 combo-ish organ I picked up cheap ($0). The enclosure is hand made to replace the top panel of the organ.

        [ATTACH=CONFIG]27144[/ATTACH]

        Unlike my previous organ-top synthesizer, the keyboard is a good 5cm (2") lower, and a full 61 keys to boot.

        [ATTACH=CONFIG]27145[/ATTACH]

        The 2-line x 40-character LCD shows the currently selected voices. At the moment, the buttons to the left of the screen are for the numbers 0 to 9, and the ones to the right are to select which part of the keyboard to change the voice of, transpose, etc. (not all the buttons do anything yet). I plan to label the keys, once I've settled on the user interface I want.

        [ATTACH=CONFIG]27146[/ATTACH]

        Everything is done by a single Raspberry Pi 3 computer, which scans the keyboard matrix (the two bundles of coloured wires), the pushbuttons (upper left ribbon cable), controls the display (lower left ribbon cable), and of course generates all the voices. It is capable of 128-note polyphony.

        [ATTACH=CONFIG]27147[/ATTACH]

        [ATTACH=CONFIG]27148[/ATTACH]

        There have been a few sample-based Pi synths out there, but I decided to go with purely synthesized voices. The software is custom written by me, and is controlled by a voice configuration file. Voices are designed by specifying traditional synthesizer parameters (e.g. wave form, ADSR envelope, filters), in combination with other techniques (e.g. list of harmonics, Hammond drawbar registrations). Each voice can consist of up to four layers, each with its own parameters, so it's possible to construct some fairly decent simulations of real instruments.

        The software is still a work in progress, so that capabilities will change and grow over time. I leave the synth on even when the organ is off (it consumes about 4W) so that I can access the Pi to work on the software.

        One issue I'm trying to figure out is related to the Hammond's start motor. When I start up the Hammond, at the point that I release the start motor switch, the synth display goes haywire, filling with garbage characters. The Pi itself is still fine, and reinitializing the display allows everything to continue, but it's annoying. Turning off the start motor seems to produce some sort of very localized EMP that confuses the display.
        I programed with arduino and find it better than raspberry pi, the pi has a OS software that comes with rather than be blank like arduino and makes for a better micro controller, but i suspect that their is something overloading, the EMP could be reduced by adding a diode to squelch any sparks that are radiating from the start buttons. but it looks like you have unwanted voltage spikes in the circuit, or build a metal casing around your start and run switch and ground it and the problem could be alleviated that way i would like to see some schematics if you have any to further diagnose the problem.
        Instruments:
        22/8 Button accordion.

        Comment


          #5
          Originally posted by Ben Madison View Post
          I programed with arduino and find it better than raspberry pi ...
          Except that the Arduino has nowhere near the computing horsepower of the Pi. It would not be able to do all that my Pi is doing. The lack of memory would also be an issue, since each voice consumes about 50k of memory (single-cycle wave samples are built for each note of each voice at startup time). The Pi's OS also makes it easy to work on the software. I can just log directly into it and work in-place.

          I don't think a diode is going to work on the start switches, since they're switching AC. The diode would be a direct short circuit for half of every cycle.
          Stefan Vorkoetter: http://www.stefanv.com

          1962 Hammond M-111 with Improved Vibrato, Internal Rotary Speaker, Drum Machine,
          Window Seat Tone Cabinets, Completely Rebuilt Amplifier, and Recapped Tone Generator.
          1978 PAiA 1550 Stringz'n'Thingz with many enhancements.
          2017 Raspberry Pi organ-top synthesizer.

          Comment

          Working...
          X