{"id":15142089,"url":"https://github.com/todbot/picotouch","last_synced_at":"2025-08-24T15:10:42.953Z","repository":{"id":66886493,"uuid":"357693085","full_name":"todbot/picotouch","owner":"todbot","description":"Tiny capsense touch MIDI keyboard controller from a Raspberry Pi Pico","archived":false,"fork":false,"pushed_at":"2024-09-06T00:54:36.000Z","size":8861,"stargazers_count":121,"open_issues_count":2,"forks_count":9,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-07-10T11:12:35.421Z","etag":null,"topics":["capsense","circuitpython","keyboard","midi","midi-controller","pico","raspberrypipico"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/todbot.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-04-13T21:27:35.000Z","updated_at":"2025-06-29T22:10:03.000Z","dependencies_parsed_at":"2025-01-07T00:29:58.782Z","dependency_job_id":"405a0838-09fe-4b54-b439-83676825b3b4","html_url":"https://github.com/todbot/picotouch","commit_stats":{"total_commits":80,"total_committers":2,"mean_commits":40.0,"dds":"0.012499999999999956","last_synced_commit":"150422f5db9b27c5e642e1c0179ea86cc050e048"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/todbot/picotouch","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/todbot%2Fpicotouch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/todbot%2Fpicotouch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/todbot%2Fpicotouch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/todbot%2Fpicotouch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/todbot","download_url":"https://codeload.github.com/todbot/picotouch/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/todbot%2Fpicotouch/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264648521,"owners_count":23643669,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["capsense","circuitpython","keyboard","midi","midi-controller","pico","raspberrypipico"],"created_at":"2024-09-26T09:22:35.104Z","updated_at":"2025-07-10T20:11:34.794Z","avatar_url":"https://github.com/todbot.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# picotouch\n\nTiny capsense touch USB MIDI keyboard from a Raspberry Pi Pico\n\u003cimg width=700 src=\"./docs/picotouch_photo1.jpg\"/\u003e\n\u003cimg width=700 src=\"./docs/picotouch_smd_top1.png\"/\u003e\n\u003cimg width=700 src=\"./docs/picotouch_top2.png\"/\u003e\n\n\u003ca href=\"https://www.tindie.com/products/todbot/picotouch-capsense-midi-keyboard-for-raspi-pico/\"\u003e\u003cimg src=\"https://d2ss6ovg47m0r5.cloudfront.net/badges/tindie-smalls.png\" alt=\"PicoTouch on Tindie\" width=\"200\" height=\"55\"\u003e\u003c/a\u003e\n\n\nIf you're looking for the synthesizer version,\nthat's at [github.com/todbot/picotouch_synth](https://github.com/todbot/picotouch_synth)\n\n## Demos\n\n\nhttps://user-images.githubusercontent.com/274093/216477797-90a1e4ca-b68f-4eb2-be46-de1d6d81551e.mp4\n\n\nAlso see videos in this Twitter thread : https://twitter.com/todbot/status/1382469033061093377\n\nAnd check out [picotouch videos on my Youtube channel](https://www.youtube.com/@todbot/search?query=picotouch)\n\n## Materials needed\n\nIf 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 \u003cb\u003eresistors are soldered\u003c/b\u003e for you, so you only need to\n[solder the Pico](https://www.youtube.com/watch?v=dW9LiOq3Dso).\n\nIf you're building one by hand, you will need:\n- 1 - picotouch PCB ([order from OSHpark](https://oshpark.com/shared_projects/5MnI1jPf))\n- 1 - Raspberry Pi Pico  **(NOTE: Not the Pico2, since its RP2350 chip has a hardware error)**\n- 23 - 1M ohm 0805 SMD resistors  ([Digikey cart with this \u0026 Pico](https://www.digikey.com/short/w381rn4w))\n\n\n## How to solder the Pico\n\nIt's not too bad!  A pretty easy first-time SMD soldering project.  Here's\n[how to solder the Pico down](https://www.youtube.com/watch?v=dW9LiOq3Dso).\nThe technique is: line up the Pico solder one corner, solder the other, then finish all the rest.\nIn 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))\n\nhttps://user-images.githubusercontent.com/274093/217670870-b04d55ed-e37d-4be2-bea7-4985d2b3f8c4.mp4\n\n\n\n## Firmware Installation\n\n* Install CircuitPython\n  - Hold down BOOT button while plugging in Pico to get RPI-RP2 drive\n  - Download CircuitPython UF2 from https://circuitpython.org/board/raspberry_pi_pico/\n  - Drag UF2 to RPI-RP2 drive. CircuitPython is now installed!\n\n* Install CircuitPython libraries onto Pico\n  - If you have Python on your computer you can do:\n    ```\n    pip3 install circup\n    circup install adafruit_midi adafruit_debouncer adafruit_ticks\n    ```\n  - Otherwise, download the CircuitPython Libraries Bundle at https://circuitpython.org/libraries\n    and copy over the `adafruit_midi`, `adafruit_debouncer`, \u0026 `adafruit_ticks` libraries\n    to the `CIRCUITPY/lib` folder on the Pico.\n\n* Install picotouch `code.py`\n  - Via commandline:\n    ```\n    cp picotouch/circuitpython/picotouch/code.py /Volumes/CIRCUITPY/code.py\n    ```\n  - Or you can drag-n-drop using your computer's GUI\n  - Note: this will delete the previous `code.py` on your Pico.\n      Normally this is fine, but if it's not, be sure to save it if you want to keep it!\n\n\n## Going further\n\nThere's other things you can do with the picotouch board.\n\n- Use it as a MIDI slider bank\n\n    Install\n   [`picotouch_midislider/code.py`](https://github.com/todbot/picotouch/blob/main/circuitpython/picotouch_midislider/code.py) instead of the regular picotouch code.py.\n\n   - youtube demo: [midislider demo video](https://youtu.be/1Psw3PLqYS8)\n\n- Use it as a HID keyboard macropad\n\n   - example code: [`picotouch_macropad/code.py`](https://github.com/todbot/picotouch/blob/main/circuitpython/picotouch_macropad/code.py)\n\n   It's early days, but it's a start at that idea\n\n\n## Press\n\n- https://www.hackster.io/news/tod-kurt-s-ultra-slim-picotouch-is-a-button-free-23-key-raspberry-pi-pico-powered-midi-keyboard-700a3ce2227b (26 Feb 2023)\n- https://www.raspberrypi.com/news/picotouch-synthesiser-magpimonday/ (22 Nov 2023)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftodbot%2Fpicotouch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftodbot%2Fpicotouch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftodbot%2Fpicotouch/lists"}