{"id":43745590,"url":"https://github.com/mrozycki/healthpi","last_synced_at":"2026-02-05T12:30:44.035Z","repository":{"id":46867875,"uuid":"485468362","full_name":"mrozycki/healthpi","owner":"mrozycki","description":"Application for collecting and tracking health data","archived":false,"fork":false,"pushed_at":"2024-04-07T20:14:37.000Z","size":430,"stargazers_count":4,"open_issues_count":1,"forks_count":1,"subscribers_count":4,"default_branch":"main","last_synced_at":"2024-05-02T04:24:44.497Z","etag":null,"topics":["ble","bluetooth","bluetooth-low-energy","health","raspberry-pi","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mrozycki.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2022-04-25T17:27:12.000Z","updated_at":"2023-11-29T13:54:59.000Z","dependencies_parsed_at":"2024-04-07T03:21:05.804Z","dependency_job_id":"48b597d7-a70f-459a-b584-a2191ce0a49e","html_url":"https://github.com/mrozycki/healthpi","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mrozycki/healthpi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrozycki%2Fhealthpi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrozycki%2Fhealthpi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrozycki%2Fhealthpi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrozycki%2Fhealthpi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mrozycki","download_url":"https://codeload.github.com/mrozycki/healthpi/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrozycki%2Fhealthpi/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29121753,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-05T10:47:47.471Z","status":"ssl_error","status_checked_at":"2026-02-05T10:45:08.119Z","response_time":65,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ble","bluetooth","bluetooth-low-energy","health","raspberry-pi","rust"],"created_at":"2026-02-05T12:30:43.355Z","updated_at":"2026-02-05T12:30:44.009Z","avatar_url":"https://github.com/mrozycki.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"HealthPi\n========\n\nUtility to fetch and read data from smart health devices.\n\nSupported devices\n-----------------\n\nCurrently the following devices are supported:\n\n* Soehnle Shape Sense Connect 200 (scale)\n* Soehnle Systo Monitor Connect 400 (blood pressure monitor)\n* Ascensia Contour Plus Elite (glucometer)\n\nRunning the application\n-----------------------\n\nThe application uses `bluez_async` for Bluetooth LE connectivity, which\nonly works on Linux machines. It has been tested on Raspberry Pi 4.\n\nThe entire thing is written in Rust, which means you will have to install\ncargo to compile and run the program. You will also need `libdbus`\nand `pkg-config` installed, which you can do on Ubuntu with:\n\n```\nsudo apt install libdbus-1-dev pkg-config\n```\n\nAfter that simply run:\n\n```\ncargo run --release\n```\n\nin the project root directory in order to run the program.\n\n### Device setup\n\nCurrently HealthPi does not support pairing devices. In order to set up a device\nto work with HealthPi, you need to create a `devices.csv` file, including one\ndevice MAC address per file. If your device needs a special pairing procedure\n(e.g. providing one-time code to establish an encrypted connection), you need\nto perform it through an external tool, e.g. `bluetoothctl`. This only needs\nto be done one per device.\n\n### Database setup\n\nHealthPi uses [sqlx-cli](https://github.com/launchbadge/sqlx/blob/main/sqlx-cli/README.md) \nto manage database migrations. At this point, you need to run the migrations manually. \nsqlx-cli is included in the nix development shell, so you can set up the database by\nrunning:\n\n```\nnix develop\nsqlx database create\nsqlx migrate run\n```\n\nIf you do not want to use nix, you can install sqlx-cli with\n\n```\ncargo install sqlx-cli\n```\n\nLocal development setup\n-----------------------\n\n### Using nix\n\n#### Setup\n\n1. Install nix by following instructions at https://nixos.org/download\n2. Add the following line to /etc/nix/nix.conf:\n```nix\nexperimental-features = nix-command flakes\n```\n3. (optional) Install [direnv](https://direnv.net) and [direnv VSCode extension](https://marketplace.visualstudio.com/items?itemName=mkhl.direnv).\n\n#### Workflow\n\nUse `nix develop` to enter development shell. From there you'll have access\nto any tools and dependencies needed for development.\n\n### Git hooks\n\nThis repository has git hooks prepared that check simple conditions that might\notherwise trip up the CI setup. We recommend that you use them. In order to set\nthem up, run the following command inside the repository:\n\n```\ngit config core.hooksPath .githooks\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrozycki%2Fhealthpi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrozycki%2Fhealthpi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrozycki%2Fhealthpi/lists"}