Editor Version ×
recommended

Pro Edition

free

Brand new interactions and interfaces

Smooth support for design sizes of over 3W

devices or 10W pads

More rigorous design constraints, more

standardized processes

For enterprises, more professional users

Std Edition

Easy to use and quick to get started

The process supports design scales of 300

devices or 1000 pads

Supports simple circuit simulation

For students, teachers, creators

Completed

PRO MakerLab ESP32C3 single mode Bluetooth keypad ZY-17W

ESP32C3 single mode Bluetooth keypad ZY-17W

Project tags

License

GPL 3.0

License: GPL 3.0

Mode:

Mode

Editors' pick

Editors' pick

  • 8
  • 0
  • 0
Update time: 2024-11-22 06:26:36
Creation time: 2024-11-22 03:02:04
Description

Description

1. Finished product effect display

For specific functions and details, please watch the video of Station B:

[Open source]17-key Bluetooth keypad knob + slider + RGB support hot-swappable/full-key rollover/low-power hibernation_Bilibili_bilibili

81EFatdw39WSRPS4HybJB5IQVZyYsfv6ufu3dGMo.jpeg

uppq81qxxOVJvDMP1BT8SsZbMti4FdDqxVIJg6VZ.jpeg

W1074mJWQ14My2bSCQxHfP7qLOuVC9nHKuthxXSe.jpeg

bAIATtZIvhxmMPVRfuP8RTqT9zqcmxKeGaW6nKEN.png

 

2. Preparation of materials

(1) Core board: Hezhou ESP32C3 simple model (the classic model is theoretically feasible and not tested)

hIM7XYHf5GoKiQO0Wi4sOnt4BW9Au3d0daLyjXuM.jpeg

(2) Lithium battery: the size is not more than 90x55x6mm (length x width x height), the capacity can be selected according to the needs of battery life, and the joint form is 1.25 black and red.

BEcE6oHEmu9BR9xGjF7W5iigxn7r4HGY3i26IxSW.jpeg

(3) PCB: direct export, DRC check error-free.

(4) Other electronic components: see the BOM list, some problems can be judged by yourself.

The following station B silently _v the list of materials that helped organize it can also be used as a reference.

1B8jo9IqhcqGakxcEQvzHWU8mcZCeNggYAdrhAuY.png

(5) Keyboard components: keyboard switch body x17, 2U satellite axis x3, keycap in keypad area 1 set, knob cap x1 (selected according to knob connection form)

(6) Shell: 3D printing, see attachment for printing documents.

(7) Screws: Flat head screws (diameter x length) 2x4mm quantity 4 2x14mm quantity 4.

HFnVDkOCKahCLvZVbP1oFM9HGtkWqFpXYUKbidKu.jpeg

 

3. Production process

o5uLPkAPQdKr2hCgGrqMxHVup7JBxQ03jbBX32Hm.jpeg

3.1 Component soldering

As shown below, solder the components and install the lithium battery.

ove27Cag3qd1nRj5OxDVOYlUKbODYtdDW2IR7TrO.jpeg

eX8BHyYuRoAY7bHpolL4GiBk6LDHpbMHnBiSt4es.jpeg

3.2 Burning program

Use the Arduino IDE to burn the program and test the keyboard function, the program related content will be introduced later.

3.3 Installing the Backshell

Fix the PCB to the bottom case with 2x4mm screws.

YbW0hvOPPMtxsmIGLfoo1stKThy8sdOQf1JoqTPM.jpeg

3.4 Installing the Top Case

The top shell is secured to the bottom shell by means of 2x14mm screws.

nYrENMcmAVhKrqyfctU7uhVXk9nRqlIkAaBiTYPV.jpeg

PJak6UHst3SwxbKYiyisvaAoHilO0p42txZb4PVG.jpeg

3.5 Install the shaft body, keycaps, and knobs

As shown in the figure below, the shaft body, keycaps, and knob caps can be installed, and the housing can be painted as needed, and three 2U satellite shafts are required here.

jq719CAGI27WizYuwZiOVAaMTxqilTOEagWuwG2w.jpeg

 

4. Description of the Procedure

4.1 Compilation Environment Support

This keyboard is developed based on the Arduino IDE, so you need to install the corresponding esp32 development board package, and there are many online tutorials, so I will not repeat them here. The configuration of the device is as follows, because the simplified version of the ESP32C3 core board is used, so the download method is "Internal USB".

MRBbzlgPa17Bg61zHkAdslRhJyTP5OltlbymmRcq.png

CeQtzea6UrTUl8zTwc8uNEe0qn48mxwiLypSVGKE.png

4.2 Instructions for Using the Library

