Setup for Idea #2 – Part Two

This blog entry continues with setup considerations concerning the idea #2 “Extended Guitar Performance”.

Custom-made setup

The other way to make things work is to come up with a custom-built setup.

A rough sketch of the signal chain of the system could be as follows:

Own compilation. First draft of signal chain

As can be seen in the picture, there are two signal circuits:

On one hand, there is the audio signal coming out of the guitar that is then send to an (USB) interface. From there on, the signal is fed into a PureData patch, where it is modified according to the incoming data of the sensors and corresponding effects. Subsequently, the modified signal is then outputted to a PA system/loudspeakers.

The other circuit consists of the signals of the sensors that register the guitar player’s hand movements. The data gathered by the sensors is conveyed to a microcontroller, fed by a battery, and wirelessly transmitted to the PureData patch. Here, the sensors’ signals are used to modify the incoming guitar audio signal with effects.

Finally, I may also add some kind of (foot)switch to either engage the audio modulation of the PureData Patch or to bypass it in case one wishes the sensors’ signals to not modulate the guitar audio signal.

The setup is thus made up of hardware as well as software components.

The first hardware components necessary are sensors, able to pick up movements made by a player’s hands. Sensors capable of motion sensing include MEMS accelerometers and gyroscopes. For a layman like me, my first question was: what is the difference between an accelerometer and a gyroscope?

Luckily, I found a website that explained the difference very well:

What it isElectromechanical devices that measure acceleration   Cannot distinguish rotation from accelerationA device used for measuring rotational changes or maintaining orientation   Unaffected by acceleration
Usage purposeMeasure linear acceleration based on vibrationMeasure rate of rotation and angular position around a particular axis
ApplicationsCommonly found and more applicable in consumer electronicsCommonly found and more applicable in aircrafts, aerial vehicles

The website also read that some appliances benefit from both sensors. In fact, there is also a third category of such sensors that combines the qualities of accelerometers, gyroscopes as well as magnetometer sensors – the so-called Inertial Measurement Units or IMUs.

At some stage of this project, I must decide which kind of sensor to use. The website recommended:

Type Accelerometer:

  • Grove – 3-Axis Digital Accelerometer
  • ADXL335 Accelerometer

Type: Accelerometer/Gyroscope:

  • Grove – 6-Axis Accelerometer + Gyroscope

Type IMU:

  • Grove – IMU 9DOF v2.0

However, no matter which kind of sensor I choose, a microcontroller is necessary to process the data gathered. Such a microcontroller could be an Arduino board for example. Considering that one sensor should pick up pick movements, the great challenge is to find a sensor as well as a microcontroller that are small enough to fit in a guitar player’s hand without compromising playability. The Arduino Nano measures 1.8 cm x 4.5 cm which probably makes it small enough to either fit into a guitar player’s palm or onto the back of his/her hand. Another great board would be the Arduino Nano 33 BLE – it comes with Bluetooth functionality as well as a 9-axis inertial measurement unit (IMU) which makes it a perfect choice for my project.

The software side of the system comprises the integrated development environment (IDE) of Arduino as well as PureData. In PureData, a patch must be programmed that allows for receiving the incoming data of the sensors and using it to modulate the audio signal of the guitar with various effects and/or filters.

The custom setup is, as expected, a lot cheaper than pre-made products. The Arduino microcontrollers all cost less than 20€ and the Arduino IDE as well as PureData are free open-source software. The sensors I found tend to cost around 10-15€. Nevertheless, the custom setup will require a lot more personal effort from my side, especially on the software part which for me as an entry-level programmer will definitely be a challenge.


Leave a Reply

Your email address will not be published.