Mac and Windows keyboard layouts switched for you

Switches your Mac and Windows keyboard layouts the instant a KVM hands the keyboard to the other machine — no keystroke, no delay.

v2.7.1 · 15 September 2026

What happens on a handover in about one second.

A KVM hands the keyboard over without anything unplugging, which is exactly why the usual tools miss it.

  1. The KVM moves the receiver

    The Bolt receiver now belongs to the PC. No device unplugs, so no ordinary change event exists, and the keyboard stays in macOS mode: Command acts as Alt.

  2. logiswitch sees the device arrive

    It fires on arrival, the event Logi Options+ ignores, because Options+ only corrects the layout once, when its agent starts.

  3. One HID++ write, 326 ms

    setHostPlatform goes back along the same wire to the keyboard itself, so the keycaps' legends match the machine that now has focus.

326 ms

for a platform switch, measured

1.1 s

to correct an Easy-Switch return (MX Keys S, Bolt receiver)

~45 ms

of CPU per 60 s at idle, measured

One keyboard, two computers, one switcher.
One keyboard, two computers, one switcher.
The handover: no unplug, no change event, so the switcher listens for arrival instead.
The handover: no unplug, no change event, so the switcher listens for arrival instead.
What the switcher logs when it acts.
What the switcher logs when it acts.

Why Options+ alone does not fix it and what does.

CapabilityLogi Options+Karabiner-ElementsSolaarlogiswitch
Switches the keyboard's real layoutyesno — remaps keysyesyes
Reacts to a KVM / host changenon/amanualyes, automatically
Windowsyesnonoyes
macOSyesyesnoyes
Runs headless, no accountnoyesyesyes
Idle CPUbackground serviceevent tapdaemon~45 ms / 60 s

Press

Writing about it? The kit is open.

Screenshots and the icon at every size, boilerplate in two lengths, the fact sheet and the palette — free to publish without asking, and downloadable as one zip.

Open the Layout Auto Switcher press kit

No embargo · review copies on request

Questions

Does it fight Logi Options+?

No — it writes the same value Options+ would want, on the event Options+ ignores. The two agree rather than compete. The coexistence table above is measured, not assumed; the method and captured frames are in the repo's PROTOCOL.md.

What about Linux?

Not yet. Solaar already covers Linux thoroughly; logiswitch exists because the problem lives on Windows and macOS, where nothing else fires on a KVM handover.

Which keyboards does it support?

Any Logitech keyboard that carries its OS layout in firmware and reports it can switch it (the HID++ multi-platform feature), on a Bolt, Unifying, Nano or Lightspeed receiver or directly over Bluetooth or USB. There is no model list to go stale: each device is asked what it supports. It is verified end to end on an MX Keys S behind a KVM.

Can I see it decide?

Yes. Every switch is logged, and the terminal capture above is what a handover looks like in real time.

Does it switch my input language, say from Arabic to English, as well?

No. It sets the keyboard's own Mac or Windows mode, the thing that swaps Cmd and Alt. Your computer's input source is a separate setting it does not manage: switch that with Ctrl+Space on macOS, or Alt+Shift or Win+Space on Windows. logiswitch doctor tells you which of the two problems you have.

Can't I give each computer its own Easy-Switch channel instead?

You can, and then each channel keeps its own setting, because the keyboard stores its platform per Easy-Switch host. A KVM breaks that: two computers sharing one receiver share one host slot. If each machine does have its own receiver, --claim-host N pins the agent to that machine's slot.

What does it do that holding Fn+O or Fn+P doesn't?

It writes the same firmware value those key combinations write, over Logitech's HID++ protocol, the moment the keyboard arrives on a machine, so you never press anything. It does not modify the firmware; at worst the keyboard sits in the wrong mode and the key combination still fixes it.

My KVM switches only video, or I use the Easy-Switch keys. Does it still notice?

Yes. Nothing unplugs in that case, so the agent reacts to the keyboard reporting back when it reconnects, measured at about a second. A 20-second re-check, tunable with --reassert, catches anything that slips through.

The KVM hands the keyboard over, and the layout follows it.

No hotkey to remember, and no first line typed in the wrong layout. It watches for the handover and sets the layout to match the machine that just took over.

Get it on GitHub

Free · MIT · Windows and macOS

Built by a one-person studio. If it has earned a place in your day, you can help fund the next release →

Layout Auto Switcher

the instant a KVM hands the keyboard over