【Original Keypad】Sunflower #001 XIAO RP2040 - Newly Designed Keypad.
2153 Views, 25 Favorites, 0 Comments
【Original Keypad】Sunflower #001 XIAO RP2040 - Newly Designed Keypad.
Even with this shape, the keypad is newly designed.
"Foot (leaf) is a decoration"
"Great people don't understand that!"
The leaf part is not fixed, it feels like putting it as a decoration. :D (Part of GUNDAM's famous lines)
When I saw banana and corn keyboards, I thought, "I want to make something." When I was talking to my family, they said, "How about sunflowers?" I replied, "Huh? Sunflowers!?" Again, I thought, "Sunflowers...".
Search for sunflowers. At first, I imagined a realistic sunflower, but many of the designs were simplified like icons, so I thought I might be able to make one.
Supplies
You will need a 3D printer, resin (for SLA), and a circuit board. The parts required for the circuit board are as follows.
- MCU : XIAO RP2040 : 1 pcs
- Key switch : Kailh Low Profile : 7 pcs
- Diode : 1N4148 : 7 pcs
- Rotary encoder : EC12E2440301 : 1 pcs
- Cushion rubber : 7.9x2.2mm Circular : 4~8 pcs
- Screw : M2 4mm : 8 pcs
3D Data
*The above image is a rendering image when creating 3D data.
Fusion360 is used to create 3D data this time. The basic procedure is to perform modeling before creating the circuit board, import the board shape (DXF) at that time into KiCad, and create the final circuit board data.
The model data (STEP, STL) are shown below. The features of each part are as follows.
- petal_A_1 : 1 pcs : The petals at the top (above the MCU). It is assumed that it is attached to the bridge part so as not to interfere with the USB connector. The petals themselves are 2mm thick. I don't need the keycap function, so I don't put a stem on it.
- petal_A_2 : 7 pcs : Flower petals that become key caps. The thickness of the petals is 2 mm. Attach Stem part to the petal.
- petal_B : 8 pcs : The petal to place behind petal_A. Thickness is 2mm. Add a cylinder leg and drill a 1.8mm hole for screwing.
- bridge : 1 pcs : Parts that connect petal_A_1 on the top of the MCU and petal_B on the left and right. It is assumed that it will be fixed using an adhesive.
- dial : 1 pcs : Knob of a rotary encoder. Shrink the sphere vertically and slice it in half. Make a leg that connects to the encoder and make a hole that matches the shaft.
- stem : 1 pcs : The thickness is 3.8mm (circuit board 1.6mm + cushion rubber 2.2mm). In this design, it is assumed that it will not be connected and placed as a decoration. :D
3D Printing
Print the aforementioned 3D data. I output with the stereolithography method (SLA). You may also want to use a print service. It might also be a good idea to use colored filaments in FDM. As a caveat, the keycap stems require precision, so I chose SLA.
Painting
*The above image is before matte clear is applied. The leaf part is a spare.
Paint as desired. The basic procedure for the painting I did was "Surfacer → File → Surfacer → Paint color → Matte clear".
For the dial part, a chipping coat (spray) is used between the base and the paint color to give it a rough texture so that it does not slip when turned.
Circuit Board Data
Below is the gerber file. Place your order with PCB Fabrication Services. (Because ZIP data cannot be uploaded)
I use KiCad to create the circuit board. This time, I wanted to keep the manufacturing cost to a minimum, so I stayed in the 100 x 100mm size range. The circuit board itself is fairly simple with fewer keys than a typical keyboard.
Assembling
After assembling the circuit board and keyboard parts, we will install other parts.
Points to note:
- XIAO RP2040 is designed to be directly attached to the PCB. (No pin headers or cons throughs are used)
- Glue Petal_A_1 and Petal_B on top of XIAO RP2040 to the bridge parts as shown in the above photo.
Firmware
Below are UF2 file, JSON file, and source files. (Since it is not a file format for uploading, it is placed below)
- UF2 file : https://github.com/hide-key/testamatta/blob/main/sunflower/uf2/testamatta_sunflower_000_xiao_rp2040_default.uf2
- JSON file : https://github.com/hide-key/testamatta/blob/main/sunflower/json/sunflower_000_xiao_rp2040.json
- Source files : https://github.com/hide-key/testamatta/tree/main/sunflower/000/xiao_rp2040
If you want to use UF2 file, boot XIAO RP2040 in bootloader mode and upload the downloaded UF2 file.
*Connect the XIAO RP2040 and the work PC with a USB cable, and press the RESET button while pressing the BOOT button. It will be recognized as a drive, so drag and drop the UF2 file. Once uploaded, it will be unmounted and reconnected automatically.
After that, use REMAP to make your favorite keymap.
Completing
Once the assembly is complete, place the leafs and you are done.