/ README.md
README.md
1 # picotouch 2 3 Tiny capsense touch MIDI keyboard from a Raspberry Pi Pico 4 5 <img width=700 src="./docs/picotouch_smd_top1.png"/> 6 <img width=700 src="./docs/picotouch_top2.png"/> 7 8 [For sale on Tindie!](https://www.tindie.com/products/todbot/picotouch-capsense-midi-keyboard-for-raspi-pico/) 9 10 11 ## Demos 12 13 14 https://user-images.githubusercontent.com/274093/216477797-90a1e4ca-b68f-4eb2-be46-de1d6d81551e.mp4 15 16 17 Also see videos in this Twitter thread : https://twitter.com/todbot/status/1382469033061093377 18 19 And check out [picotouch videos on my Youtube channel](https://www.youtube.com/@todbot/search?query=picotouch) 20 21 ## Materials needed 22 23 If you [buy a black 'picotouch SMD' board from my Tindie store](https://www.tindie.com/products/todbot/picotouch-capsense-midi-keyboard-for-raspi-pico/), the <b>resistors are soldered</b> for you, so you only need to 24 [solder the Pico](https://www.youtube.com/watch?v=dW9LiOq3Dso). 25 26 If you're building one by hand, you will need: 27 - 1 - picotouch PCB ([order from OSHpark](https://oshpark.com/shared_projects/5MnI1jPf)) 28 - 1 - Raspberry Pi Pico 29 - 23 - 1M ohm 0805 SMD resistors ([Digikey cart with this & Pico](https://www.digikey.com/short/w381rn4w)) 30 31 32 ## How to solder the Pico 33 34 It's not too bad! A pretty easy first-time SMD soldering project. Here's 35 [how to solder the Pico down](https://www.youtube.com/watch?v=dW9LiOq3Dso). 36 The technique is: line up the Pico solder one corner, solder the other, then finish all the rest. 37 In the video you see I don't get it aligned perfectly straight (hard to see around the camera), but it still works great! ([Youtube version of the below video](https://www.youtube.com/watch?v=dW9LiOq3Dso)) 38 39 https://user-images.githubusercontent.com/274093/217670870-b04d55ed-e37d-4be2-bea7-4985d2b3f8c4.mp4 40 41 42 43 ## Firmware Installation 44 45 * Install CircuitPython 46 - Hold down BOOT button while plugging in Pico to get RPI-RP2 drive 47 - Download CircuitPython UF2 from https://circuitpython.org/board/raspberry_pi_pico/ 48 - Drag UF2 to RPI-RP2 drive. CircuitPython is now installed! 49 50 * Install CircuitPython libraries onto Pico 51 - If you have Python on your computer you can do: 52 ``` 53 pip3 install circup 54 circup install adafruit_midi adafruit_debouncer adafruit_ticks 55 ``` 56 - Otherwise, download the CircuitPython Libraries Bundle at https://circuitpython.org/libraries 57 and copy over the `adafruit_midi`, `adafruit_debouncer`, & `adafruit_ticks` libraries 58 to the `CIRCUITPY/lib` folder on the Pico. 59 60 * Install picotouch `code.py` 61 - Via commandline: 62 ``` 63 cp picotouch/circuitpython/picotouch/code.py /Volumes/CIRCUITPY/code.py 64 ``` 65 - Or you can drag-n-drop using your computer's GUI 66 - Note: this will delete the previous `code.py` on your Pico. 67 Normally this is fine, but if it's not, be sure to save it if you want to keep it! 68 69 70 ## Going further 71 72 There's other things you can do with the picotouch board. 73 74 - Use it as a MIDI slider bank 75 76 Install 77 [`picotouch_midislider/code.py`](https://github.com/todbot/picotouch/blob/main/circuitpython/picotouch_midislider/code.py) instead of the regular picotouch code.py. 78 79 - youtube demo: [midislider demo video](https://youtu.be/1Psw3PLqYS8) 80 81 - Use it as a HID keyboard macropad 82 83 - example code: [`picotouch_macropad/code.py`](https://github.com/todbot/picotouch/blob/main/circuitpython/picotouch_macropad/code.py) 84 85 It's early days, but it's a start at that idea 86 87 88 ## Press 89 90 - https://www.hackster.io/news/tod-kurt-s-ultra-slim-picotouch-is-a-button-free-23-key-raspberry-pi-pico-powered-midi-keyboard-700a3ce2227b