RDP Heartbeat
A subtle, visual heartbeat for your remote desktop sessions.
Why this tool?
I work remotely via RDP extensively. My RDP connection runs over UDP, which is fast but can be unreliable. Often, when running long tasks like compiling code or waiting for AI coding tools, the screen would freeze silently. I'd be left wondering:
"Is the tool just thinking, or has my RDP connection dropped?"
This uncertainty is frustrating. I created RDP Heartbeat to solve this. It places a small, unobtrusive "breathing" light on your screen.
- If the light is pulsing: Your connection is alive.
- If the light freezes: Your RDP connection has stalled.
It's a simple visual cue that saves sanity by letting you know immediately if you're actually disconnected, regardless of what's happening on screen.
Features
- Visual Heartbeat: A smooth, pulsing dot that indicates an active display stream.
- Modern UI: Clean, frameless settings and about dialogs.
- Highly Customizable: Pick any color to match your wallpaper, adjust size and opacity, and drag it anywhere on your screen.
- Unobtrusive: "Always on Top" mode ensures it's always visible but stays out of your way. "Click-through" ensures you can click buttons underneath it.
- System Tray & Autostart: Minimizes to the system tray and starts automatically with Windows.
Installation
Clone the repository:
bashgit clone https://github.com/PruneLab/prune-rdp-heartbeat.git cd prune-rdp-heartbeatInstall dependencies:
bashpip install -r requirements.txtRun the application:
bashpython main.py
Usage
- Launch: Run the app. A pulsing dot will appear on your screen (default: bottom right).
- Move: Click the system tray icon -> Enable Move Mode (or toggle via Settings) to enable drag-and-drop. The dot will show a border. Drag it to your desired spot. Click Disable Move Mode to lock it in place (click-through enabled).
- Configure: Right-click the system tray icon -> Settings. Adjust color, size, speed, etc.
- Exit: Right-click the system tray icon -> Exit.
Created to make remote work a little less stressful.