An input device for keyboard shortcuts

Open Hardware – Palitra

© Lead Image © 3355m,

© Lead Image © 3355m,

Article from Issue 218/2019

For even simpler keyboard shortcuts, the prospective Palitra allows you to create simple macros with a programmable USB device.

The keyboard is by far the most efficient way to interact with a computer. Pressing keys is faster than a mouse or trackball and reduces repetitive stress injuries, as well. For many, these advantages make learning keyboard shortcuts well worth the effort. Unfortunately, most non-gaming keyboards lack separate programmable keys, and shortcuts are often complex key combinations. Michele Balistreri's forthcoming Palitra offers simpler shortcuts: a programmable USB device for storing several dozen shortcuts. Palitra is scheduled for a crowdfunding campaign to assist manufacturing [1].

When he was 13, Balistreri first encountered open source software in a Corel Linux CD included in an Italian magazine. Since then, he has contributed to MPlayer and the icculus fork of Quake 2, briefly maintained KDE packages for Gentoo Linux, developed embedded software, and designed hardware.

Working as a fashion photographer inspired Balistreri to develop Palitra. He explains, "As a photographer, I spend a lot of time retouching, using a Wacom tablet and a keyboard for shortcuts. However, the typical keyboard is rather large and some combinations are hard to activate with one hand (especially being left handed). Often, my hand gets in the way of the stylus [for the tablet], and I cannot keep it constantly on the keyboard. To avoid shoulder ache and time wasting, I decided that I needed a small input device, which could be placed next to the tablet and programmed with all the shortcuts I need."

Balistreri searched for an existing device like Palitra, "but they looked more flashy than useful – and most were over $200. So, I decided to develop Palitra" (Figure 1).

Figure 1: Palitra is a portable keyboard designed for shortcuts.

Balistreri sees distinct advantages to releasing his work as open hardware. Open hardware, he says, offers "access to a lot of great engineers and developers who are willing to answer your questions and give you feedback. When you ask questions on public forums, you can show your design or code. This means you can get very direct answers instead of abstract advice or pointers. [As a result], you can more readily build a community of passionate people." At any rate, he adds, if you are crowdfunding, "the results should be a public good."

Admittedly, releasing open hardware makes knockoffs more likely. However, Balistreri discounts that problem. "If a project is successful, it will be copied regardless of its openness," he observes. "By that time, however, you have already created a vibrant community around your project and have recouped your R&D costs. All you need to do is keeping being better than the knockoffs, and you'll continue to be successful."

Product Development

Thinking about the project, Balistreri originally figured out that he needed a "small keypad where I could assign shortcuts I use the most in photography, like zooming and changing brush size. Then I thought I could add more shortcuts and added the concept of pages to organize shortcuts and added a single button that cycled between them and four LEDs to show the active page." The result, after some soldering, was the oversized prototype (Figure 2).

Figure 2: The first prototype was designed for function, not portability.

"Luckily," Balistreri continues, "I had the very fitting microcontroller, the PIC18F14K50, so I quickly developed the first firmware. In its very first revision, the shortcuts were hardcoded; then I developed a way to configure them, and my wife developed a desktop application to do that in a user-friendly way" (Figure 3).

Figure 3: The prototype software for customizing Palitra's firmware.

With these basics ready, Balistreri began using his creation. However, in the early prototypes, changing pages required cycling through them, so he added a button to activate each one. Then it was time to take the project public. Creating a repository [2], he remembers, "I formalized the schematics, designed a custom PCB board, and replaced the small switches with larger ones with a nice plastic cap. In addition, I replaced the soldered USB cable with a micro-USB connector, making the device more portable and less prone to failure."

More recently, Balistreri has added a bootloader, making the firmware upgradable via USB, and his wife, Kseni Balistreri has updated the software with the ability to save profiles. "This is a great feature," Balistreri notes, "because with it you can quickly reconfigure the entire device, making it easy to create profiles for each application you use. It will be possible to share profiles, and there will be some default ones in the desktop app."

As I write, Balistreri is working on the last step. Although his father made a case from wood and aluminium for prototypes, the result – while attractive – is too expense to produce commercially (Figure 4). As a result, he is currently finalizing the design of an injection-molded enclosure and developing a 3D-printed enclosure in the interim.

Figure 4: The prototype enclosure shows Palitra to advantage, but is too expensive for the final product.

The result is a device that a computer recognizes as another input device. Designed for Linux, Mac OS, and Windows, Palitra should sell for $30 or less, if all goes according to plan. Balistreri plans to emphasize its use for photography, but mentions that it should also be useful for "graphic design, vector art, and even software debugging" – particularly on minimalist keyboards where function keys require pressing several keys. It would also be ideal for hardcore gamers, who could load separate profiles for each of their favorite games. With the help of simple scripts, Palitra might even be useful for inputting text, allowing the addition of boilerplate information like a biography or copyright notice with the press of a single button.

Coming Next

Balistreri has been working with a few prototypes. He now faces the challenge of manufacturing Palitra as inexpensively as possible – a goal that can be challenging because of the relatively low initial production quantities. "I want to keep Palitra very affordable," he says, "because a lot of people need it."

Sooner or later, too, Balistreri expects a request for a wireless version. However, a wireless device will require a different microcontroller and PCB design, so for now, it is not his main focus. Other features are likely to follow as users make requests, but he is determined to avoid any enhancements that interfere with the main purpose or make the device less portable. His hope is that other photographers will find Palitra as indispensable as a spare battery for their cameras.

Palitra is not the only solution for creating simple macros. Graphic tablets routinely have programmable keys, as do high-end gaming keyboards. Similarly, the Keyboardio Model 01 has several methods for setting up dozens of keyboard shortcuts. However, those who have discovered the advantages of shortcuts, can never have too many – and the shorter, the better. With its simplicity of elegance, Palitra seems likely to be welcomed as another example of how open hardware is changing the way we use computers.


  1. Palitra crowdfunding campaign:
  2. Palitra on GitHub:

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More