The Pi 500 Turned Overkill Bluetooth Keyboard

Perhaps we’ve all found ourselves at one time or another with more computers in use than keyboards and other peripherals at hand to use them with. With a single user you can make do with remote terminals or by simply plugging and unplugging, but with multiple users it’s not so easy.

CNX Software’s [Jean-Luc Aufranc] had just such a problem involving broken keyboards and a forgotten wireless dongle, but fortunately he had just reviewed the latest version of the Raspberry Pi 500 all-in-one computer with the fancy mechanical switches. His keyboard solution is inspired but completely overkill: to use the full power of the compact Linux machine to emulate a Bluetooth keyboard.

At the heart of this hack is btferret, a Bluetooth library. Run the appropriate software on your Pi, and straight away you’ll have a Bluetooth keyboard. It seems there’s a bit of keymap tomfoolery to be had, and hitting the escape key terminates the program — we would be caught by that SO many times! — but it’s one of those simple hacks it pays to know about in case like him you need to get out of a hole and happen to have one of the range of Pi all-in-one machines to hand.

Another Thermal Printer, Conquered

The arrival of cheap thermal printer mechanisms over the last few years has led to a burst of printer hacking in our community, and we’re sure many of you will like us have one knocking around somewhere. There are a variety of different models on the market, and since they often appear in discount stores we frequently see new ones requiring their own reverse engineering effort. [Mel] has done some work on just such a model, the Core Innovation CTP-500, which can be found at Walmart.

The write-up is a tale of Bluetooth reverse engineering as much as it is one about the device itself, as he sniffs the protocol it uses, and finds inspiration from the work of others on similar peripherals. The resulting Python app can be found in his GitHub repository, and includes a TK GUI for ease of use. We like this work and since there’s an analogous printer from a European store sitting on the Hackaday bench as we write this, it’s likely we’ll be giving it a very close look.

Meanwhile if [Mel] sounds a little familiar it might be because of their print-in-place PCB holder we featured recently.

Build Your Own Force-Feedback Joystick

Force feedback joysticks are prized for creating a more realistic experience when used with software like flight sims. Sadly, you can’t say the same thing about using them with mech games, because mechs aren’t real. In any case, [zeroshot] whipped up their own stick from scratch for that added dose of realistic feedback in-game.

[zeroshot] designed a simple gimbal to allow the stick to move in two axes, relying primarily on 3D-printed components combined with a smattering of off-the-shelf bearings. For force feedback, an Arduino Micro uses via TMC2208 stepper drivers to control a pair of stepper motors, which can apply force to the stick in each axis via belt-driven pulleys. Meanwhile, the joystick’s position on each axis is tracked via magnetic encoders. The Arduino feeds this data to an attached computer by acting as a USB HID device.

We’ve seen some other great advanced joystick projects over years, too. Never underestimate how much a little haptic feedback can add to immersion.

Continue reading “Build Your Own Force-Feedback Joystick”

Budget Stream Deck Clone Is Ripe For Hacking

The original Stream Deck was a purpose-built device to make it easier to manage a live video stream on the fly. Since its release, many other similar products have hit the market. Among them is the Ulanzi D200 U-Studio, which is proving popular with hackers for good reason.

[Rodrigo Laneth] has been digging into the D200, and found out it’s running Linux 5.10.160 on a quad-core Rockchip RK3308HS chip. Notably, he determined the kernel appears to be from Android, but that Ulanzi removed the Android userspace and “slapped Buildroot on top,” in his own words. Interesting, if not that unusual. What is key, however, is that the device has a fully open adb root shell, as noted by [lucasteske], which inspired [Rodrigo]’s investigation. This pretty much allows full access to the device, so you can make it do whatever weird thing your heart desires.

As you might expect, people are already making the D200 do fun stuff. [lucasteske] got it running DOOM in short order. Meanwhile, [Rodrigo] has it playing out Bad Apple!! at 30 FPS, with code and a deeper explanation available on GitHub.

