Not sure why you'd exclude cloud in 2019 as that's the normal way to build such a solution. My Event Hub App in the store allows all sensor data to be uploaded in real time from as many watches/devices…
My posts were free and open source. Soon I will hide them on my Github, following the method of Nils Knieling for livetracking.io
If you pay me a lot of money and give me the job to develop an excellent Matlab server, or help me to develop an excellent Matlab server, I'll bring them back.
Matlab is far from free, and although the Python community produces a lot of code, most useful things will cost something, even if that something is contribution of time and code back to the community. You need to start distinguishing between open source and zero cost. Taking open code and charging for it will not leave you in a good position within that community. Avoiding extremely cheap services to increase profit will leave you with a poor product nobody will pay for. The infrastructure behind my project for example costs pennies to run but will scale to tens of millions of devices without any changes at all. The ML part of my project can be created on a laptop with Python if you have the skills (and I do!), but I used ML Studio as it was quicker and easier so time to value was reduced.
Good to have several options. Many students have free access to Matlab at universities.There is a home version of Matlab which is affordable, and more and more projects are completely free and open source in Python.
I tested a view times the solution of https://livetracking.io/ as it was still running with the InfluxDB and found it was an excellent solution.
But not all applications need a server. For those, a solution derived from the solution "ANT+ virtual power" with an ANT+ stick might be sufficient:
An option to upload sensor data to a PC is the application IpBike:
IpBike has the option of custom livetracking settings. I think it should be possible to stream sensor data from IpBike directly to a PC application. But how can the individual sensor data (heart rate, speed, etc) being read out on a PC application from the IpBike data? How are the ANT+ sensor data coded?