Hi everyone,
I’d like to share BedMode, a fully open-source, zero-cloud remote desktop and file management system designed specifically for controlling a Windows PC from an Android phone—one-handed, over a local Wi-Fi connection.
Why BedMode?
Unlike heavy commercial tools (TeamViewer, AnyDesk) or standard RDP clients designed for large screens, BedMode is optimized for casual, low-latency, single-handed phone use (e.g., controlling media, monitoring tasks, or browsing from bed).
Key Features
-
100% LAN Only & Privacy First: No third-party servers, no internet required, no telemetry, and no accounts. Authenticated locally via cryptographically generated tokens.
-
Low-Latency Screen Streaming: Windows Graphics Capture → hardware H.264 MFT / x264 → WebRTC at a steady 30 FPS.
-
Smooth One-Handed Control: Relative touchpad mode powered by a 1€ filter and 240 Hz upsampled input, supporting tap-to-click, double-tap, drag, and two-finger scrolling.
-
Resumable Binary File Transfer: Dedicated TCP protocol (port 8845) with adaptive chunking (512 KiB–8 MiB), SHA-256 verification, and automatic transfer resumption (
.partfiles). Drop a file intoC:\share-system\send, and it syncs to your phone. -
Auto-Discovery & Multi-Device: LAN scan auto-pairs with host devices and allows instant seamless switching between multiple PCs without ghost sessions.
-
Emergency Input Safety: If the Wi-Fi connection drops, the host immediately releases all held keys/modifiers so you never get stuck buttons on Windows.
Tech Stack & Source Code
-
Android Companion: Kotlin + Jetpack Compose, Room DB, Foreground Service for continuous background file transfers.
-
Windows Host: C++20 tray app (Win32, Direct3D11, WASAPI loopback audio, libdatachannel).
GitHub - madhavabrightly/phone-to-pc · GitHub
We’d love for the community to test it out, give feedback, or help review it for inclusion in the official F-Droid repo!