Skip to content
Home » Home » Projects » (LightBurn) Shortcut / Hotkey Keyboard

(LightBurn) Shortcut / Hotkey Keyboard

I had this project on my list for a very long time. Inspired by a similar project (Light Burning Keyboard) I finally implemented it. LBK relies on a software/tablet solution to control LightBurn via a macro tool. On the one hand, this is quite easy because you don’t need any special hardware. But on the other hand, you always have to install the software and have it on your computer for it to work. In this project, I show a solution that reports to the computer as a hardware keyboard and sends the key combinations to control LightBurn. This requires some very basic electronics tinkering skills, but the circuit is simple. If you choose a pre-soldered microcontroller board, no soldering is required at all.

With this keyboard, you can send any keys to the PC, here LightBurn is the example, but it works just as well with any other software, like video editing, team, zoom or browser.

Required hardware

As controller you need an Arduino with 32u4 or SAMD chip. These chips use an own or integrated controller for the USB communication. This is necessary so that the Arduino can act as a keyboard. I selected an Arduino Micro. To trigger the shortcuts you then require a series of switches, I used a simple keypad so almost no wiring was needed. The cost together is less than 10€.

Schematic – wiring

The circuit is very simple. You only have to connect the keypad (in this case one the above mentioned membrane keyboard) to the microcontroller. With that the hardware is ready. The only soldering work was to solder a pin header to the controller so that the cable can be plugged on.

I then printed the LightBurn symbols I wanted on adhesive labels so I could stick them on the keys.

Programming

Programming is also extremely simple. The existing keyboard library makes it very easy to send keystrokes to the computer. The code can be customized as desired (other key combinations, it doesn’t have to be LightBurn). Example:

  if (key == '1') {
    Keyboard.press(KEY_LEFT_CTRL);
    Keyboard.press('l');
    Keyboard.releaseAll();
  }

This code sends the key combination CTRL + L to the PC when pressing the key “1”, which selects the pen as a tool in LightBurn. All other keys of the keypad can be defined like this. The whole source code is in the archive at the bottom of the page. You can check all available key combinations in the LightBurn hotkey editor:

After you chose the desired key combinations, the only configuration that is required within the source code is to set the inputs according to the pins where you connected the switches. In my case, I connected the keyboard to Pins 2 – 9. The code reflects this:

byte pin_rows[ROW_NUM] = {2,3,4,5}; //connect to the row pinouts of the keypad
byte pin_column[COLUMN_NUM] = {6,7,8,9}; //connect to the column pinouts of the keypad

You can find more examples on how to connect the keypad here: Keypad-Library and this Example-Project.

Enclosure

For the full thing, I created a small case with boxes.py and modified it a bit. So the keyboard can be placed next to the big keyboard and can be reached comfortably.

Download

Here is the file with source code, case and button graphics: Download

Various

LightBurn has additional keyboard shortcuts that also might help in your workflow: https://docs.lightburnsoftware.com/TipsAndTricks.html#edit-window-shortcuts