Zero To Custom MacroPad In 37 Easy Steps

[Jeremy Weatherford] clearly has a knack for explaining projects well enough for easy reproduction but goes way further than most and has created a four-part YouTube series detailing every step from project inception to the final assembly, covering all aspects of 3D modelling and PCB design for a custom MacroPad design. Many tools are introduced along the way, all of which help reduce complexity and, by extension, the scope for errors. As every beginner hacker knows, early successes breed confidence and make for better and more ambitious projects.

Part 1 covers the project motivation and scope and introduces a keyboard layout editor tool. This tool allows one to take a layout idea and generate a JSON file, which is then used to drive keyboard tools. XYZ to produce a usable KiCAD project. The tool only generates a PCB project and an associated netlist file. No schematic is created; you don’t need one for a simple layout.

A very basic keyboard layout

Part 2 is a walkthrough of the design process in KiCAD, culminating in ordering the PCB from JLCPCB and assembling the surface-mount parts. This particular design uses a controller based on the Sea-Picro RP2040 module, but there are many options if you have other preferences. [Jeremy] shows what’s possible with the selected suppliers, but you need not follow this step precisely if you have other ideas or want to use someone local.

Part 3 covers exporting the mechanical aspects of the PCB out of KiCAD and into a 3D CAD program, specifically OnShape. [Jeremy] covers some crucial details, such as how to read the mechanical drawing of the keys to work out where to place the top plate. It’s very easy to plough straight in at this stage and make a design which cannot be assembled! The plan is to use a simple laser-cut box with a bottom plate with mounting holes lining up with those on the PCB. A Top plate is created by taking the outline of the PCB and adding a little margin. An array of rectangular cutouts are designed for the keys to protrude, lining up perfectly with where the keys would be when mounted on the PCB below.  The sides of the case are formed from laser-cut sections that lock into each other and the laser-cut base—using the laser joint feature-script addon tool from the OnShape community channel. A second feature script addon is used to auto-layout the laser-cut components onto a single sheet. A CAM application called Kiri Moto is used to export for laser cutting and is available on the OnShape store.

Continue reading “Zero To Custom MacroPad In 37 Easy Steps”

Open-Source, 3D Printed Trackpad

Touchpads, or trackpads, have been around since the 1980s. Today, you can often find them in laptops and notebook computers as pointing devices. With no moving parts, a trackpad are easy to integrate into the body of a portable computer.  they’re much smaller than the traditional mouse. Until the advent of multitouch and gestures over the past two decades, though, they were generally poor substitutes for an actual mouse. These days, trackpads have enough features that some users prefer them even on their desktop computers. If you’re that type of person and don’t want to shell out a big pile of money for an Apple, Logitech, or other off-the-shelf trackpad you can always build your own.

Continue reading “Open-Source, 3D Printed Trackpad”

Illustrated Kristina with an IBM Model M keyboard floating between her hands.

Keebin’ With Kristina: The One With The (Mc)Cool Typewriter

A hand and wrist with a gesture detection ring and a control box on the wrist.
Image by [ambrush] via Hackaday.IO
Okay, so this isn’t a traditional keyboard, but you can probably figure out why the RuneRing is here. Because it’s awesome! Now, let me give you the finer points.

Hugely inspired by both ErgO and Somatic, RuneRing is a machine learning-equipped wearable mouse-keyboard that has a configurable, onboard ML database that can be set up to detect any gesture.

Inside the ring is a BMI160 6-axis IMU that sends gesture data to the Seeed Studio nRF52840 mounted on the wrist. Everything is powered with an 80mAh Li-Po lifted from a broken pair of earbuds.

Instead of using a classifier neural network, RuneRing converts IMU data to points in 24-dimensional space. Detecting shapes is done with a statistical check. The result is a fast and highly versatile system that can detect a new shape with as few as five samples.

Continue reading “Keebin’ With Kristina: The One With The (Mc)Cool Typewriter”

Microsoft Sculpt Keyboard Lives Again With RP2040

Hackaday readers are likely the kind of folks that have a favorite keyboard, so you can probably imagine how devastating it would be to find out that the board you’ve sworn by for years is going out of production. Even worse, the board has some internal gremlins that show up after a few years of use, so functional ones in the second-hand market are becoming increasingly rare. So what do you do?

