Screenshot of the blog post, showing how you can optimize your battery level measurement resistor dividers, among many other things

Making Your Wireless Keyboard Truly Low-Power

The basics of keyboard design are tried and true at this point, but there are still a few aspects yet unconquered. One of them is making your keyboards wireless. You might think it’s easy, but if you just slap a wireless-enabled microcontroller onto your board, you’ll soon be left with a dead battery. Rejoice – [Pete Johanson], creator of ZMK, tells all that you want to know about making your keyboard low-power.

In a lengthy blog post, he goes through everything that a typical keyboard consists of, and points out factor after factor that you never knew could cause a spike in power consumption. Are you using muxes or config options that will force your MCU to always stay alert? Is your voltage regulator’s quiescent current low enough, and can the same be said about other parts you’re using? Does your MCU have to work extra hard transmitting bytes because you’ve put a copper fill under its antenna? Most importantly, is the firmware you’re using designed to optimize power consumption at its core?

If you’ve ever thought about designing low-power keyboards, hell, any low-power device, you seriously should read this post – it will set you at ease by giving you a checklist of things to do, and it also links to quite a few other useful resources, like the ZMK power profiler. Perhaps, if you’re building a wireless keyboard or just creating battery-powered device, you should consider ZMK, as it sure seems to be written with energy efficiency in mind.

Want to learn more about what it takes to build a low-power device? Our 2023 Low-Power Contest attracted a wide range of entrants, and they’ve shared a flurry of methods and tricks you can use to build any sort of battery-juice-sipping gadget.

A Google Pixel 7 with a detachable Bluetooth keyboard.

BlueBerry Is A Smartphone-Agnostic Keyboard Firmware

If you’re anything like us, you really, really miss having a physical keyboard on your phone. Well, cry no more, because [Joe LiTrenta] has made it possible for any modern smartphone whatsoever to have a detachable, physical keyboard and mouse at the ready. [Joe] calls this creation the BlueBerry.

A couple of metal plates and a mag-safe pop socket connect a Bluetooth keyboard to a Google Pixel 7. The keyboard/mouse combo in question is a little BlackBerry Bluetooth number from ZitaoTech which is available on Tindie, ready to go in a 3D printed case. What [Joe] has done is to create a custom ZMK-based firmware that allows the keyboard be device-agnostic.

In order to easily mount the keyboard to the phone and make it detachable, [Joe] used adhesive-backed metal mounting plates on both the phone and the keyboard, and a mag-safe pop socket to connect the two. The firmware makes use of layers so everything is easily accessible.

Check out the demo video after the break, which shows the board connected to a Google Pixel 7. It makes the phone comically long, but having a physical keyboard again is serious business, so who’s laughing now? We’d love to see a keyboard that attaches to the broad side of the phone, so someone get on that. Please?

Do you have a PinePhone? There’s an extremely cute keyboard for that.

Continue reading “BlueBerry Is A Smartphone-Agnostic Keyboard Firmware”

Hackaday Prize 2023: Bluetooth Spell To Speak

Have you ever known what you wanted to say but couldn’t figure out exactly how to say it? For some individuals, that’s all the time. The gap between intention and action can be a massive chasm. [Pedro Martin] is trying to help bridge that gap with a Bluetooth RPM letterboard.

[Soma Mukhopadhyay] developed Rapid Prompting Method (RPM) for teachers to work with students with autism. Gentle physical cues can help individuals complete motor movements, which can be used as a communication mechanism by pointing to a letterboard. Students can eventually move onto an tablet, but some students see the light as sensory noise or might associate it with playtime.

[Pedro] hopes that his letterboard will be able to provide tactile feedback for each letter to strengthen the connection the teacher is trying to establish. The letter board is a 22 by 14 grid (308 total) of touch electrodes connected to three MPR121 12-channel capacitive touch sensors connected to an ESP32 via I2C. Additionally, 60 LEDS controlled by two shift registers are interspaced between the touch electrodes. As only one LED will be on at a given time, [Pedro] can use the shift registers in a row/column setup since the current draw should be small. A piezo buzzer serves as additional feedback for the student. The ESP32 emulates a Bluetooth keyboard, so the teacher doesn’t have to keep track of what the student is spelling and can focus on RPM.

[Pedro] encountered the usual slew of debugging problems, such as ground bouncing, captive noise, and Bluetooth wonkiness. The code, KiCad, and STL files are on the Hackaday.io project page. If you want more accessibility-focused keyboards, look at the RP2040-based Intellikeys we saw recently.

Continue reading “Hackaday Prize 2023: Bluetooth Spell To Speak”

An orange m5stickc plus strapped to a wrist in the foreground with the persons other hand pressing down on the top of an installed hat, communicating with another m5stickc plus in the background on the table.

M5StickC Turned Wearable Morse Code Trainer

