Wireless Guitar Amplifier DIY Project
I have a Pi, I have a Pi Zero... BOOM
Idea
Electrical guitar need several analog devices to make noise, e.g. amplifier, effects, and a long wire. It is okay if money is not your concern. But if you want to use electrical guitar wirelessly without being bankrupt, a custom system gets the point.
State of the art wireless guitar system use RF to communicate which is exactly around the 2.4 GHz frequency used for wifi and bluetooth. Why not just use network to transfer data? So here comes this project (for us to make mistakes XD).
Hardwares
The main processors are chosen to be a Raspberry Pi 2/3 model B as the receiver and a Raspberry Pi Zero W as the sender. Though the full linux OS may delay the process pipeline, it is the most convenient develop environment to start with. Maybe we can switch to Arduino after the prototype is usable.
Here are the main building blocks for this system:
- Preamp: raise the guitar output to line level;
- ADC (and maybe codec): transform analogue signal to digital music wave;
- DAC: the Pi onboard DAC is awful...
- Amp: just use a powered speaker.
Some electronic hobbists have already built these devices and here are the resources I've found online:
- Simple and cheap preamp with good sound: till's blog and forum post
- ADC working with Pi's I2S interface: sparkfun board
- DIY guitar amplifier (probably not relevant to this project): ax84 project
- hifiberry DAC: already bought ...
From these resources, we should buy some electronics from vendors. Some important devices are listed below:
- JFET for preamp: J201 is discontinued, so alternatives like 2N5457 or MPF102 should be handy.
- ADC chip: TI's PCM1803A or PCM1804 seems reasonable in price and performance, but the small packages would be challenging when soldering.
- Boost converter: raise DC 3.3/5V from Pi to DC 9V for JFET. We can use 9V battery at first.
- Resistors and capacitors;
- Some 1/4 and 1/8 inch audio jacks.
Softwares
Thanks mighty raspberry pi, we have wireless connections in the beginning. All we have to to is signal manipulation and transfer.
Before ADC outputs, everything is analogue. In software side, nothing needs to be done. However, we can add some knobs and switches to provide extra controls.
Texas Instruments' audio ADC chips can communicate with pi through I2S interface. It seems quite tricky and may take great effort to figure out how. There is one long thread discussing this issue on forum.
There exist some audio transfer protocols over internet, such as Airplay and UPnP. Delay may be a great trade-off of these protocols (typically ~ 100 millisecond). Jack Audio Connection Kit is considered to be a low latency approach for instrument streaming. And it is also capable of communicating over internet.
On the server side (the receiver), we can build a digital guitar effects platform using Pure Data. However, the performance depends on the power of raspberry pi and the complexity of the effect. This would be a bonus feature for our product.
Multiple Usages
The final result should be a product that is applicable in different ways.
- Directly connect headphone or speaker to the preamp (portable guitar amp for headphones);
- Connect output from preamp to a computer's line-in jack (Guitar adapter for computers);
- Record audio from ADC's output on both Sender and Receiver (Guitar digital recorder);
- Play audio through DAC on the Receiver (wireless guitar system).