For keyboard functionality, you need to add the following libraries to Arduino:

(1) WS2812FX library to achieve RGB effect.

tS3NLJgU5cPNlHp0YT4SpNdUtNuhd833LEjpFPBV.png

(2) NimBLE-Arduino library to make BLE implementation more lightweight.

yv97gOXH4IS9hIdl6GCY6qWm4WyfTfFSRsE3k2qz.png

(3) ESP32-BLE-Keyboard library to realize Bluetooth keyboard function.

Link: https://github.com/T-vK/ESP32-BLE-Keyboard

Note: You need to add a #define USE_NIMBLE at the beginning before or after installation to enable NimBLE.

x169L92LNn3UlhM4Gpr8FP8Svw9BUCsCZEw9fixm.png

If there is a problem with the compilation of this library, you can use the program files with the keyboard library provided in the attachment (other libraries still need to be installed)

(4) TaskScheduler library to enable multitasking

ixMdOlVf8FiyOUUkEExV1LMtp3am9yusx9EA4HHa.png

4.3 Compiling and Downloading

After the compilation is successful, connect the development board with a USB cable to download.

cOqT3y4yCtEjalxSk71xuUkMwYnr0o1tLZNuyPj3.png

 

5. Function Introduction

The detailed operation method and effect can be found in the video of Bilibili.

7yFUzi2FYswww9Bgj3WDsnMUjRLBLjdVQ34iakMa.jpeg

5.1 Key Functions

This keyboard is only a single-mode Bluetooth keyboard, currently does not support key change, suitable for Windows system, the key area supports Num Lock mode switching.

5.2 Knob Function

The knob is used to adjust the RGB lighting effect of the keyboard, and the functions are shown in the table below.

Knob operation Effect
Tap (with lights on) Toggle the light mode
 Tap (with lights off) Turn on the lights
Press and hold Turn off the lights
Rotate clockwise Reduce the brightness of the light
Rotate counterclockwise Increase the brightness of the light

5.3 Touch slider function

The touch slider is used for multimedia control, and the functions are shown in the table below.

Touch operation Effect
Swipe from bottom to top and hold Volume up
Swipe down from top to bottom and hold The volume decreases
Swipe from the bottom to the top (do not hold with long press) Previous one
Swipe from top to bottom (don't hold with long press) Next one
Tap it Pause/Play
Press and hold the lower middle of the slider Mute/sound
Press and hold the upper part of the slider Disable/enable the slider feature

*The principle of the slider here is only based on the judgment of the touch switch, and cannot accurately judge the touch position, which is considered a pseudo-slider.

5.4 Low Power Mode

(1) When the switch at the bottom of the two switches on the back of the keyboard is turned to ON, if the keyboard is not operated within 20min, it will enter the low-power mode by itself. The duration of entry can be defined in the program;

(2) If you want to operate the switch externally after the installation is completed, you need to open the bottom shell opening before installation;

(3) After entering deep sleep (after low power mode), you can wake up by touching the slider or pressing the knob, because the Bluetooth of the keyboard is turned off in low power consumption mode, it is necessary to wait for the Bluetooth connection (3~5s) button to respond after waking up.

m8ON2PPugq100vuEjDSrWjGRle6SIvsDx0ZcQrlk.jpeg

(4) The power consumption in each case is shown in the following table, taking the power supply voltage of 3.7V as an example.

State The magnitude of the current Test
No light operation mode About 93mA 4t65nnzc3GjckSXJ8hO5pQcAsaMqo6QBSAy9lVq3.jpeg
Low brightness mode of operation

About 105mA

(related to display color)

csWaSWKfWYbEXPFGR7swoJhiWOceqDKNb0iUpzQm.jpeg
High brightness mode of operation

140~230mA

(related to display color)

sTuttoaodh2vGUVVLnAeLMtTSKYqmBW5yuBO3Ih8.jpeg
Low power mode About 9.5mA OaIqWcntmllFOLoLmjgsK61ZesGJXyOCSBzXAFnR.jpeg

*The power consumption of ESP32 series Bluetooth is indeed quite high, and there will be an opportunity to try to use Qinheng's chip development later.

Designed by SMALL_DA (from OSHWHub)

Link:https://oshwhub.com/small_da/ESP32C3-dan-mu-lan-ya-jian-pan

Design Drawing

Design Drawing

schematic diagram
1 /
PCB
1 /
The preview image was not generated, please save it again in the editor.
Empty
Project Attachments

Project Attachments

Project Members

Project Members

Target complaint
Related Projects
Change a batch
Loading...

Comment

Add to album ×

Loading...

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微信号

    easyeda

  • QQ交流群

    664186054

  • 立创EDA公众号

    lceda-cn