LibreBridge Mini Manual

Complete setup guide and technical documentation

Getting Started

Welcome to your LibreBridge Mini! This guide will help you set up and start using your accessibility switch interface in just a few simple steps.

What's in the Box

  • LibreBridge Mini
  • USB-C cable

What You'll Need

  • Computer or mobile device with USB-C port
  • Internet connection
  • Your accessibility switches
  • Web browser

Step-by-Step Setup

1

Connect Your Device

Connect the LibreBridge Mini to your computer using the included USB-C cable. The device will power on automatically and the LED will turn green while initializing.

The device will appear as a mass storage device (similar to a USB flash drive).
2

Configure Your Settings

Visit our web-based configurator to set up your switch mappings and preferences:

Open Configurator

Configure your switch inputs, choose actions (keyboard keys, mouse clicks, etc.), and set up multiple modes if needed.

3

Load Your Configuration

After configuring your settings:

  1. Download the configuration file from the configurator. The configuration file ends with .json
  2. Copy the file to your LibreBridge's drive.

๐Ÿ“ LibreBridge Drive

๐Ÿ“„

config.json

Switch Configuration

๐Ÿ“„

information.json

Firmware version & hardware info

  1. Hold the mode button on your device for 3 seconds. Release when the LED turns off.

The device will reset and load your new settings. The LED will flash green 3 times rapidly to indicate success. The Mini will disconnect and reconnect while loading your new settings.

Your LibreBridge Mini is now ready to use!
4

Connect Your Switches

Connect your accessibility switches to the 3.5mm ports on the device. You can now use your switches to control your computer according to your configuration.

Press the mode button once to cycle between different modes if you've configured multiple modes.

Common Use Cases

Computer Navigation

Set up switches for arrow keys, Enter, and Escape to navigate menus and applications.

Gaming

Configure switches for game controls like WASD movement or specific game actions.

Communication Software

Set up switches for common phrases or actions in communication applications.

Multiple Environments

Use different modes for different activities โ€” one for navigation, one for entertainment.

Technical Documentation

Hardware Specifications

Physical Specifications

  • 6 ร— Accessibility Switch Ports
  • 1 ร— USB-C Port
  • 1 ร— RGB LED Status Indicator
  • 1 ร— Mode Button
  • Enclosure Dimensions: (55 x 105 x 15 mm)
  • Enclosure Material: 3D Printed PETG

Electrical Specifications

  • USB-C (5V@<500mA)
  • Switch input: 3.5mm TRS/TS
  • USB 2.0 FS
  • Bluetooth 5.0 (LE)

LED Status Indicators

ColorPatternDurationDescription
GreenSolidStartupDevice initializing, parsing filesystem
Green3 rapid flashes0.1s eachConfiguration/firmware loaded successfully
Red10 flashes1s eachInitialization failed (device will reset)
Red3 rapid flashes0.1s eachConfiguration file parse error or no configuration found
Red3 flashes1s eachFirmware update failed
YellowSolidVariableProcessing firmware update
WhiteSolidStartupBluetooth un-pairing and/or factory reset pending
White3 rapid flashes0.1s eachBluetooth un-pairing successful
White3 flashes1s eachFactory reset successful
Magenta3 flashes then solid1s eachRecovery mode
CustomSolidOperatingCurrent mode indicator (user-configurable)

Mode Button

ActionTimingStateResult
Single Press< 1sAnySwitch to next operating mode
Hold3 secondsAnyDevice reset - reload config/firmware
Hold10 secondsPower-on onlyForget Bluetooth pairing
Hold30 secondsPower-on onlyโš ๏ธ Factory reset - wipes internal storage. โš ๏ธ
Hold60 secondsPower-on onlyRecovery mode

Device Information

You can check the current firmware version by opening the information.json file stored on the device:

{
  "serial_number": "26130001",
  "model": "mini",
  "hardware_version": "v1.0.0",
  "firmware_version": "v1.0.0-rc4",
  "idf_version": "v5.2.6",
  "build_date": "Jun 27 2026",
  "build_time": "14:27:00",
  "hmac_hash": "672207ed15fc0b54763..."
}

The firmware_version key tells you which release is currently flashed on the unit. Compare it against the latest versions to decide whether an update is needed.

Firmware Upgrade

Latest Releases

