
Digital inputs
rusefi/stim
GPIO: output: x4 address pins output: x4 test control pins output: mux off

Piano is an open-source printed circuit board by meeplabsdev, from the meeplabsdev/halflife-w3 repository on GitHub. It is a 4-layer board of 263 × 179 mm with 25 parts on 225 nets, routed with 1,678 tracks and 333 vias.
It is built around the CD4067BM96. Its parts include 12 ICs and 12 connectors. It belongs with the RP2040 boards of this library.
For the third week of halflife, I decided to create a midi instrument. It uses capacitive touch to recognise when the keys are pressed, and use 16 zones per key (multiplexed). This means that while each key is single touch itself, it supports full multi touch across all the keys. It also allows us to determine the exact position of the finger on the key by taking readings from each zone and interpolating between them (since the readings differ depending on how close or far you are from each zone). It ALSO allows us to determine the velocity the key was pressed with and also the aftertouch pressure being applied, which can be approximated by the rate of change of the distance proxy, and by the reading produced by each zone respectively. (If four zones, one on each size of the finger, all show a lower reading then the finger is not compressed against the key, and if they show a higher reading it is because the finger is pushed harder against the key and has spread out).
This is a rough outline of the cost, see BOM.csv for more details.
| Part | Cost |
|---|---|
| Unpopulated PCB | $62.10 |
| Pi Pico | $5.08 |
| Multiplexers | $15.11 |
| Total + Shipping | $99.56 |
| Qty | Value | Footprint | References |
|---|---|---|---|
| 12 | CD4067BM96 | lcsc_footprints:C6525_SOIC-24_L15_4-W7_5-P1_27-LS10_3-BL | U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12 |
| 1 | Black1 | Footprints:BlackKey | J2 |
| 1 | Black2 | Footprints:BlackKey | J4 |
| 1 | Black3 | Footprints:BlackKey | J8 |
| 1 | Black4 | Footprints:BlackKey | J10 |
| 1 | Black5 | Footprints:BlackKey | J12 |
| 1 | RaspberryPi_Pico | Module:RaspberryPi_Pico_Common_SMD | A1 |
| 1 | White1 | Footprints:LeftKey | J1 |
| 1 | White2 | Footprints:MiddleKey | J3 |
| 1 | White3 | Footprints:RightKey | J5 |
| 1 | White4 | Footprints:LeftKey | J6 |
| 1 | White5 | Footprints:MiddleKey | J7 |
| 1 | White6 | Footprints:MiddleKey | J9 |
| 1 | White7 | Footprints:RightKey | J11 |
It measures 263 × 179 mm and has 4 copper layers, 1.6 mm thick.
25 parts, built around the CD4067BM96. 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.
From the meeplabsdev/halflife-w3 repository on GitHub, at the commit this page was made from: the board is piano/piano.kicad_pcb and its schematic piano/piano.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask meeplabsdev before reusing the design.

rusefi/stim
GPIO: output: x4 address pins output: x4 test control pins output: mux off

menloresearch/asimov-1
v1 of Asimov, an open-source humanoid robot

opentac/opentac
OpenTac: open tools to design, fabricate, read and simulate flex-PCB tactile skins that sense normal and shear force, for any robot surface.
ManiacalLabs/AllPixel
Firmware and Board Designs for the AllPixel LED Controller Board: Please direct questions and support requests to https://forum.maniacallabs.com/c/hardware - The Issues list here should be reserved for actual bugs.



kounocom/Mumo
A compact 13×18mm IMU module featuring the TDK InvenSense ICM-45686 6-axis IMU with integrated 32.768kHz clock and QST QMC6309H 3-axis magnetometer.
