Cheap and easy way to add heartbeat to your stream with Apple Watch
In the past, I used to stream a little bit using the Twitch platform with OBS, or Open Broadcaster Software as it is called. It is probably one of the most versatile and powerful tools for streaming and recording. Anyway, if you had at some point wanted to add your heartbeat to supplement your stream experience. Perhaps playing a horror game or doing something intense? It’s a small cool addition.
The main thing is that heartbeat monitors don’t come cheap and not all come with functionality to forward data to somewhere else. From what I have dug up is an app called Health Data Server. Found here:
It has a simplistic interface but offers the function it advertises
You can head over to the GitHub link below to the creator of the app to get some more details on what you can do with it.
Overall the server-side application can be run on Windows/Mac/Linux. From what I have read recently it can also support Android WearOS 2.0 watches. It is nice that there is added compatibility. Also features cloud support, so you don’t even have to host anything on your side. However, for this, we will be focusing on the IOS side of things and self-hosting it on Windows since that is how I used it in the past.
So in terms of hardware, I used an Apple Watch Series 2 and a PC running Windows 10 with OBS. You are going to want to download the windows-exe.zip file from the GitHub releases page and extract it somewhere since we are going to use the app inside of it. Have the app downloaded and available on your watch as well.
Running the Windows app does not need any special configuration. If you have some sort of firewall you should be prompted to allow connection if not you will have to do that manually based on what you use as it needs to be able to communicate over port 3476. Once it is launched you can go to your watch and open the app it will tell you it needs a first-time setup. Disable the HDS Cloud option since we want to use this locally. You will be given the option to enter the IP address. This address must be the same IP as the computer your app is running on. The IP should be displayed in the app window.
After typing that in you can check the other settings if you want but for the basic heartbeat, you can head back. You will be presented with an option to start providing the data. That is it on the watch side.
Now on the PC once the watch is sending data you should see a connection appear in the window. If you didn’t change anything it should be like this:
As can be seen, the heart rate is already being sent. In terms of configuring the app and the watch, we are done here. All that is left to do is make it show inside of OBS.
In OBS you should add a new source under the sources tab below. By using the + button choose the browser source:
Name it and once done you will be presented with a new window under which we will provide the server details to pull the heartbeat data. In the URL line, you will add the hds.dev link. Save it and you should have the heart shape and some UI visible. Don’t worry this will hide in a moment but we need to change some stuff. We will need to interact with the source. Right-click the browser source and select Interact.
Now we can navigate the UI in the source, press the three rows on the left or the so-called hamburger icon. Go to settings and disable HDS cloud there as well. Like it was done on the Apple watch. It should autofill the fields with localhost and port 3476. Unless your configuration is different you can change these.
You can test this in a browser by going to hds.dev prior and it should pull up a similar GUI to the app.
Once done and saved you should be seeing the source on screen with a heart shape and the numbers of your heartbeat updating live. That’s it! You have your heartbeat streaming from your Apple Watch to your OBS software. Keep in mind you will need to run the app every time you want to get heartbeat data otherwise the communication between the watch and PC won’t happen.
Shoutout to Rexios80 for this cool app. If you have any issues they have the GitHub page posted earlier and a Discord server. Don’t hesitate
Hope this is useful to some.