The latest firmware images are listed below. Click a version to download the firmware binary directly. The file downloaded will have a specific and expected file name. If the firmware image is unavailable for your model refresh the page.

DeviceStableBetaExpected File Name
LibreBridge Mini v1 mini_v1.bin
LibreBridge Mini v2Firmware downloads will be available when the device ships.

Upgrade Process

Never disconnect the device during a firmware update.

The LibreBridge Mini firmware is easily upgraded. Follow the directions below to upgrade your unit.

  1. Download the firmware image file (.bin). The file name is specific and must match the expected file name otherwise the upgrade process will fail.
  2. Connect the device and copy the firmware image file into the unit. Transferring the image can take 10s of seconds. Your drive should look like this:

๐Ÿ“ LibreBridge Drive

๐Ÿ“„

config.json

Switch configuration

๐Ÿ“„

information.json

Firmware version & hardware info

๐Ÿ“„

mini_v1.bin

Firmware image

  1. Hold the mode button for 3 seconds to trigger the update. This commits the configuration and applies the firmware image if one is present on the drive.
  2. The LED will turn yellow during the update process.
  3. On success the device resets automatically, flashes green three times rapidly, and then shows the current mode color. On failure it flashes red three times, resets, and reverts to the previous firmware. The device information will be updated to reflect the new firmware version.

Configuration File Format

The configuration tool contains syntax highlighting, linting, and auto completion so power users can confidently modify the configuration file directly.

{
  "version": "0.0.0",
  "name": "Sample Configuration",
  "mode": [
    {
      "name": "Good Mode",
      "color": [
        255,
        255,
        0
      ],
      "config": [
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 0
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                4
              ],
              "modifiers": {
                "shift": false,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 1
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                5
              ],
              "modifiers": {
                "shift": false,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 2
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                6
              ],
              "modifiers": {
                "shift": false,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 3
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                7
              ],
              "modifiers": {
                "shift": false,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 4
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                8
              ],
              "modifiers": {
                "shift": false,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 5
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                9
              ],
              "modifiers": {
                "shift": false,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        }
      ]
    },
    {
      "name": "mode x",
      "color": [
        0,
        255,
        0
      ],
      "config": [
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 0
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                4
              ],
              "modifiers": {
                "shift": true,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 1
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                5
              ],
              "modifiers": {
                "shift": true,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 2
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                6
              ],
              "modifiers": {
                "shift": true,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 3
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                7
              ],
              "modifiers": {
                "shift": true,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 4
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                8
              ],
              "modifiers": {
                "shift": true,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 5
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                9
              ],
              "modifiers": {
                "shift": true,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        }
      ]
    },
    {
      "name": "mode x",
      "color": [
        0,
        0,
        255
      ],
      "config": [
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 0
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                23
              ],
              "modifiers": {
                "shift": false,
                "ctrl": false,
                "alt": false,
                "meta": true
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 1
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                70
              ],
              "modifiers": {
                "shift": false,
                "ctrl": false,
                "alt": false,
                "meta": false
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 2
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                61
              ],
              "modifiers": {
                "shift": false,
                "ctrl": false,
                "alt": true,
                "meta": false
              }
            }
          ]
        },
        {
          "logic": {
            "type": "direct"
          },
          "input": {
            "type": "switch",
            "id": 3
          },
          "output": [
            {
              "type": "keyboard",
              "code": [
                14
              ],
              "modifiers": {
                "shift": false,
                "ctrl": false,
                "alt": true,
                "meta": false
              }
            }
          ]
        }
      ]
    }
  ]
}

Troubleshooting

Device not recognized by computer

Try these steps:

  • Check if the LED is illuminated when connected
  • Try a different USB-C cable
  • Try a different USB port on your computer
Configuration not loading

Ensure that:

  • The file is in the root directory of the device
  • You held the mode button for exactly 3 seconds
  • The LED flashed green 3 times after button press
Switches not responding

Check these items:

  • Switches are properly connected to 3.5mm ports
  • Configuration has been loaded successfully
  • You're in the correct mode (check LED color)
  • Test switches with a different device to verify they work
Bluetooth connectivity

Check these items:

  • Confirm Bluetooth is enabled in configuration
  • Configuration has been loaded successfully
  • Unit is not connected to another device

Support & Resources

Community Resources

Connect with other users, share configurations, and get tips from the community.

Email Support

Reach out directly for beta feedback, bug reports, or questions.