A while back, I set up a few smart home features in the house. But they're mostly things like turning down the thermostats when a window is open or using a motion sensor to turn on the lights.
Then I had the following idea: Why not use this data to identify behavioral patterns? In other words, if a door isn’t opened the way it usually is, that could mean something. My mom now has a FitBit Air, too, which provides data. That would be great as well. But to do that, all the data with its different connection types (Zigbee, Bluetooth, external APIs) needs to be consolidated. The fact that they’re all from different manufacturers doesn’t make things any easier.
That’s how my open source project "Healthcore" came to be.
Healthcore is an open software and hardware architecture for (healthcare) devices. "Healthcare" is in parentheses because, in theory and practice, standard smart home components can also be used, but in the long run, I’d like to include things like blood glucose monitors. Think of Healthcore as similar to OpenHAB or Home Assistant, but with a greater focus on intelligent data analysis and actions tailored to healthcare. Incoming data is standardized.
For each device, there is converter. Healthcore uses various anomaly detection methods across the collected data to trigger alerts. These alerts can then be used to define actions in scenarios (e.g., if blood sugar is unusually low at night, turn on the lights and send a push notification). Reports can also be generated from the data using a locally hosted LLM.
Healthcore also supports LoRa P2P for transmitting data over long distances.
Healthcore is currently headless. However, anyone can quickly build their own interface using the Swagger file.
The Healthcore is meant to be the foundation for my startup, bulp.io. With bulp.io, I’ll build or license my own hardware, which will, of course, be 110% compatible with the Healthcore. My primary target audience is my mom, followed by other people living alone, and then nursing homes.
What do you think? Is this a good idea? Feel free to check out the repository on GitHub and give me some feedback.