The smart modular keyboard sports an E-ink display and a haptic back button

While most people may think of a keyboard as just a board with keys, those who read Hackaday will no doubt know that there is an endless variety of beautiful designs to suit everyone the use cases. [Peng Zhihui] is the latest to impress us with an excellent custom keyboard that packs several unusual features (video in Chinese, with English subtitles, embedded below). What started as a simple confinement project has turned into what [Zhihui] imagines to be the ultimate keyboard for his daily tasks. At first glance, it may look like another custom keyboard with mechanical switches, but when you look inside, you'll find it full of clever design tricks and cool features.

When he started designing the main key area, [Zhihui] could have used any open source keyboard framework. Instead, he decided to do it all himself in order to get maximum performance and configurability. This went all the way to the readout circuit: rather than wiring the switches in a matrix, as most keyboards do, it used a set of shift registers. This allows the main ARM controller to read each key separately, eliminating ghosting and allowing any number of keys to be pressed simultaneously. The shift registers are driven by a 4 MHz SPI clock, which means that a full scan of all keys takes just 40 microseconds.

A scrolling and e-ink screen attached to the side of a keyboardThis is awesome, but what makes this project really interesting is an expansion module on the left side of the keyboard that turns it into what [Zhihui] calls a "smart keyboard". The lower part of this module has an E-ink screen that can display a variety of useful information: current memory usage, email notifications or just the weather forecast.

Next to the large E-ink display is a small OLED display that works in tandem with a haptic feedback button. Based on a brushless DC motor, this button can be configured in different ways to perform several different tasks. It can be set to frictionless rotation mode, which is useful for quickly scrolling through long documents. It can become a multi-level switch to enable or disable features, or a volume knob with virtual stops. There's even an option to use it as a physical indicator for things like current CPU usage.

The keyboard also houses a USB hub for connecting other gadgets, as well as a lithium battery to power the haptic button, as it uses more power than a standard USB 2.0 port can supply. There's even a small capacitive touch strip below the space bar, which lets you use one of your thumbs to switch between different tabs or to use quick copy/paste functions.

If this all sounds like your idea of ​​a perfect keyboard, then you'll be glad to hear that [Zhihui] plans to open up all hardware and software designs once it cleans up its code. In the meantime, you may want to learn more about how a haptic smart button works or find out what is the most efficient way to read a number of buttons with a microcontroller.

The smart modular keyboard sports an E-ink display and a haptic back button

While most people may think of a keyboard as just a board with keys, those who read Hackaday will no doubt know that there is an endless variety of beautiful designs to suit everyone the use cases. [Peng Zhihui] is the latest to impress us with an excellent custom keyboard that packs several unusual features (video in Chinese, with English subtitles, embedded below). What started as a simple confinement project has turned into what [Zhihui] imagines to be the ultimate keyboard for his daily tasks. At first glance, it may look like another custom keyboard with mechanical switches, but when you look inside, you'll find it full of clever design tricks and cool features.

When he started designing the main key area, [Zhihui] could have used any open source keyboard framework. Instead, he decided to do it all himself in order to get maximum performance and configurability. This went all the way to the readout circuit: rather than wiring the switches in a matrix, as most keyboards do, it used a set of shift registers. This allows the main ARM controller to read each key separately, eliminating ghosting and allowing any number of keys to be pressed simultaneously. The shift registers are driven by a 4 MHz SPI clock, which means that a full scan of all keys takes just 40 microseconds.

A scrolling and e-ink screen attached to the side of a keyboardThis is awesome, but what makes this project really interesting is an expansion module on the left side of the keyboard that turns it into what [Zhihui] calls a "smart keyboard". The lower part of this module has an E-ink screen that can display a variety of useful information: current memory usage, email notifications or just the weather forecast.

Next to the large E-ink display is a small OLED display that works in tandem with a haptic feedback button. Based on a brushless DC motor, this button can be configured in different ways to perform several different tasks. It can be set to frictionless rotation mode, which is useful for quickly scrolling through long documents. It can become a multi-level switch to enable or disable features, or a volume knob with virtual stops. There's even an option to use it as a physical indicator for things like current CPU usage.

The keyboard also houses a USB hub for connecting other gadgets, as well as a lithium battery to power the haptic button, as it uses more power than a standard USB 2.0 port can supply. There's even a small capacitive touch strip below the space bar, which lets you use one of your thumbs to switch between different tabs or to use quick copy/paste functions.

If this all sounds like your idea of ​​a perfect keyboard, then you'll be glad to hear that [Zhihui] plans to open up all hardware and software designs once it cleans up its code. In the meantime, you may want to learn more about how a haptic smart button works or find out what is the most efficient way to read a number of buttons with a microcontroller.

What's Your Reaction?

like

dislike

love

funny

angry

sad

wow