v0.1.108-preview
Pre-releaseThis preview improves Host-to-Client input pacing, makes discovery resilient to
live network-interface changes, and fixes Audio Relay replay when a Host uses
more than one network interface.
Highlights
Input pacing and diagnostics
- Host joystick, keyboard, and mouse reports now share one Input send
interval. Fresh configurations use a conservative 10 ms default, while
lower intervals remain available for networks and devices that can sustain
them reliably. - Studio's Host-to-Client pacing recommendation now uses a dedicated native
Client receiver that exercises the production UDP drain, session validation,
InputReportBatchdecoder, and in-memory state-application path. - The recommendation starts at 4 ms and screens progressively higher intervals.
Each stable short trial is confirmed at the same interval for 60 seconds; a
failed confirmation advances to the next candidate instead of allowing the
normal 10 ms default to influence the result. - Stability checks now include packet loss and burst size, ordering, kernel
drops, Client drain saturation, arrival timing, sender timing, and pacing
overruns. Studio shows these measurements with each trial so the recommended
interval can be understood and reproduced. - Host pacing lateness telemetry now measures pending work from the point at
which it becomes eligible to send, avoiding misleading lateness caused by
reports that arrived after an earlier pacing boundary.
Network-interface recovery
- Host and Client discovery responders now join the GhostInput multicast group
on every active IPv4 interface and refresh their memberships while running.
Adding Ethernet or disabling Wi-Fi no longer strands discovery on the
interface that happened to be active when the service started. - Multicast membership follows interfaces as they appear and disappear, so
Studio can rediscover a wired Host without requiring a reboot or service
restart. - Audio Relay selective replay now supports multihomed Hosts. Replay requests
remain authenticated by their negotiated UDP port and active audio session
even when Linux routes the Host's response through a different local address.
This keeps deadline-aware retransmission working after moving a Host from
Wi-Fi to Ethernet.
Network guidance and test tools
- Added focused HID UDP sender and receiver tools for measuring pacing, packet
gaps, ordering, and arrival intervals independently of the GhostInput
services and USB gadget output. - Expanded hardware and troubleshooting guidance for the Pi Zero 2 W's 2.4 GHz
Wi-Fi. A 100% signal reading does not measure interference, airtime
congestion, retransmissions, packet loss, or short latency spikes. - The documentation now recommends Ethernet for the Host where possible and a
capable modern 2.4 GHz router or access point for the Client. A separate wired
access point and a clean 20 MHz channel can materially improve realtime HID
and audio delivery.
Upgrade notes
Update Studio and its bundled Host and Client payloads together. The improved
pacing recommendation requires the current Client benchmark receiver, and the
network-interface fixes are part of the updated native services.
Reprovisioning is not required. Use the normal Update action for each Pi.
Existing routes, Bluetooth bonds, Audio Relay settings, and other device
configuration are preserved.
The 10 ms input interval is the conservative default for fresh configurations;
it is not a floor imposed by the pacing recommendation. Run Studio's pacing
test on the actual Host-to-Client path before selecting a lower value. Wired
Host configurations and clean wireless Client links may sustain substantially
lower intervals.
GhostInput control APIs use HTTP and realtime traffic uses UDP without
encryption. Run GhostInput on a private network you trust and do not expose its
ports directly to the internet.