ð SoundKeeper - Bluetooth Audio Device Keep-Alive
ð About
SoundKeeper is a lightweight Windows application that prevents Bluetooth audio devices from automatically entering standby mode due to inactivity.
Many Bluetooth audio devices (soundbars, speakers, headphones) automatically disconnect or enter standby mode after ~60 seconds of silence. This is especially common with devices originally designed for TVs or with aggressive power-saving features. SoundKeeper solves this problem by playing imperceptible audio signals at regular intervals, keeping your device active and connected without any audible sound.
âĻ Features
- ð Imperceptible Audio - Plays white noise at extremely low volume (completely inaudible)
- âąïļ Smart Timing - Sends keep-alive signals every 55 seconds (before typical 60s timeout)
- ðŊ System Tray Integration - Minimalist interface accessible from the taskbar
- â
Easy Toggle - Enable/disable with a single click
- ð Startup Option - Configure to launch automatically with Windows
- ðĄïļ Single Instance - Prevents multiple instances from running simultaneously
- ðŠķ Lightweight - Minimal resource usage (~25MB RAM)
ðĨ Download & Installation
ðŧ For Regular Users (Recommended)
No Python or programming knowledge required!
- Go to the Releases page
- Download
SoundKeeper.exe from the latest release
- Double-click the executable - no installation needed!
- A green Bluetooth icon will appear in your system tray
- Optional: Right-click the icon and enable "Launch at Startup" to run automatically
That's it! Your Bluetooth device will now stay connected.
ðĻâðŧ For Developers (Run from Source)
If you want to modify the code or contribute to the project:
Requirements:
- Python 3.7 or higher
- Windows OS
Installation Steps:
# Clone the repository
git clone https://github.com/Deimz/SoundKeeper.git
cd SoundKeeper
# Create virtual environment
python -m venv venv
.\venv\Scripts\Activate.ps1
# Install dependencies
pip install -r requirements.txt
# Run the application
python soundkeeper.py
ðŪ Usage
Quick Start
- Launch SoundKeeper - Double-click
SoundKeeper.exe
- Look for the icon - A green Bluetooth icon appears in your system tray
- It's working! - Your audio device will now stay connected
Right-click the icon to access:
- â
Active (Keep-Alive) - Toggle the keep-alive feature on/off
- ðĒ Green icon = Active
- âŦ Grey icon = Paused
- ð Launch at Startup - Register/unregister from Windows startup
- â Quit - Exit the application
Compatible Devices
SoundKeeper works with any Bluetooth audio device that has auto-standby/timeout features:
- â
Soundbars (Samsung, LG, Sony, etc.) - Especially TV soundbars used with PCs
- â
Bluetooth Speakers - Portable or desktop speakers with power-saving modes
- â
Wireless Headphones - Any brand with aggressive auto-sleep features
- â
Home Theater Systems - Bluetooth-enabled receivers and amplifiers
- â
Smart Speakers - When used in Bluetooth mode
âïļ Configuration
Advanced users can modify settings in soundkeeper.py:
SAMPLE_RATE = 44100 # Audio sample rate in Hz
DURATION = 1.0 # Keep-alive sound duration (seconds)
INTERVAL = 55 # Interval between signals (seconds)
AMPLITUDE = 0.0001 # Sound volume (very low = imperceptible)
ð§ Building from Source
To create your own executable:
# Install PyInstaller
pip install pyinstaller
# Build the executable
pyinstaller --onefile --windowed --icon=icon.ico --name SoundKeeper soundkeeper.py
# Find your .exe in the dist/ folder
ð Troubleshooting
The audio device still disconnects
- Make sure SoundKeeper is running (check system tray)
- Verify the feature is enabled (icon should be green)
- Try reducing
INTERVAL to 45 seconds in the configuration
"SoundKeeper is already running" error
- Only one instance can run at a time
- Check the system tray for an existing icon
- Close it before launching again
Icon doesn't appear in system tray
- Check Windows notification area settings
- Make sure the application hasn't crashed (check Task Manager)
ð System Requirements
- OS: Windows 10/11 (64-bit)
- RAM: ~25MB
- Storage: ~30MB
- Audio: Any audio output device
ðĪ Contributing
Contributions are welcome! Feel free to:
- ð Report bugs
- ðĄ Suggest new features
- ð§ Submit pull requests
- ð Improve documentation
ð License
This project is licensed under the MIT License - see the LICENSE file for details.
ð Acknowledgments
- Built with pystray for system tray integration
- Audio handling powered by sounddevice
- AI generated icon ( Gemini )
ðŽ Support
If SoundKeeper helped you, please consider giving it a â on GitHub!
Made with âĪïļ for frustrated Bluetooth users everywhere