Pairing a Bluetooth device on Windows is one thing. Connecting an already paired device later is another - and that is where it gets clumsy: open Settings, scroll the device list, find the right entry, click it. For something I do several times a day, that is too long a path.
StarTooth is a small tray tool that removes that path. One click on the tray icon opens the list of every paired device; one click on a device connects or disconnects it.
Favourites first
Devices can be starred. As soon as at least one is starred, the favourites move to the top and everything else is grouped below under “Other devices”. With no stars, the list stays flat, the way Windows knows it.
Every entry carries a state:
●connected, also bold○not connected◌a connection attempt is running★favourite
A connection attempt, its result and any failure are also reported as a Windows notification. This is necessary because activating an entry closes the menu, so the menu itself cannot show the progress.
Accessible from the start
The menu needs no mouse gestures and no modifier keys. Stars are not assigned in
the menu itself but in a separate dialog built on a standard CheckedListBox,
where the space bar toggles them and the screen reader announces the state on its
own.
The symbols ● ○ ◌ ★ and the bold text are purely visual. Screen readers speak
such symbols inconsistently - whether a glyph is spoken at all depends on the
configured symbol verbosity - so none of them is the sole carrier of its state:
every entry also spells it out in AccessibleName (“Shokz OpenFit, favourite,
connected”) and describes the effect of activating it in AccessibleDescription.
A running connection attempt stays deliberately activatable rather than being set
to Enabled = false: ToolStrip skips disabled items during keyboard navigation,
which would make the running attempt the one state a keyboard or screen reader
user could never reach. A second activation is refused by the caller instead. The
“Other devices” heading is a disabled entry and therefore not reachable either -
harmless, because it carries nothing that is not already in each entry’s
AccessibleName.
All menu items and dialog controls have access keys.
Settings
Language, colour mode and autostart live under “Settings…”. Language and colour
mode are stored in %APPDATA%\StarTooth\settings.json and take effect
immediately; the menu is rebuilt every time it opens.
Autostart is deliberately not kept in that file but solely in the registry Run key. This leaves a single source of truth: an entry removed by hand or by another tool shows up as removed rather than being restored from a stale copy. If Windows refuses the change, the dialog stays open and says so instead of claiming a change that did not happen.
Languages
StarTooth follows the Windows display language. English and German ship as a
satellite assembly; a further language is exactly one additional
Resources/Strings.<culture>.resx. Translations use the terminology of each
language’s Windows interface, not a literal rendering: in German it is therefore
“gekoppelte Geräte” rather than “gepairte”, and “Nicht verbunden” instead of
“getrennt” - matching the Windows Bluetooth settings.
For checking, the language can be forced independently of Windows and of the stored settings:
StarTooth.exe --lang de
StarTooth.exe --lang en-US
Download
Two forms, both self-contained - no .NET runtime to install:
- Installer (
StarTooth-Setup-<version>.exe) - Start Menu entry, optional desktop icon, clean uninstall via Programs & Features. - Portable (
StarTooth.exe) - a single file, just run it. Nothing is written outside%APPDATA%\StarTooth(settings and favourites) and, if autostart is enabled, the registry Run key.
Requires 64-bit Windows 10 build 19041 or newer. Both files are Authenticode-signed; the signing certificate is a personal development cert, so Windows SmartScreen may still show a warning on machines that do not trust it - choose “More info → Run anyway”.
StarTooth is also in the Windows package manager now, so installing it is a single command:
winget install Slohmaier.StarTooth
Open source
StarTooth is MIT-licensed, written in C#, and lives on GitHub: slohmaier/StarTooth. Bugs and requests belong in the repository’s issues.