Building the CV Touch Keyboard



  • Diode labelled 1n4007 is an M7 rectifier diode (they’re the same, only called different things depending on the package.)



8100nCapacitorC6030603 PACKAGE!
2CAP1188CAP1188QFN24_4X4Capacitive Touch Controller
23.5mm JackTHONKICONN3.5mm socket for Eurorack modular synths
1B54SBAT54SSOT23Schottky Diodes
1LM4040LM4040A-5SOT23-3LM4040/1 compatible shunt reference. 5V.
1Tile Tail1U Tile Power Lead
7LED1206LED, reverse mounted
1Tiny85-20ATTINY85-20DIPAtmel 8-pin 2/4/8kB flash uC
1MCP4726MCP4726A0SOT23-6Microchip 12-bit I2C DAC, ADDRESS A0
1MCP6021MCP6291T-E/OTSOT23-5Rail to rail OpAmp with 10MHz GBP
1DIP8 SOCKET8 pin DIP socket with FLAT LEADS
11117-3.3AMS1117SOT893.3V LDO Regulator
11117ADJLD117SOT223Adjustable LDO Regulator



Inspect the PCBs for damage. There should the three PCBs, the protection covers, and the preprogrammed IC.

Trim the “mouse bites” (if any) and file flush to edge, careful not to go to far or nick the edge.

Check that the LEDs fit the holes. They are mounted upside down so the lens protrudes through the hole. Some LEDs fit perfectly, some are a wee tad too large. The routing operation left the edges slightly rounded which can interfere with the fit. Square the inside edges with a sharp utility knife or tiny hobby file. Be very careful to not remove too much material, cut a trace, remove material from the front side of the board, or slice into a finger.

Clean the fibreglas dust from the PCB and workspace — it’s very abrasive and may scratch the panel.

Clean the PCB with isopropyl alcohol.

All of the components go on the back of the PCB. To protect the front work on a clean soft surface like an antistatic mat.

The DIP adapter is simply a DIP socket with the leads bent outwards. Use the cheapest type of socket with flat leads. The one with pins or machined pins are brittle and snap easily.

Make the DIP adapter by trimming the edge of the pins just above the point. It should easily fit on the PCB traces with some wiggle room.

They’re soldered to the PCB by first tinning the pad, then placing the adapter on the pad and touching each lead with an iron. The solder on the pad will remelt and flow over the pin.

Why a DIP IC on an SMD PCB? Because programming an SMD microcontroller is a big pain, and not everyone has the equipment to do it. Troubleshooting is also a lot easier if the microcontroller can be removed. If the worst comes to worst, the IC can easily be pulled and a new one put in without any skills or equipment.


Using solder-paste/hot air is recommended. Some parts are very closely packed (particularly around the DAC), and the CAP1188s are very fine pitched.

Check that the LEDs fit before adding the solder paste — if one doesn’t fit it’s a lot easier to fix when there isn’t paste on the PCB.

Add all the parts. Order doesn’t matter. I find it easier going from left to right.

Make sure the LEDs, diode, and ICs are oriented properly. The indicators on the IC and PCB are very small. The LEDs “point” towards the polarity indicator (a tiny dot).

The LED should sit flush while upside-down. It’s okay if it’s a little bit not flush — it won’t be noticeable from the other side (but you will know, an it will haunt you. Or won’t.) Be careful not to use too much force pressing down on the LED or it will break.

The CAP1188s are very small and a bit tricky to solder. Don’t use too much solder, especially underneath, or it will float on the flux. The right amount and the legs will get pulled to the pads.  Use a magnifier to make sure the pins are aligned.

(This is an older design that doesn’t have the opamp on the output.)

Now that everything on the main PCB is soldered…


Check the solder joints, and use copper braid to wick away solder that’s shorting pins. The CAP1188s will almost certainly need the braid.

Remove any tiny solder balls so they don’t shake loose and short something later.

Clean the PCB with alcohol/tissue to remove flux.

The power and CV/Gate connectors are attached to the main PCB with the

Add the components to the two interface PCBs in this order: SMDs, power regulator, jacks, power header, pin headers.

Before connecting the panels together permanently, test that it outputs between 5.02 to 5.13 V. The resistor values are selected to make 5.1V. Why 5.1V? The DAC uses a 5.0V shunt reference.

Finally solder the wires between the interface PCB and the main PCB. The pads are highlighted in green in the graphic in the SCHEMATIC section. Trim the leads that connect to the pads short and orient them so they won’t short. Keep the wires long enough that the interface PCB can be detached if necessary.

There are two self-adhesive strips included. These go on the component side of the PCB at the top and bottom to protect the PCB from the rail. The side of the strip towards the center of the PCB is slightly wider.


Double check soldering one last time, then attach the panels together.

Check for shorts to ground on the points labelled in purple in the Schematic diagram above (IC power connectors.) If there’s a short find and fix it before continuing.

Apply power and check those same points for ~5.1 and ~3.3V.  Feel the CAP1188 ICs and regulators. If they get very hot disconnect the power and double-check component values and shorts.

Add the programmed microcontroller and apply power. The module should blink once almost immediately, then have the center Octave LED lit.

Check that all buttons work, and CV and Gate are working. The Gate should be 5V, and the CV should be roughly in tune.

Most problems are due to improper soldering of the CAP1188’s — either a pad isn’t soldered, or there is a solder bridge between pins.


Code is here:

Burn bootloader as AtTiny85 16MHz internal clock.


The module uses multipoint tuning which tunes to each octave and then interpolates the tuning for all notes between those octaves.

But because the lowest and highest limits are right at the end of the opamp/DAC limits we tune the lowest and highest to the closest tunable notes, which are C#0 and B#4. The lowest/highest values are then interpolated so tuning is accurate even if it runs beyond the rails (except for the highest and lowest notes).

  • Connect the module to a known-accurate oscillator or oscillator/multimeter.
  • Simultaneously touch LATCH, UP, and DOWN to enter tuning mode.
  • LEDs will flash, then LATCH LED will “breathe” when in tuning mode.
    • Octave display shows which octave is currently being tuned.
    • Press F note (center key) to advance through octaves.
    • Press Octave UP and DOWN to tune. Hold for large changes.
    • Tune 1st position to .083V or C#0
    • 1st – 1V or C1
    • 2nd – 2V or C2
    • 3rd – 3V or C3
    • 4th – 4V or C4
    • 5th  (OCTAVE LIGHT WILL GO OUT) – 4.9167V or B#4
    • Cycle starts over.
    • Simultaneously touch LATCH, UP, and DOWN to reset to defaults (roughly tuned) while in tuning mode.
  • Press LATCH to save to EEPROM and exit. Settings will be restored upon each powerup.