Real-time biosignal monitoring for Polar H10 heart rate sensors.
Pre-built binaries available for:
- 🍎 macOS (Universal, Apple Silicon, Intel)
- 🪟 Windows 10/11 (64-bit)
- 🐧 Linux (64-bit)
Or build from source below.
- Bluetooth Device Discovery - Scan and connect to nearby Polar devices
- Live Data Visualization - Real-time charts for ECG, heart rate, RR intervals, and accelerometer data
- Connection Management - Easy connect/disconnect with visual feedback
- Modern UI - Clean interface built with Iced
ZenSignal is fully cross-platform and supports:
- ✅ Windows 10/11 - Uses Windows Bluetooth LE APIs
- ✅ macOS - Native CoreBluetooth support
- ✅ Linux - BlueZ D-Bus integration
- macOS Big Sur (11) or later
- Bluetooth permission required: Go to System Settings → Privacy & Security → Bluetooth and enable for your terminal application
- Windows 10 version 1703 (Creators Update) or later
- Bluetooth LE adapter
- No additional permissions required
- BlueZ 5.44 or later
- D-Bus (usually pre-installed)
- User must be in the
bluetoothgroup:sudo usermod -a -G bluetooth $USER - May require additional permissions:
sudo setcap cap_net_raw+ep target/debug/zen-signal
- Rust 1.70+
- Bluetooth LE adapter
- Polar H10 heart rate sensor
- Platform-specific dependencies (see above)
# Clone the repository
git clone https://github.com/jacquayj/zen-signal.git
cd zen-signal
# Build and run
cargo run --releaseFor detailed build instructions and creating releases, see BUILDING_AND_RELEASES.md.
If you encounter Bluetooth permission issues:
# Add your user to the bluetooth group
sudo usermod -a -G bluetooth $USER
# Log out and back in, then build
cargo build --release
# Grant network capabilities (required for BLE scanning)
sudo setcap cap_net_raw+ep target/release/zen-signal
# Run the application
./target/release/zen-signalcargo run- Click "Scan for Devices" to discover nearby Polar sensors
- Select your device from the list
- Click "Connect" to start streaming data
- View real-time biosignal charts
- Click "Disconnect" to stop
- Backend: Arctic library for Polar Bluetooth communication
- Frontend: Iced GUI framework
- Plotting: Plotters for real-time chart rendering
- Async Runtime: Tokio for connection management
MIT