-
-
Notifications
You must be signed in to change notification settings - Fork 28
🩵 Heart Rate
The Pulsoid Heart Rate feature in MagicChatbox allows you to display your heart rate in real-time, fully integrated with Pulsoid. It’s compatible with a range of smartwatches and fitness trackers, such as Apple Watch, Garmin, and Fitbit, ensuring you have seamless heart rate monitoring while you are in VR or desktop mode.
- MagicChatbox application
- Mobile device (iOS or Android) with Bluetooth
- Pulsoid account with a 'BRO plan' subscription
- Supported heart rate monitor device (e.g., Apple Watch SE/9/10/ULT)
- VRChat
-
Download and Install MagicChatbox:
- Obtain the MagicChatbox application from its official GitHub page.
-
Create a Pulsoid Account and Subscribe to the 'BRO plan':
-
Enable OSC in VRChat:
- Follow the YouTube guide to enable OSC for integration with VRChat.
-
Download the Pulsoid Mobile App:
-
Connect Your Supported Heart Rate Device:
- Sign into your Pulsoid account on the mobile app and connect your supported device to start transmitting data.
Note: A 'BRO plan' subscription and a compatible heart rate monitor with BLE support are required.
-
Connect via MagicChatbox:
- In MagicChatbox, navigate to Options > Pulsoid Heart Rate Options and click on "Connect with Pulsoid". This action will open a new browser window.
-
Authorize the Application:
- Log into your Pulsoid account with an active BRO subscription and click on "Authorize app".
-
Confirmation:
- Once authorized, close the browser and return to MagicChatbox. It should now display "Connected with Pulsoid".
-
Ensure Device Connection:
- Make sure your heart rate device is connected to your Pulsoid account.
-
Initiate Manual Authorization:
- Navigate to Options > Pulsoid Heart Rate Options in MagicChatbox and select "Manual web authorization".
-
Start Web Authentication:
- Click "Start web authentication with Pulsoid".
-
Authorize and Obtain Token:
- After logging in and authorizing in the new browser window, you'll be redirected to a page showing an authorization token.
-
Connect Using Token:
- Copy this token, paste it into MagicChatbox, and click "Connect".
-
Disconnecting Pulsoid:
- To disconnect Pulsoid from MagicChatbox, click the red "X" button.
-
Prefix Icon
- Choose to display a custom prefix icon in front of your heart rate to personalize your display.
-
Auto-Change Icons
- Automatically change the heart rate icons based on your current heart rate zone.
-
Pulsoid Stats
- Enable Pulsoid Stats to show detailed heart rate data over a specific time frame. Select the period (e.g., 24 hours), and choose to display metrics like calories burned, average heart rate, and recorded times during your session.
-
Temperature Status
- Show your body temperature status in addition to heart rate, providing more detailed data.
-
Heart Rate Trends
- Display trend indicators to show how your heart rate is changing over time, helping you keep track of your heart rate trends.
MagicChatbox now includes support for Open Sound Control (OSC), enabling enhanced communication between MagicChatbox and other applications or avatars that support OSC. This integration allows you to send real-time heart rate data and related statistics to your VRChat avatar or other OSC-compatible platforms.
Depending on your settings in the Pulsoid Heart Rate Options, MagicChatbox can send various OSC parameters. These parameters can be used to trigger animations, visual effects, or other responses in your avatar based on your heart rate data.
Below is a comprehensive table of OSC parameters available in MagicChatbox. The availability of certain parameters depends on the toggles enabled in the settings menu.
Parameter Address | Type | Description | Available When |
---|---|---|---|
/avatar/parameters/isHRConnected | bool | Indicates whether the heart rate connection to Pulsoid is active. | Always available. |
/avatar/parameters/isHRActive | bool | Indicates whether the heart rate device is currently active (online). | Always available. |
/avatar/parameters/isHRBeat | bool | Indicates if a new heart rate beat has been received. | Always available. |
/avatar/parameters/HRPercent | float | Heart rate as a percentage of the maximum value (255 BPM). | Always available. |
/avatar/parameters/FullHRPercent | float | Full heart rate percentage normalized between -1 and 1. | Always available. |
/avatar/parameters/HR | int | Current heart rate in beats per minute (BPM). | Always available. |
/avatar/parameters/onesHR | int | Ones digit of the heart rate value. | Available when Disable Legacy OSC Support is False. |
/avatar/parameters/tensHR | int | Tens digit of the heart rate value. | Available when Disable Legacy OSC Support is False. |
/avatar/parameters/hundredsHR | int | Hundreds digit of the heart rate value. | Available when Disable Legacy OSC Support is False. |
/avatar/parameters/MCB_Heartrate_Hot | bool | Indicates if the heart rate is above the high-temperature threshold. | Available when Sent MCB Heartrate Info is True. |
/avatar/parameters/MCB_Heartrate_Sleepy | bool | Indicates if the heart rate is below the low-temperature threshold. | Available when Sent MCB Heartrate Info is True. |
/avatar/parameters/MCB_Heartrate_TrendUp | bool | Indicates an upward trend in heart rate. | Available when Sent MCB Heartrate Info is True and Heart Rate Trends are enabled. |
/avatar/parameters/MCB_Heartrate_TrendDown | bool | Indicates a downward trend in heart rate. | Available when Sent MCB Heartrate Info is True and Heart Rate Trends are enabled. |
/avatar/parameters/MCB_Heartrate_Min | int | Minimum heart rate recorded over the selected time frame. | Available when Sent MCB Heartrate Info is True and Sent MCB Heartrate Info Legacy is False. |
/avatar/parameters/MCB_Heartrate_Max | int | Maximum heart rate recorded over the selected time frame. | Available when Sent MCB Heartrate Info is True and Sent MCB Heartrate Info Legacy is False. |
/avatar/parameters/MCB_Heartrate_Avg | int | Average heart rate over the selected time frame. | Available when Sent MCB Heartrate Info is True and Sent MCB Heartrate Info Legacy is False. |
/avatar/parameters/MCB_Heartrate_Min_Ones | int | Ones digit of the minimum heart rate. | Available when Sent MCB Heartrate Info Legacy is True. |
/avatar/parameters/MCB_Heartrate_Min_Tens | int | Tens digit of the minimum heart rate. | Available when Sent MCB Heartrate Info Legacy is True. |
/avatar/parameters/MCB_Heartrate_Min_Hundreds | int | Hundreds digit of the minimum heart rate. | Available when Sent MCB Heartrate Info Legacy is True. |
/avatar/parameters/MCB_Heartrate_Max_Ones | int | Ones digit of the maximum heart rate. | Available when Sent MCB Heartrate Info Legacy is True. |
/avatar/parameters/MCB_Heartrate_Max_Tens | int | Tens digit of the maximum heart rate. | Available when Sent MCB Heartrate Info Legacy is True. |
/avatar/parameters/MCB_Heartrate_Max_Hundreds | int | Hundreds digit of the maximum heart rate. | Available when Sent MCB Heartrate Info Legacy is True. |
/avatar/parameters/MCB_Heartrate_Avg_Ones | int | Ones digit of the average heart rate. | Available when Sent MCB Heartrate Info Legacy is True. |
/avatar/parameters/MCB_Heartrate_Avg_Tens | int | Tens digit of the average heart rate. | Available when Sent MCB Heartrate Info Legacy is True. |
/avatar/parameters/MCB_Heartrate_Avg_Hundreds | int | Hundreds digit of the average heart rate. | Available when Sent MCB Heartrate Info Legacy is True. |
Parameter Types:
- Bool: Represents a true or false value.
- Float: Represents a floating-point number.
- Int: Represents an integer.
To utilize the OSC parameters in VRChat, follow these steps:
-
Ensure OSC is Enabled in VRChat:
- Follow the YouTube guide to enable OSC for your VRChat avatar.
-
Map OSC Parameters to Avatar Parameters:
- Use Unity and the VRChat SDK to map the OSC parameters to your avatar's parameters. This allows your avatar to respond to changes in your heart rate, such as triggering animations or visual effects.
-
Customize Avatar Responses:
- Depending on the OSC parameters received, you can create custom behaviors in your avatar. For example:
-
Heartbeat Animation: Use the
/avatar/parameters/HR
value to drive a heartbeat animation. -
Color Changes: Change the avatar's color based on
/avatar/parameters/HRPercent
. -
Trend Indicators: Display upward or downward trend symbols using
/avatar/parameters/HRTrendIndicator
.
-
Heartbeat Animation: Use the
- Depending on the OSC parameters received, you can create custom behaviors in your avatar. For example:
The Settings menu in MagicChatbox allows you to customize how your heart rate data is displayed and integrated with OSC. Below is an overview of the available settings and their functionalities.
- Show Prefix Icon: Display a custom icon before your heart rate.
- Auto-Change Icons: Automatically switch icons based on heart rate zones.
- Enable Pulsoid Stats: Toggle detailed heart rate statistics.
- Show Temperature Status: Display body temperature alongside heart rate.
- Show Heart Rate Trends: Enable trend indicators for heart rate changes.
- Enable OSC Support: Activate OSC integration for sending heart rate data to VRChat or other OSC-compatible platforms.
- Send Magic Info to OSC: Send additional heart rate information such as trend indicators and statistics.
- Disable Legacy OSC Support: Improve performance by disabling older OSC parameters.
- Smooth Heart Rate to Chatbox: Apply smoothing to heart rate data before displaying.
- Heart Rate Adjustment: Adjust heart rate values by a specified BPM.
- Check for Offline Heart Rate: Mark heart rate as offline if unchanged for a set duration.
- Show BPM Suffix: Append "bpm" after the heart rate value.
- Show Heart-Rate Title: Display a custom title before the heart rate value.
- Show Prefix Icon: Enable or disable the display of a prefix icon before the heart rate value.
- Auto-Change Icons: Enable or disable automatic changing of the prefix icon based on heart rate zones.
- Enable Pulsoid Stats: Toggle the display of detailed heart rate statistics.
- Select Time Frame: Choose the time frame for statistics (24h, 7d, 30d).
- Show Calories: Display calories burned.
- Show Average Heart Rate: Display average heart rate.
- Show Maximum Heart Rate: Display maximum heart rate.
- Show Minimum Heart Rate: Display minimum heart rate.
- Show Recorded Time: Display recorded duration over the selected time frame.
- Show Selected Time in Recorded Time: Show the selected time frame in the recorded duration.
- Hide Current Heart Rate: Hide the current heart rate when displaying stats.
- Place Trend Indicator Behind Stats: Position the trend indicator behind the stats display.
- Enable OSC Support: Activate OSC integration to send heart rate data to VRChat or other OSC-compatible platforms.
- Send Magic Info to OSC: Enable sending additional heart rate information such as trend indicators and statistics.
- Send Legacy Heart Rate Info to OSC: Enable sending legacy heart rate information (digits) to OSC.
- Smooth OSC Heart Rate: Apply smoothing to heart rate data before sending to OSC.
- Smooth OSC Heart Rate Time Span: Number of heart rate updates to smooth for OSC.
- Smooth Heart Rate to Chatbox: Apply smoothing to heart rate data before displaying in Chatbox.
- Smooth Heart Rate Time Span: Number of heart rate updates to smooth for display.
- Heart Rate Adjustment: Adjust heart rate values by a specified BPM.
- Enable Heart Rate Offline Check: Enable offline heart rate detection.
- Unchanged Heart Rate Timeout (Seconds): Duration in seconds to consider heart rate as offline if unchanged.
- Show BPM Suffix: Append "bpm" after the heart rate value.
- Disable Legacy OSC Support: Disable legacy OSC support for improved performance.
- Show Heart-Rate Title: Display a custom title before the heart rate value.
- Heart-Rate Title Custom: Set the custom heart rate title.
- Separate Title with Enter: Separate the title and heart rate with an enter key.
MagicChatbox users can take advantage of a 15% discount on Pulsoid’s BRO Plan. This plan unlocks premium features and provides seamless integrations with VRChat and MagicChatbox.
-
Visit the Promo Page:
- Access your exclusive offer here: Pulsoid Promo Pricing
-
Purchase the BRO Plan:
- Complete your purchase within 24 hours of visiting the promo page to automatically apply the discount.
-
Enjoy Enhanced Features:
- Unlock unique widgets, custom settings, and more with your new BRO Plan.
- This discount is valid for new subscriptions only.
- The discount is available within 24 hours after visiting the promo page.
- If you've already purchased without the discount, you can cancel and resubscribe using the referral link after your trial period.
MagicChatbox's integration with Pulsoid offers a comprehensive solution for real-time heart rate monitoring within both VR and desktop environments. With the added support for OSC, users can now extend their heart rate data's functionality, enabling dynamic interactions and visualizations in connected applications and avatars. By following this guide, you can set up, configure, and optimize your heart rate monitoring experience, ensuring you stay connected and in tune with your vitals during all your activities.
For any further assistance or questions, please refer to the MagicChatbox GitHub Repository or contact our support team.