This is the position [TechBeret] recently found himself in with his beloved Sculpt keyboard. When Microsoft decided to step back from the peripheral market last year, he started looking at alternatives. Finding none of them appealing, he decided instead to breathe new life into the ergonomic keyboard with the RP2040. Every aspect of the resurrection is covered in a phenomenally detailed write-up on his blog, making this a valuable case study in modernizing peripherals with the popular microcontroller.

Continue reading “Microsoft Sculpt Keyboard Lives Again With RP2040”

Illustrated Kristina with an IBM Model M keyboard floating between her hands.

Keebin’ With Kristina: The One With The KiCad Plugin

A low-profile split keyboard with a sliding, round track pad on each half.
Image by [fata1err0r81] via reddit
The most striking feature of the Tenshi keyboard has to be those dual track pads. But then you notice that [fata1err0r81] managed to sneak in two extra thumb keys on the left, and that those are tilted for comfort and ease of actuation.

The name Tenshi means ‘angel’ in Japanese, and creator [fata1err0r81] says that the track pads are the halos. Each one slides on a cool 3D-printed track that’s shaped like a half dovetail joint, which you can see it closer in this picture.

Tenshi uses a pair of RP2040 Zeros as controllers and runs QMK firmware. The track pads are 40 mm each and come from Cirque. While the Cirques have been integrated into QMK, the pull request for ZMK has yet to be merged in. And about those angled keys — [fata1err0r81] says they tried risers, but the tilting feels like less effort. Makes total sense to me, but then again I’m used to a whole keyboard full of tilted keys.

Continue reading “Keebin’ With Kristina: The One With The KiCad Plugin”

A Planck-inspired 40% ortholinear keyboard.

DIY Keyboard Can Handle Up To Three Host Devices

Here’s a story that may be familiar: [der-b] is a Linux developer who is forced two carry two laptops — one for work with unavoidable work stuff on it, and one for software development. Unfortunately this leads to keyboard confusion between the two when one is connected to an external display.

In an attempt to overcome this, [der-b] designed a keyboard that can be connected to more than one device at a time, despite ultimately thinking that this will lead to another layer of confusion. The point was to try to make something as lightweight as possible, since carrying two laptops is already a struggle. As a bonus, this project was a learning experience for soldering SMD parts.

The keyboard itself is based on the Planck and uses an ATMega32u4 running QMK firmware, so that means it’s a 40% ortholinear with 48 keys total. [der-b] used low-profile Cherry MX switches to keep things sleek.

In order to switch between different host devices, [der-b] uses shortcuts as you’ll see in the short video after the break. This is accomplished with a FSUSB36 IC on the USB connections between the ATMega and the host.

[der-b] encountered a spate of issues while building this keyboard, which you can read all about in the blog post. We love to see transparency when it comes to your write-ups, especially when the projects become learning experiences. (Aren’t they all?) But if 48 keys aren’t nearly enough for you, check out this learning-experience keyboard build.

Continue reading “DIY Keyboard Can Handle Up To Three Host Devices”

Recreating A Numpad For The ADM-3A

[Evan] already had a working ADM-3A (a dumb terminal from 1976) but was starting to eye the accessories hungrily. He had only seen the numpad on Wikipedia and in the manual. So when he found some authentic stackpole numpads on a surplus sale, he grabbed them and converted them to be ADM-3A compatible.

Looking at the schematic for the ADM-3A, [Evan] figured out that the numpad was parallel to the keyboard matrix, not adjacent. This meant that pressing a five on the keyboard was electrically equivalent to pressing a five on the keyboard. So holding shift while punching on the numpad leads to some unexpected characters for those of us used to more modern keyboards. Since [Evan] only needed to make one or two of these, he soldered wires directly to switch contacts in the matrix that the ADM-3A expects. A 3d printed housing, some rubber feet, and a ribbon cable later, it was done. While it looks slightly different from the original, the vibe is right, and given that it is a stackpole switch, it has the same feel. With the spare numpads, he created a replacement PCB that runs QMK and connects to a more modern computer via USB-C. The files for the 3d printed housing are also up on GitHub, along with the PCBs and QMK configuration files.

If you’re interested in what more you can do with an ADM-3A, why not hook it up to a Raspberry Pi?