It’s rare these days that manufacturers leave root open on any commercial device. You normally need to pull a few tricks to get that kind of access.

Continue reading “Budget Stream Deck Clone Is Ripe For Hacking”

Motors Make The Best Knobs With SimpleFOC

The worst thing about a volume knob is that, having connected it to a computer, it might be wrong: if you’ve manually altered the volume settings somewhere else, the knob’s reading won’t be correct. [I Got Distracted] has a quick tutorial on YouTube showing how to use a BLDC, a hall effect sensor, Pi Pico and the SimpleFOC library to make a knob with active haptic feedback and positioning.

We covered the SimpleFOC library a few years ago, but in case you missed it, it’s, well, a simple library for FOC on all of our favorite microcontrollers, from Arduino to ESP to Pico. FOC stands for field-oriented control, which is a particular way of providing smooth, precise control to BLDCs. (That’s a BrushLess DC motor, if the slightly-odd acronym is new to you.) [I Got Distracted] explains exactly how that works, and shows us just how simple the SimpleFOC project is to use in this video.  Why, they even produce their own motor controllers, for a fully-integrated experience. (You aren’t restricted to that hardware, but it certainly does make things easy.)

The haptic feedback and self-dialing knob make for an easy introductory project, but seeing how quick it hacks together, you can doubtless think of other possibilities. The SimpleFOC controller used in this video is limited to relatively small motors, but if you want to drive hundreds of kilowatts through open source hardware, we’ve covered that, too.  

Arguably, using a motor as a knob isn’t within the design spec, and so could almost qualify for our ongoing Component Abuse Challenge, had [I Got Distracted] thought to enter.

Continue reading “Motors Make The Best Knobs With SimpleFOC”

Google Japan Turn Out Another Keyboard, And It’s A Dial

There’s a joke that does the rounds, about a teenager being given a dial phone and being unable to make head nor tail of it.  Whether or not it’s true, we’re guessing that the same teen might be just a stumped by this year’s keyboard oddity from Google Japan. It replaces keys with a series of dials that work in the same way as the telephone dial of old. Could you dial your way through typing?

All the files to make the board, as well as a build guide, are in the GitHub repository linked above, but they’ve also released a promotional video that we’ve put below the break. The dials use 3D printed parts, and a rotary encoder to detect the key in question. We remember from back in the day how there were speed dialing techniques with dial phones, something we’ve probably by now lost the muscle memory for.

We like this board for its quirkiness, and while it might become a little tedious to type a Hackaday piece on it, there might be some entertainment for old-timers in watching the youngsters figuring it out. If you’re hungry for more, we’ve covered them before.

Continue reading “Google Japan Turn Out Another Keyboard, And It’s A Dial”

An FPGA-Based Mechanical Keyboard

You can buy all kinds of keyboards these days, from basic big-brand stuff to obscure mechanical delicacies from small-time builders. Or, you can go the maker route, and build your own. That’s precisely what [Lambert Sartory] did with their Clavier build.

This build goes a bit of a different route to many other DIY keyboards out there, in that [Lambert] was keen to build it around an FPGA instead of an off-the-shelf microcontroller. To that end, the entire USB HID stack was implemented in VHDL on a Lattice ECP5 chip. It was a heavy-duty way to go, but it makes the keyboard quite unique compared to those that just rely on existing HID libraries to do the job. This onboard hardware also allowed [Lambert] to include JTAG, SPI, I2C, and UART interfaces right on the keyboard, as well as a USB hub for good measure.

As for the mechanical design, it’s a full-size 105-key ISO keyboard with one bonus key for good measure. That’s the coffee key, which either locks the attached computer when you’re going for a break, or resets the FPGA with a long press just in case it’s necessary. It’s built with Cherry MX compatible switches, has N-key rollover capability, and a mighty 1000 Hz polling rate. If you can exceed that by hand, you’re some sort of superhuman.

The great thing about building your own keyboard is you can put in whatever features you desire. If you’re whipping up your own neat interface devices, don’t hesitate to let us know!