Use your phone browser as a tiny touchpad for your Windows PC.
No mobile app. No account. One Python file. Built for couch and bed control.
- Single-finger drag moves the PC cursor.
- Short tap sends left click.
- Long press sends right click.
- Double tap opens the phone text panel.
- Two-finger swipe scrolls.
- Quick keys for Backspace, Esc, Space, and Enter.
- Text input sends Unicode text to the currently focused Windows app.
- Random URL token by default.
- The launcher stops stale BedPad servers before starting a new one.
There are bigger tools in this space, including KDE Connect, Unified Remote, Remote Mouse, and Unrud's Remote Touchpad. BedPad is intentionally smaller: it is a single-file, browser-based Windows remote touchpad that is easy to inspect, modify, and run.
- Windows
- Python 3.10 or newer
- Phone and PC on the same trusted local network
On Windows, double-click:
run-bedpad.cmd
BedPad opens a small launcher with a QR code. Scan it with your phone and start using the touchpad.
The first launch may ask to install the small qrcode[pil] package so the launcher can draw QR codes.
If you double-click the launcher again, it will stop the previous BedPad server and create a fresh QR code.
python .\bedpad.pyOpen the printed URL on your phone.
Example:
BedPad is running.
http://192.168.0.20:8765/?token=...
Keep this window open. Press Ctrl+C to stop.
| Phone gesture | PC action |
|---|---|
| Drag one finger | Move cursor |
| Short tap | Left click |
| Long press | Right click |
| Double tap | Open text panel |
| Two-finger swipe | Scroll |
| Text panel Send | Type text into focused app |
python .\bedpad.py --port 8876
python .\bedpad.py --host 127.0.0.1
python .\bedpad.py --token your-local-tokenBedPad injects mouse and keyboard input into your Windows session. Treat the URL like a local remote-control key.
- Use only on trusted LANs.
- Keep the token private.
- Stop the server when you are done.
- Do not expose the port to the internet.
You probably scanned an old QR code or opened a stale URL. Close BedPad, double-click run-bedpad.cmd again, and scan the new QR code.
- Make sure the phone and PC are on the same Wi-Fi or LAN.
- Check that Windows Firewall allows Python on private networks.
- Try copying the URL from the launcher and sending it to your phone.
- Windows tray app.
- Packaged
.exerelease. - Sensitivity sliders for pointer and scroll.
- Media keys and presentation mode.
- Optional HTTPS for local networks.
MIT
