Some people get adventurous and drill holes in the guitars to add switches or knobs to allow for more control than the stock wiring affords. I decided to make a preamp that would allow any combination and polarity of the pickups (even time-varying ones) without requiring modifications to the guitar's body or pick guard.
And so, the Anubis preamp for Fender/Squier Stratocasters was born! There's a digital potentiometer and polarity switch for each of the three pickups. They're all controlled by a microcontroller. The control software can be edited and uploaded to the Anubis with an Arduino UNO board.
The volume and tone potentiometers have been replaced with a program selection encoder and two program value potentiometers. Here's a shot of the boards. The minimum order from the board house was 10 units, so I have some extras :)
And here's the board populated and installed on my Strat's pickguard. There's a single IDC breakout cable that goes from a header on the board to the switching jack, the pickups, the battery, and the programming cable.
I've made a mostly dry recording of the guitar (direct injected, a little compression and reverb added) to demonstrate a few of the programs I've written for it so far. In the order of recording they are:
1. Sample and hold: abruptly switching between randomly selected pickups.
2. Fast chorus: The pickups are amplitude modulated with low frequency sine waves that are 120 degrees out of phase with each other. Sounds kind of like a three tap chorus.
3. Slow chorus: same as above, but with a slower modulation frequency.
4. Some of the 13 different pickup combination and polarity options.
If I have time to do it over, I may try nice VCAs (like the SSM2164) instead of digital potentiometers to avoid the annoying stepping/zipper noise.
Here's a link to the GitHub repository for the microcontroller's software:
https://github.com/thecowgoesmoo/AnubisArray
As promised, here's the schematic:
And here's the bill of materials:
Description | mouser part number | unit price | quantity | line total | number on board | |
Switching jack | 502-113X | 3.15 | 1 | 3.15 | ||
IDC plug | 617-09-18-520-7803 | 2.06 | 1 | 2.06 | ||
IDC header | 571-7-146256-0 | 3.81 | 1 | 3.81 | ||
Amphenol flat cables | 523-135-2801-020FT | 1.75 | 1 | 1.75 | ||
Potentiometer | 311-1901F-10K | 2.87 | 2 | 5.74 | ||
Rotary encoder | 652-PEC11L4125KN0020 | 1.43 | 1 | 1.43 | ||
7805 regulator | 595-UA7805CKTTR | 0.767 | 1 | 0.767 | U8 | |
regulator capacitors | 77-VJ1206Y334KXJTBC | 0.08 | 4 | 0.32 | C13, C14, C15, C16 | |
decoupling capacitors | 77-VJ1206Y104KXJPBC | 0.033 | 5 | 0.165 | C7, C8, C12, C17, C11 | |
output capacitor | 77-VJ1206Y332KXJPBC | 0.06 | 1 | 0.06 | C1 | |
crystal capacitors | 77-VJ1206A220KXACBC | 0.05 | 2 | 0.1 | C9, C10 | |
pull down resistors | 652-CRT1206BY1002ELF | 0.31 | 2 | 0.62 | R8, R9 | |
diodes | 696-SML-LX1206YC-TR1 | 0.1 | 2 | 0.2 | D3, D4 | |
16 MHz crystal | 774-ATS160SM-1 | 0.24 | 1 | 0.24 | Y2 | |
power supply resistors | 71-CRCW1206J-100-E3 | 0.03 | 2 | 0.06 | R10, R11 | |
AD5222 | 584-AD5222BRZ1M | 2.02 | 2 | 4.04 | U2, U3 | |
DG403 | 968-DG403DYZ | 1.43 | 3 | 4.29 | U4, U5, U6 | |
9V battery holder | 12BH610-GR | 1.05 | 1 | 1.05 | ||
Atmega328 | 556-ATMEGA328-AU | 2.58 | 1 | 2.58 | U1 |