
Project Name: ESP32C3 Single Mode Bluetooth Keyboard ZY-17
Project Author: WSMALL_DA

This open-source project looks like a keyboard, but it really is a keyboard… but it is not ordinary, and it is low-cost, suitable for DIY!
I absolutely love its touch slider function!! Let’s take a look together!

I spent 80 yuan to make a single-mode Bluetooth keyboard based on ESP32C3.
The keyboard includes numeric area keys, light control knobs, and multimedia control sliders.
Supports hot-swapping, RGB lighting effects, full key anti-ghosting, and low power mode.
This article mainly introduces the keyboard’s: functions, DIY materials, installation process, program, design diagrams, and open-source materials.

Single-mode Bluetooth keyboard, compatible with Windows systems, the key area supports Num Lock mode switching, currently does not support remapping.
The knob is used to adjust the RGB lighting effects of the keyboard, including: on/off, brightness switching, and lighting mode switching functions.
The touch slider is used for multimedia control, including: volume up, volume down, previous track, next track, pause/play, mute/unmute, and disable/enable slider function.
If the keyboard is inactive for 20 minutes, it will automatically enter low power mode, and it takes 2-3 seconds to reconnect Bluetooth upon reactivation.
When the switch on the back of the keyboard is set to ON, it can also directly enter low power mode.


Name | Description |
---|---|
Core Board | Haozhao ESP32C3 Simple Version |
Lithium Battery | Size: 90x55x6mm (length x width x height) |
Other Electronic Components | See BOM table |
Keyboard Components |
Keyboard switch x1 2U satellite switch x3 Keycap set for numeric keypad Knob cap x1 |
Shell | 3D printed, printing files see attachment |
Screws |
Flat-head screws Diameter x length: 2x4mm, quantity: 4 Diameter x length: 2x14mm, quantity: 4 |
PCB | Direct export, DRC check without errors |

Refer to the following image to solder components and install the lithium battery.


Use Arduino IDE to burn the program, and test the keyboard function.
Use 2x4mm screws to fix the PCB to the bottom shell.
Use 2x14mm screws to fix the top shell to the bottom shell.


Refer to the following image to install the switches, keycaps, and knob caps, and paint the shell as needed. This requires 3 2U satellite switches.


This keyboard is developed based on Arduino IDE, so you need to install the corresponding esp32 development board package.
The configuration for the device is as follows.


Since the simplified version of the ESP32C3 core board is used, the download method is set to “Internal USB”.
To achieve keyboard functionality, the following libraries need to be added in Arduino:
① WS2812FX library, to achieve RGB effects.
② NimBLE-Arduino library, to make BLE implementation more lightweight.
③ ESP32-BLE-Keyboard library, to achieve Bluetooth keyboard functionality.
Note: You need to add #define USE_NIMBLE at the beginning to enable NimBLE.
④ TaskScheduler library, to achieve multitasking.
After successful compilation, connect the development board using a USB data cable to download.




All materials for this project are open source. If you need 【3D shell, circuit, program】 source files for DIY learning, please scan the QR code to go to the original project to get them.

You can also click the end of the article “Read the original text” to enter the original project.
PS: Please open the 【Open Source Page】 and 【Circuit Source File】 on a computer~
*This article is a reprint of user creations from the “Lichuang Open Source Hardware Platform”. If there is any infringement, please contact to delete.
