Fork me on GitHub

Project Notes

#323 stringy

Building and playing (mainly playing) the Boldport Club Stringy (Project #14, June 2017).

Here’s a quick video showing it in action..

Build

Notes

Stringy synthesizes guitar sounds on a PIC microcontroller using MadLab’s implementation of the Karplus–Strong string plucking algorithm. It can play notes over five octaves.

Stringy is a remix of MadLab’s ‘Funky guitar’. The code is open source, so I think next up I’ll attempt to compile and upload.

But for now, I’m too distracted just playing tunes;-)

Parts and Unboxing

Ref Part Qty
IC2 PIC microcontroller, Microchip 12F1840-I/P x1
IC1 5V linear regulator, Taiwan Semiconductor TS78L05CT A3G x1
Q1 BJT npn transistor, Diotec BC547B x1
LED1 5mm blue LED, Kingbright L-9294QBC-D x1
S1,S2 Tactile switch, TE Connectivity FSM4JRT x2
R1,2,4,6-18 1KΩ resistor, Multicomp MF25 1K x17
R5 47Ω resistor, Multicomp MF25 47R x1
R3 1MΩ resistor, Multicomp MF25 1M x1
C3 220µF electrolytic capacitor, Multicomp MCGPR16V227M6.3X11 x1
C1,C2 10µF electrolytic capacitor, Multicomp MCMR35V106M4X7 x2
C4,C5 0.1µF ceramic capacitor, Multicomp MC0805Y104M500A2.54MM x2
J1 3.5mm jack socket, TruConnect 20-0137 x1
  Battery contact positive, TruPower 18-0596 x1
  Battery contact negative, TruPower 18-0597 x1
  8-pin DIL socket, TruPower DS1009-08 x1
  piece of 20AWG hookup wire x1
  PCB x1

kit_parts

PIC12F1840 Specs

The microchip PIC12F1840 site has plenty of info and datasheets for the processor. The core specs:

  • 7kb flash memory
  • 256 bytes RAM
  • 256 bytes EEPROM
  • 5 I/O Pins and 1 Input-Only Pin
  • 4 channels ADC (10-bit)
  • 1 comparator
  • 2 x 8-bit, 1 x 16-bit timers
  • Internal 32MHz oscillator

PIC12F1840_pinout

Construction

assembled_front

assembled_rear

Build

Schematic

Schematic

Credits and References

About LEAP#323 BoldportPICAudio
Project Source on GitHub Return to the LEAP Catalog

This page is a web-friendly rendering of my project notes shared in the LEAP GitHub repository.

LEAP is my personal collection of electronics projects, usually involving an Arduino or other microprocessor in one way or another. Some are full-blown projects, while many are trivial breadboard experiments, intended to learn and explore something interesting (IMHO!).

The projects are usually inspired by things found wild on the net, or ideas from the sources such as:

Feel free to borrow liberally, and if you spot any issues do let me know. See the individual projects for credits where due. There are even now a few projects contributed by others - send your own over in a pull request if you would also like to add to this collection.