Editor Version ×

1.Easy to use and quick to get started

2.The process supports design scales of 300 devices or 1000 pads

3.Supports simple circuit simulation

4.For students, teachers, creators


1.Brand new interactions and interfaces

2.Smooth support for design sizes of over 30,000 devices or 100,000 pads

3.More rigorous design constraints, more standardized processes

4.For enterprises, more professional users

PRO MagiClick2.0 Programmable keyboard

Project Status: Ongoing

License: Public Domain

  • 330
  • 0
  • 0
Creation time: 2023-10-13 06:24:43
Update time: 2023-10-13 06:55:08

Copyright belongs to @M0dular

Link: https://oshwhub.com/kakaka/lao-ban-jian-yi-wei-ke-bian-chen


At the same time, you are also welcome to DIY copy, but please comply with the open source agreement CC BY-NC-SA 4.0 of this project
I hope you 😃 carefully read the following text 😃, can greatly let you less detente, repeat success
If you like this, please take a swipe and give it a free like 👍& favorites ⭐ at the bottom of the page
Also feel free to leave a comment in the comments section


At the beginning of the creation of this project, it was just to kill the boring time and relieve the pressure, and some functions were constantly derived in the development process
This development, the great changes 😃, not only the size of the increase, from the screen, performance, ecological support also has a great change
From PCB to structure has been redesigned, compared with the 1.x version upgrade a lot
Programming language preferred Python language, save the installation of development environment trouble
It is convenient for everyone to add and update functions, and there are many learning resources online
Of course, you can also develop in C
Take a break and play as a counter to decompress and relax
This button can also be used as a 😃 programming learning kit 😃, which supports Arduino, MicroPython, CircuitPython and other languages


As a mechanical shaft key, a function that must be implemented



Hardware design and structure-related content is signed - Non-commercial - Shared in the same Way 4.0 International (CC BY-NC-SA 4.0)




Of all the files, code.py and boot.py do not need to be changed, each of the other py files is a separate feature, and adding files can add new features
Yes, it will automatically recognize the function menu, the icon can not be set, the default is to use python icon


The hardware still uses the sandwich design of three circuit boards, which leads to the expansion interface and facilitates the addition of functional modules
Structural redesign, no need for flexible flat cable, increase the smoothness of the keys

1 The display part uses a 0.85 inch color screen, 128x128 resolution, and the display content is fine
2 The main control board is currently only designed esp32s3 version, support WiFi, 4MB flash and 2MB ram, is conducive to adding more functional scripts
3 The overall operation is mainly based on the mechanical shaft button in the middle, and the left and right sides of the fuselage are generally used as auxiliary
4 The keyboard shaft uses a pluggable design, and you can choose the silent shaft or other
5 It has a small speaker so easy to listen to
6 Onboard a 6-axis motion sensor
7 There are expansion ports on the rear of the fuselage
8 USB Type-C port
9 A reset button at the bottom
10 On-board color LED
11 Support lithium battery charging


If you place a single panel in JLCPCB, it is recommended to choose black semi-transparent
The fully transparent version requires you to look at the match
Select 1.0mm thi

3D Printing
3D printing, it is recommended to use resin printing, the accuracy will be better, and the later grinding and coloring will be convenient



Hex nut M1.6 Quantity: 4
Countersunk screw M1.6*8 Quantity: 4
0916 Chamber horn
0.85 "tft short flexible flat cable
Kaihua choc 



First install the bootload firmware and burn combined.bin to the board using the flash download tool
Then install the app firmware, after the reset will be. Drag the UF2 file to the USB flash drive
Finally, after resetting, unzip the firmware package to the flash drive displayed


How-to guide
The default code uses circuitpython
settings.toml modified to their own wifi information, know the weather key (need to go to the official website to apply) and the city
Main key, used to access the function options
The side button or flip button can exit the current function and return to the home page


Updated the spray and transparent version of the product


Update code and images



I've got PCB and has been test. 

Design Drawing
schematic diagram
1 /
1 /
The preview image was not generated, please save it again in the editor.
Project Members
Target complaint
Related Projects
Change a batch
Add to album ×


reminder ×

Do you need to add this project to the album?


周一至周五 9:00~18:00
  • 0755 - 2382 4495
  • 153 6159 2675


周一至周五 9:00~18:00
  • 立创EDA微信号


  • QQ交流群


  • 立创EDA公众号