Aetherharp-2

by alexpikkert in Circuits > Audio

2144 Views, 15 Favorites, 0 Comments

Aetherharp-2

aetherharp-2
Aetherharp-2 (48).jpg
Aetherharp-2 (50).jpg
Aetherharp-2 (56).jpg

This project is inspired by the original Aetherharp instrument published on Instructables by XenonJohn in November 2021.

I had a Theremin-based synthesizer instrument on my wishlist for many many years, but when I saw this Aetherharp I decided to build this instrument instead. The hardware is not very complicated and tinkering with the software is a very nice challenge to get the sounds you really want.

My Aetherharp-2 build uses the same Teensy 3.5 microcontroller and eight SHARP infra-red sensors laid out in a row to provide rows of 8 notes at 3 different height levels giving a total of 24 notes playable by hovering your hand in the position of the note you wish to play. This board is very fast (even much faster than an Arduino board) and can send MIDI signals to an attached laptop via USB. This PC uses software to convert these signals into sound. I based my design on the free software sound program VMPK (Virtual Midi Piano Keyboard), combined with VirtualMIDISynth from CoolSoft (also a free progam)..

MIDI means Musical Instrument Digital Interface: a standard means of sending digitally encoded information about music between electronic devices, as between synthesizers and computers.

Conveniently the laptop supplies enough power via the same USB cable to power all components. This makes the wiring quite straightforward as no battery power supply is required.

I made the following changes and additions compared with the original Aetherharp design:

A 16x2 LCD display to show instrument names and sustain & vibrato status

A switch to toggle between play and instrument selection

Two pushbuttons to scroll up/down the list of instruments

ON/OFF switches for vibrato and sustain

Sensors powered by 5 VDC instead of 3.3 VDC

Clear acrylic cover directly above the sensors

Powersupply design with centralized connections and capacitor to avoid noises on the powerline

Pitchbend with two Light Dependant Resistors (LDR) on the front

Supplies

see attached PDF for the components and the materials used to build the enclosure.

The Enclosure

Aetherharp-2 (19).jpg
Aetherharp-2 (30).jpg
Aetherharp-2 (40).jpg
Aetherharp-2 (41).jpg
Aetherharp-2 (42).jpg
Aetherharp-2 (45).jpg

The enclosure is made from pinewood and glued together without using screws. See the attached construction drawing for the details and the supplies list for the exact dimensions. The top cover is made from a white plastic L-profile with a clear acrylic cover for the sensor part. The control unit has a hardboard cover. The outside of this enclosure is finished with a nice clear coating.

The Teensy 3.5 Microcontroller and the Sensors

Aetherharp-2 (4).jpg
Aetherharp-2 (8).jpg
Aetherharp-2 (24).jpg
Aetherharp-2 (22).jpg

The Teensy 3.5 microcontroller is very small and cannot be bolted in an enclosure. I used a small hardboard frame with four holes and used double sided tape for the Teensy. I soldered two rows of female headers on the Teensy and attached male connection pins for the wiring. The Sharp sensors are placed inside the enclosure with a spacing distance of 110 mm. I used additional 28 mm. plastic spacers and 40 mm. M3 bolts to mount the sensors just under the acrylic cover. This cover reflected and blocked the IR signals when the sensors were mounted on the pinewood bottom of the enclosure.

The Power Supply for the Sensors

Aetherharp-2 (46).jpg
Aetherharp-2 (17).jpg

To avoid power supply disturbances and noises through the wiring the sensors are not powered in series but are each connected to a centralized connection board with a capacitor and GND and +5 VDC connections, mounted close to the Teensy. With this setup power fluctuations will be minimized for the sensors. The 3K3 resistors are included for possible future addtions with LEDs, the 4K7 resistors are for the I2C connections of the control display.

The Control Unit

Aetherharp-2 (31).jpg
Aetherharp-2 (16).jpg
Aetherharp-2 (6).jpg
Aetherharp-2 (33).jpg
Aetherharp-2 (34).jpg
Aetherharp-2 (37).jpg
Aetherharp-2 (32).jpg
Aetherharp-2 (36).jpg
Aetherharp-2 (53).jpg
Aetherharp-2 (54).jpg
Aetherharp-2 (55).jpg
Aetherharp-2 (57).jpg

The control unit consists of an LCD display with I2C connections, 3 toggle switches (vibrato, sustain and play/select), two pushbuttons to scroll through the instrument list and for the pitchbend I used two Light Dependant Resistors, these are are mounted on a small circuit board strip with 5 mm. plastic spaces together with a few resistors. To prevent a short-circuit between GND and +5 VDC when both LDR's have a low resistance 4K7 resistors are placed in series, both 12K resistors take care of a correct range setting for the pitchbend. (try-and-error designed).

The Software

Aetherharp-2 (58).jpg
Aetherharp-2 (47).jpg

This project does assume some familiarity with Arduino microcontroller projects.

The Teensy can be programmed with the Arduino IDE (Integrated Development Environment) using the TeensyDuino addition. Here is the Arduino code that needs to be uploaded to the Teensy board. When you upload it you need to select "Serial + MIDI" in the options it gives you when setting up the connection between the laptop/PC and the Teensy.

The program uses three Arduino libraries, needed for the Sharp IR sensors, the runningmedian calculations and the I2C Liquid Cristal Display. The original libraries embedded into the Arduino IDE work very well with the teeensy 3.5 board. They must be uploaded to your computer using tools/manage libraries and install. Search for SharpIR, runningmedian and Liquidcristal_I2c. There are many other libraries on the internet with the same names, but some will not work with the Teensy 3.5.

For the LCD display, the sustain and vibrato switches and the instrument selection four subroutines are included, checksustain(), checkvibrato(), select() and checkinstrument().

I integrated only a few (interesting) instruments in the Teensy sketch, but it is easy to add all 127 instruments.

The PC uses software to convert these signals into sound. I based my design on the free software sound program VMPK (Virtual Midi Piano Keyboard), combined with VirtualMIDISynth from CoolSoft (also a free progam).

The Wiring

Aetherharp-2 (18).jpg
Aetherharp-2 (35).jpg
Aetherharp-2 (15).jpg
Aetherharp-2 (11).jpg
Aetherharp-2 (12).jpg
Aetherharp-2 (14).jpg
Aetherharp-2 (27).jpg
Aetherharp-2 (9).jpg
Aetherharp-2 (38).jpg
Aetherharp-2 (44).jpg
Aetherharp-2 (28).jpg
Aetherharp-2 (7).jpg
Aetherharp-2 (5).jpg

The control unit is connected with colored ribbon wiring. The sensor wiring is neatly hidden inside a white cable tray. The Teensy is connected inside the enclosure with a 100 mm. USB cable to a pass-through connector mounted in the side of the enclosure. To avoid short-circuit on the Teensy connectors the wiring is insulated with shrink tube material. The sensors are connected to 8 analog input pins of the Teensy. The selected pins are all 5 Volt tolerant, this is a must because the sensors are powered with 5 VDC. I used two little wooden blocks 20x20 mm. to guide the wiring.

Tryout and Testing

Aetherharp-2 (20).jpg
Aetherharp-2 (43).jpg
Aetherharp 2

Before building the final design and enclosure, I made a test unit with the LCD display, buttons and the teensy 3.5. With this unit I tried out the different new subroutines, the noise filtering alternatives and the setting of the three different heights in the software. For easy visual control three leds were also included in this design.