BLEWidgets

From DanIT
Revision as of 04:06, 23 May 2026 by Dan (talk | contribs)
Jump to navigation Jump to search
BLEWidget Heart Rate Preview.png

BLEWidgets is a Windows App that displays live biometric data such as Heart Rate from Bluetooth LE (BLE) devices.
Each subscribed service has its own live notification (system tray) icon, and optional topmost window widget.

Support

Requirements

Operating System: Windows 10 / Windows 11
.NET Platform: .NET 10.0

Bluetooth: Bluetooth 4.0 with Low Energy (LE/BLE) Support.
Tested Devices: Amazfit Helio Strap (Works).
Should work on all Devices that broadcast standard Heart Rate Service.

Setup

Device Search
Device Information

First time launching BLEWidgets you will be prompted to add at least one device/service first.

If you do not know the BLE Address of your device, you can use the Search functionality to find it.
In order to find it, on the device I had to enable 'Heart Rate Push', and then 'Reboot Device'.

Services

Heart Rate

The Widget will display a warning message if no Heart Rate has been received for more than 10 seconds (changeable with App.Settings.HeartRateTimeout).

Settings

(Keys with multiple values are comma separated).
(Boolean values are formatted as text "True" or "False").

Devices

Device Settings

Device and Services configurations are saved per device in the "Device*.ini" files:

Section Key Value(s) Description
[Device] DeviceName= String Name of the device.
[Device] DeviceAddress= String BLE Address of the device.
[Device] DeviceServices= String[] Services of the device.
[Service_*] ServiceName= String Name of the device service.
[Service_*] ServiceAutoShow= Boolean Automatically show the Widget on App launch.
[Service_*] ServiceTopMost= Boolean Widget's window is always on top.
[Service_*] ServiceDarkMode= Boolean Widget's theme is Dark Mode style.
[Service_*] ServiceShowGraph= Boolean Show or hide Widget's Graph.

(Replace Service asterisk (*) with the Device's Service index count number).

Triggers

Triggers

Task (Trigger) configurations are saved in the "Tasks.ini" file:

Section Key Value(s) Description
[Task_*] TaskName= String Name of the trigger.
[Task_*] TaskEnabled= Boolean Enable or disable the trigger.
[Task_*] TaskTriggers= String, String, Int Condition "When", Condition "Is", Condition "Value".
[Task_*] TaskActions= String, String Action "Do", Action "Value".

(Replace Task asterisk (*) with the Task's index count number).