

Buttons4x0
some buttons and touchwheels
- Size
- 55.6 × 18 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 11
- Nets
- 5
- Pads
- 19
- Tracks, vias
- 30, 4
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 27 Oct 2023
- Updated
- 7 Nov 2026
Overview
Buttons4x0 is an open-source printed circuit board by todbot, from the todbot/touchpads repository on GitHub, published under the MIT licence. It is a 2-layer board of 55.6 × 18 mm with 11 parts on 5 nets, routed with 30 tracks and 4 vias.
Its parts include 4 resistors, 4 switches and 1 connector.
README
README.mdTouchpads and Touchwheels
Some capacitive sense touch sensors: buttons and touchwheels
Design your own sliders and wheels with the
Captouch Designer
web app (source in captouch-designer/).
Touchpads
Touchpads are capacitive sensing button inputs that consist of a copper
pad and (usually) 1M pull-down resistor, both hooked up to a microcontroller GPIO pin.
Code on a microcontroller repeatedly charges and times the discharge rate of the pad.
The discharge time changes when a finger is close to the pad.
This change can be used to detect a button press.
The CircuitPython touchio library and the Arduino library TouchyTouch
are two ways of using these capacative touch pads
Touchpad boards
-
buttons4x0 - Four 11 mm capacitive touch buttons for use with breadboards or in a project
https://github.com/user-attachments/assets/d40d3ede-4ee4-4309-8d3a-04f324b11f05


Touchwheels
These work by using only three capactive touch pads in a specific interleaved geometry and measuring the relative ratio of analog capacitive touch values between the pads to compute a distance along the slider.
Touchwheel boards made so far:
-
TouchWheelSAO -- Touchwheel SAO as part of Hackaday Supercon 2024 badge
-
touchwheel0 - available on Tindie as a kit!
Similar to an iPod's wheel,
touchwheel0is a 30 mm (0.6") diameter rotary capacitive touch slider that can be used with most any microcontroller. It uses three digital GPIO pins and requires no extra components. The included examples in CircuitPython and Arduino show how to turn the raw capacitive touch readings of the three pins into a linear 0-360º angle measurement. -
picoslidertoy - Available at the picoslidertoy repo
Touchwheel Demos:
There are several examples on how to use the touchwheel:
-
demo0 - CircuitPython example showing basic concept on touchwheel0
-
touchwheel_badgedemo - CircuitPython example for the Hackaday SuperCon 2023 badge (where touchwheel0 PCBs were given away)
-
demo_dual - CircuitPython example show two touchwheel0s in use
-
more demos coming!
What's in Tindie touchwheel0 kit:
The touchwheel0 kit on Tindie comes with:
- touchwheel0 black PCB
- 4 x 1M 0805 SMD resistors (only three needed, one is a spare)
- 1 x 4-pin pin header
It makes a pretty good "first SMD soldering" exercise as the 0805 resistors are relatively big and not very heat sensitive.
Demo videos:
-
demo dual: (click to view on youtube)
-
demo0:
https://github.com/todbot/touchwheels/assets/274093/fc2b794f-5dff-42b4-8942-f141de19e4ab
Useful links:
Parts
11| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | 1M | Resistor_SMD:R_0805_2012Metric | R1, R2, R3, R4 |
| 4 | Capacitive_Button | todbot_stuff:Pad-CapTouch-11_2mm-roundrect | SW1, SW2, SW3, SW4 |
| 2 | MountingHole | MountingHole:MountingHole_2.7mm_M2.5 | H1, H2 |
| 1 | Conn_01x05_Pin | Connector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_Vertical | J1 |
More from todbot/touchpads
1- 2 layers35.6 × 40.6 mm

Similar boards
- 2 layers60 × 30 mm

Controller
google/mozc-devices
Circuit diagrams and firmware source code for Gboard DIY keyboards
11 parts3kApache-2.0 - 2 layers103 × 30.5 mm

- 2 layers26 × 30 mm

Expansion Card
FrameworkComputer/ExpansionCards
Reference designs and documentation to create Expansion Cards for the Framework Laptop
11 parts1.1kCC-BY-4.0 - 2 layers53.9 × 23.2 mm

Buffer
hoglet67/RGBtoHDMI
Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI
11 parts1kGPL-3.0 - 2 layers10 × 20 mm

2 connector Sensor Board
hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!
11 parts915 - 2 layers

- 2 layers47 × 33 mm

Sevensegment led display module
tardate/LittleArduinoProjects
a collection of "Little Electronic & Arduino Projects", most involving electronics or an Arduino in one way or another!
11 parts803MIT - 2 layers42.5 × 36.8 mm

Devboard
basilfx/TRADFRI-Hacking
Hacking IKEA TRÅDFRI products, such as light bulbs, window blinds and other accessories.
11 parts743CC-BY-4.0
Questions
How big is the Buttons4x0 PCB?
It measures 55.6 × 18 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Buttons4x0 use?
11 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the Buttons4x0 KiCad files?
From the todbot/touchpads repository on GitHub, at the commit this page was made from: the board is hardware/buttons4x0/buttons4x0.kicad_pcb and its schematic hardware/buttons4x0/buttons4x0.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Buttons4x0 design in my own project?
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