Have you ever felt the options for Morse code communication were too limited? Well, look no further than [marsPRE]’s open source WristMorse communicator that can connect over WiFi, can act as a Bluetooth keyboard or just be used as a Morse Code trainer.

a 'hat' for an m5stickc plus with a single row pin header exposted, a 2.5mm jack and two capacitive touch buttons on the top and bottom of the hat.

[marsPRE] uses the M5StickC Plus as the base device and attaches a custom “hat” consisting of a 2.5 mm plug for a radio connection and two capacitive touch paddles that act as the Morse Code keyer. The add-on is housed in what looks like a custom 3D print and hangs off of the end of the M5StickC Plus, connecting the hat through an eight 0.1 inch pin header.

Using the M5StickC Plus allows [marsPRE] to focus on the software, providing different options for training, communication and even using the device as a Bluetooth keyboard. The two touch sensors allow for a semi automatic keying, with the top sensor used for long dashes and the bottom sensor used for short dashes.

[marsPRE] took inspiration from the Morserino-32 and has made the wrist morse code trainer open source software and available through GitHub for anyone wanting to take a look. Morse code may an old encoding method but it’s one that’s worthy of respect. You never know when you might need to send a message from your dreams or to translate spoken word Morse code.

Continue reading “M5StickC Turned Wearable Morse Code Trainer”

The Beat Goes On With This ESP32 Page Turner

Looking for a hands-free way to page through sheet music on an iPad, [The_Larch] came up with this simple Bluetooth input device based on the ESP32. The microcontroller just needed to have two switches wired into the GPIO pins, in this case the same heavy-duty plungers you’d find on a guitar pedal, and a USB bulkhead pass-through to provide power. Thanks to the excellent ESP32-BLE-Keyboard library, it only took a few lines of code to fire off the appropriate key strokes when the left or right button was pressed.

While undeniably a simple project from an electronics standpoint, the wooden enclosure [The_Larch] built is an interesting change of pace from the 3D printed fare we normally see around these parts. It started life as strips of oak reclaimed from an old kitchen table, which were laminated together to make a solid block. A large spade bit was then used to bore into the block to make a void for the electronics, and a second flat piece of oak was fashioned into a front panel.

Creating Bluetooth input devices with the ESP32 is so incredibly straightforward that we’re honestly a little surprised we don’t see the trick used more often. Especially when you consider all of the custom made keyboards that have graced these pages over the last couple of years. The tools are available for anyone who wants them, so you have to wonder if hackers just aren’t fond of using Bluetooth for something as important as a keyboard?

Inputs Of Interest: DecaTxt Ultra-Portable Chording Keyboard

Now here’s a stocking stuffer of a keyboard. The DecaTxt is the size of a deck of cards, and at first glance it looks like some kind of pocket Keno machine or other gambling or gaming apparatus. But that’s just because it’s so colorful. When you only have ten keys emulating a full keyboard, there’s bound to be some serious labeling going on, as there should be.

DecaTxt demonstration from IN10DID

The DecaTxt is a Bluetooth 4.0 chording keyboard that’s meant to be used with your phone or whatever you want to pair it with. It was originally called the In10did, which stands for Input Nomenclature Ten Digit Interface Device. Catchy, no? At some point in the last ten years, this little guy went wireless and got a cooler name — the DecaTxt. Continue reading “Inputs Of Interest: DecaTxt Ultra-Portable Chording Keyboard”

This Compact Pi Terminal Will Show You The Way

The Raspberry Pi holds incredible promise for those looking to build a small mobile terminal that they can take with them on the go, something you can throw into your bag and pull out whenever there’s some hacking to be done. But getting the diminutive Linux board to that point can take quite a bit of work. You need to find a suitably small keyboard, design a custom case, and wire it all up without letting any of that pesky Magic Smoke escape.

But a recent project from [remag293] might make things a bit easier for those looking to get their feet wet in the world of custom mobile computers. The boxy handheld device has everything you need, and nothing you don’t. A basic case, a short parts list, and an absolute minimum of wiring. What’s not to love? Even if you don’t make an exact clone of this device, it’s an excellent reference to quickly bootstrap your own bespoke terminal.

So what’s inside the 3D printed case? Not a whole lot, really. Obviously there’s a Raspberry Pi, a 3.5 inch TFT touch screen display, and a miniature keyboard. The keyboard is of the Bluetooth variety, and other than being freed from its enclosure and wired into the header on the display module for power, it’s otherwise stock.

As for the parts you can’t see from the outside, there’s a 3.7 V 4400 mAh battery pack and an Adafruit PowerBoost 1000 module to handle charging and power distribution. Beyond the big lighted button on the side (which you could certainly replace with something more low-key should you chose), that’s about it. When it’s all together, you’ve got a battery powered computer that’s ready for the road with a minimum amount of fuss.

If you’re looking for something that’s a bit larger, and more than a little unconventional, you could start by printing out a full cyberdeck. After all, if you’re going to build your own non-traditional portable computer, you might as well go all out.