Result¶
Evaluation¶
I would consider the first spiral as successful, I may need to increase the tolerance a bit more because, as you can see in the video some keys rub onto each other.
Unfortunately I didn’t manage to build more modules but I’m trying to build some more in the next weeks and try to communicate with those.
Also I underestimated the needed work for my initial goal but I try to work on the project in the future and build a module for it implementing the initial functionality.
Goals for the future¶
Multiple Keyboard Modules controlled via I2C
Different modules on the back of the keyboard with e.g. rotary encoder, slider, buttons etc.
Display (LED, LCD) on the back to show notes or other things/games
Add the old-school MIDI port to the keyboard
Also currently there is always a XIAO needed or the modules, which is pretty inefficient material/recourse wise when you only want to use multiple modules as a keyboard.
So for a future 2.0 version it whould be nice to add the connection interface independent to the XIAO so you only need one of them for the actual MIDI-part.
BOM¶
Component |
Product |
Amount |
Price |
Vendor |
---|---|---|---|---|
PCBs |
XIAO ESP32 |
1 |
9€ |
|
ATtiny412 |
1 |
0.8€ |
||
ATtiny1624 |
1 |
1€ |
||
Condensator 100nF |
2 |
0.7€ |
||
Resistor 0 Ohm |
1 |
0.06€ |
||
Resistor 4 kOhm |
2 |
0.02€ |
||
PinHeader 3W |
2 |
0.6€/10 |
||
PinHeader 5W |
2 |
0.6€/10 |
||
PinSocket 3W |
4 |
0.14€ |
||
PinSocket 5W |
2 |
0.5€ |
||
Housing |
Magnets |
12 |
0.33€ |
|
Screws M3 12mm |
6 |
7.8€/100 |
||
Screws M2.5 |
7 |
2.35€/20 |
||
Screws M2 |
4 |
0.6€ |
||
Rubber bands |
12 |
1€ |
Your local Supermarket |
|
USB-C Cable |
1 |
3.6€ |
||
Not Build Side Connectors |
Connector FFC FPC 4W |
4 |
4.75€ |
|
PinHeader 3W |
1 |
0.6€/10 |
||
PinSocket 3W |
1 |
0.14€ |
||
Screws M2.5 |
4 |
2.35€/20 |
Note
BOM is for one key board module.
Licence¶
Open Source MIDI Keyboard Copyright © 2025 Niclas Starost
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.