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.
Open Source Project
LibreBridge is an open source project which means the products are truly yours. You can copy, modify, and even sell our designs. The objective is to foster open solutions with a high degree of quality and usability. Please checkout our repositories.
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
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.
Configure Your Settings
Visit our web-based configurator to set up your switch mappings and preferences:
Open ConfiguratorConfigure your switch inputs, choose actions (keyboard keys, mouse clicks, etc.), and set up multiple modes if needed.
Load Your Configuration
After configuring your settings:
- Download the configuration file from the configurator. The configuration file ends with
.json - Copy the file to your LibreBridge's drive.
๐ LibreBridge Drive
config.json
Switch Configuration
information.json
Firmware version & hardware info
- 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.
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
| Color | Pattern | Duration | Description |
|---|---|---|---|
| Green | Solid | Startup | Device initializing, parsing filesystem |
| Green | 3 rapid flashes | 0.1s each | Configuration/firmware loaded successfully |
| Red | 10 flashes | 1s each | Initialization failed (device will reset) |
| Red | 3 rapid flashes | 0.1s each | Configuration file parse error or no configuration found |
| Red | 3 flashes | 1s each | Firmware update failed |
| Yellow | Solid | Variable | Processing firmware update |
| White | Solid | Startup | Bluetooth un-pairing and/or factory reset pending |
| White | 3 rapid flashes | 0.1s each | Bluetooth un-pairing successful |
| White | 3 flashes | 1s each | Factory reset successful |
| Magenta | 3 flashes then solid | 1s each | Recovery mode |
| Custom | Solid | Operating | Current mode indicator (user-configurable) |
Mode Button
| Action | Timing | State | Result |
|---|---|---|---|
| Single Press | < 1s | Any | Switch to next operating mode |
| Hold | 3 seconds | Any | Device reset - reload config/firmware |
| Hold | 10 seconds | Power-on only | Forget Bluetooth pairing |
| Hold | 30 seconds | Power-on only | โ ๏ธ Factory reset - wipes internal storage. โ ๏ธ |
| Hold | 60 seconds | Power-on only | Recovery 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.
| Device | Stable | Beta | Expected File Name |
|---|---|---|---|
| LibreBridge Mini v1 | mini_v1.bin | ||
| LibreBridge Mini v2 | Firmware downloads will be available when the device ships. | ||
Upgrade Process
The LibreBridge Mini firmware is easily upgraded. Follow the directions below to upgrade your unit.
- Download the firmware image file (
.bin). The file name is specific and must match the expected file name otherwise the upgrade process will fail. - 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
- 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.
- The LED will turn yellow during the update process.
- 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
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
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
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
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.