diff --git a/vrcosc-magicchatbox/Classes/Modules/PulsoidModule.cs b/vrcosc-magicchatbox/Classes/Modules/PulsoidModule.cs
index fb9786e..c2cec96 100644
--- a/vrcosc-magicchatbox/Classes/Modules/PulsoidModule.cs
+++ b/vrcosc-magicchatbox/Classes/Modules/PulsoidModule.cs
@@ -40,6 +40,9 @@ public partial class PulsoidModuleSettings : ObservableObject
[ObservableProperty]
private bool enableHeartRateOfflineCheck = true;
+ [ObservableProperty]
+ private bool disableLegacySupport = false;
+
[ObservableProperty]
private int unchangedHeartRateTimeoutInSec = 30;
@@ -911,14 +914,12 @@ private void HandleHeartRateMessage(string message)
SendHRToOSC(true);
}
}
-
- // Send OSC parameters method
private void SendHRToOSC(bool isHRBeat)
{
- if (!ViewModel.Instance.IntgrHeartRate_OSC) return; // Only send if enabled
+ if (!ViewModel.Instance.IntgrHeartRate_OSC) return;
- bool isHRConnected = ViewModel.Instance.PulsoidAuthConnected; // Authenticated and token valid
- bool isHRActive = PulsoidDeviceOnline; // Device considered online
+ bool isHRConnected = ViewModel.Instance.PulsoidAuthConnected;
+ bool isHRActive = PulsoidDeviceOnline;
int hrValueForOSC = GetOSCHeartRate();
if (hrValueForOSC <= 0) return;
@@ -935,6 +936,17 @@ private void SendHRToOSC(bool isHRBeat)
OSCSender.SendOscParam("/avatar/parameters/HRPercent", hrPercent);
OSCSender.SendOscParam("/avatar/parameters/FullHRPercent", fullHRPercent);
OSCSender.SendOscParam("/avatar/parameters/HR", hrValueForOSC);
+
+ if (!Settings.DisableLegacySupport)
+ {
+ int ones = hrValueForOSC % 10;
+ int tens = (hrValueForOSC / 10) % 10;
+ int hundreds = hrValueForOSC / 100;
+
+ OSCSender.SendOscParam("/avatar/parameters/onesHR", ones);
+ OSCSender.SendOscParam("/avatar/parameters/tensHR", tens);
+ OSCSender.SendOscParam("/avatar/parameters/hundredsHR", hundreds);
+ }
}
}
diff --git a/vrcosc-magicchatbox/MainWindow.xaml b/vrcosc-magicchatbox/MainWindow.xaml
index e479211..8c1af52 100644
--- a/vrcosc-magicchatbox/MainWindow.xaml
+++ b/vrcosc-magicchatbox/MainWindow.xaml
@@ -2447,6 +2447,27 @@
+
+
+
+ disable legacy OSC support (improved performance)
+
+
+