Switch Stream Mini Manual

Complete setup guide and technical documentation

Getting Started

Welcome to your Switch Stream 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

  • Switch Stream Mini device
  • 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 Switch Stream 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 removable drive on your computer or, 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

Download and Install Configuration

After configuring your settings:

  1. Download the configuration file (config.json) from the configurator
  2. Copy the file to your Switch Stream Mini drive
  3. Safely eject the drive from your computer
4

Load Your Configuration

To activate your new configuration:

  1. Hold the mode button on your device for 3 seconds
  2. The LED will flash green 3 times rapidly
  3. The device will reset and load your new settings
Your Switch Stream Mini is now ready to use!
5

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 work, one for entertainment.

Troubleshooting

Device not recognized by computer

Try these steps:

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

Ensure that:

  • The file is named exactly "config.json"
  • 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

Advanced Technical Documentation

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
Red3 flashes1s eachFirmware image parse error
YellowSolidVariableProcessing firmware update
CustomSolidOperatingCurrent mode indicator (user-configurable)

Mode Button Functions

ActionTimingStateResult
Single Press< 1sAnySwitch to next operating mode
Hold3 secondsAnyDevice reset - reload config/firmware
Hold60 secondsPower-on onlyFactory reset to stock firmware

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
              }
            }
          ]
        }
      ]
    }
  ]
}

Firmware Updates

Never disconnect the device during a firmware update. This could permanently damage the device.

The Switch Stream Mini includes a built-in bootloader for firmware updates. To update firmware:

  1. Download the firmware image file (.bin format)
  2. Connect the device and copy the firmware file to the root directory
  3. The filename must match the hardware revision requirements
  4. Hold the mode button for 3 seconds to trigger the update
  5. The LED will turn yellow during the update process
  6. Device will reset automatically when complete

Hardware Specifications

Physical Specifications

  • 6 × 3.5mm accessibility switch ports
  • 1 × USB-C port (data + power)
  • 1 × RGB LED status indicator
  • 1 × Mode selection button
  • Compact form factor (55 x 105 x 15 mm)

Electrical Specifications

  • USB-C powered (5V@<500mA)
  • Switch input: 3.5mm TRS/TS
  • USB 2.0 compatible
  • HID compliant

Support & Resources

Community Resources

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