{"id":20147378,"url":"https://github.com/gdsports/buttons12","last_synced_at":"2026-04-12T23:02:51.822Z","repository":{"id":130715969,"uuid":"124977469","full_name":"gdsports/buttons12","owner":"gdsports","description":"Stick-on Twelve Button USB MIDI Controller","archived":false,"fork":false,"pushed_at":"2018-03-13T02:20:14.000Z","size":111,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-13T11:16:13.905Z","etag":null,"topics":["arduino","midi","pro-micro","usb-midi"],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gdsports.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":"2018-03-13T02:02:52.000Z","updated_at":"2024-08-30T02:28:37.000Z","dependencies_parsed_at":"2023-07-10T13:43:11.397Z","dependency_job_id":null,"html_url":"https://github.com/gdsports/buttons12","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gdsports%2Fbuttons12","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gdsports%2Fbuttons12/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gdsports%2Fbuttons12/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gdsports%2Fbuttons12/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gdsports","download_url":"https://codeload.github.com/gdsports/buttons12/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241587803,"owners_count":19986628,"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":["arduino","midi","pro-micro","usb-midi"],"created_at":"2024-11-13T22:28:48.791Z","updated_at":"2026-04-12T23:02:51.729Z","avatar_url":"https://github.com/gdsports.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Stick-on Twelve Button USB MIDI Controller\n\n![Twelve button USB MIDI controller](./images/buttons12.jpg)\n\nSometimes your gear really needs some MIDI control buttons strategically\nlocated. Now you can stick them on where needed.\n\n## Hardware\n\n* SparkFun Pro Micro or Arduino Micro\n\nThese boards are convenient because the pin arrangment includes a section with\nseven digital pins in a row. The cable from the keypad can be plugged directly into\nthat section of the board. Other boards with the ATMEGA32U4 chip should work\nbut might require extra work to wire the keypad to the board.\n\nThe photo shows a Pro Micro clone board. Right angle headers are used to keep\nthe assembly as flat as possible. After soldering, the pins on the back were\ncut flush with the board.\n\n* Generic 12 button membrane keypad\n\nStick on where needed. But it may not be easy to remove so think twice before\nsticking. Peel off the white paper on the back to uncover the adhesive. The\nArduino board can be stuck on using double-sided foam tape. This stuff is also\nhard to remove.\n\n## Software\n\nInstall the Keypad, MIDIUSB, and MIDI libraries using the Arduino IDE library\nmanager.\n\nThe sketch can be customized to send MIDI messages.\n\nNOTE: System Exclusve arrays should be stored in program memory using the\nPROGMEM attribute then sent using the USBSystemExclusive_P function. If not,\nRAM will be quickly used up.\n\n## Related Projects\n\nFour button MIDI USB controller.\n\nhttps://github.com/gdsports/buttons4\n\n101 button MIDI DIN controller.\n\nhttps://github.com/gdsports/USBHIDKbd2MIDI\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgdsports%2Fbuttons12","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgdsports%2Fbuttons12","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgdsports%2Fbuttons12/lists"}