LibreArm – 为QardioArm设备注入新生命
LibreArm – Breathing New Life into QardioArm Devices

原始链接: https://ptylr.com/posts/2025-09-28-librearm-breathing-new-life-into-qardioarm-devices

当Qardio公司破产时,其QardioArm血压袖带的用户发现设备因配套应用程序从应用商店下架而无法使用。一位开发者决心复活这些设备,创建了LibreArm——一个开源的iOS应用程序,用于恢复设备功能。 该项目涉及大量的逆向工程,因为没有任何文档存在。开发者使用蓝牙探索应用程序,识别出控制袖带和检索数据所需的关键通信协议和字节序列。该应用程序使用Swift和SwiftUI构建,直接将读数记录到Apple HealthKit,优先考虑简洁性和隐私性。 一个主要障碍是App Store的审核批准,需要在不*解读*数据,仅仅*记录*数据的条件下,应对医疗设备法规。最终,苹果公司基于这一区别批准了该应用程序。 LibreArm现在已在App Store上提供,并在GitHub上完全开源,确保社区控制并抵御潜在的移除。该项目强调了软件的持久性,并展示了开源解决方案如何为废弃的硬件注入新的生命力。

黑客新闻 新 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 LibreArm – 为 QardioArm 设备注入新生命 (ptylr.com) 7 分,来自 souterrain 1 小时前 | 隐藏 | 过去 | 收藏 | 讨论 考虑申请 YC 2026 冬季班!申请截止至 11 月 10 日 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请 YC | 联系 搜索:
相关文章

原文

When Qardio, Inc. went bankrupt, they didn’t just close their doors — they took their app with them. Overnight, the official QardioArm app vanished from the App Store. For those of us who had already invested in the hardware, this was a real problem. The cuff still worked perfectly, but with no app to drive it, it became a dead piece of kit.

I looked at my own QardioArm sitting there and thought: there must be a way to bring this back to life. That was the start of what became LibreArm.

The first challenge was simple: I had no documentation. Qardio was gone. No developer notes, no protocol guide, no SDKs. All I had was the hardware in my hand.

So I turned to nRF Connect, a Bluetooth Low Energy (BLE) exploration app. By connecting directly to the QardioArm, I could see the services and characteristics it exposed. That gave me my first map: service 0x1810, characteristic 0x2A35 — the standard Blood Pressure Measurement service defined by Bluetooth SIG.

But there was also a vendor-specific characteristic, with a long UUID. That, it turned out, was the key to actually telling the cuff when to inflate and when to stop.

Knowing the services is one thing. Talking to them is another. The device wasn’t going to respond to just any message. It needed a very specific sequence of bytes.

Through trial, error, and more than a little hex-dump detective work, I pieced together what the app had been sending before Qardio disappeared. Certain byte sequences would trigger the pump to start inflating. Others would cancel a measurement. The measurement results came back as structured packets — systolic, diastolic, pulse — encoded in the standard GATT format.

This was the most technical and, honestly, the most fun part of the project. There’s something deeply satisfying about watching a device come to life when you finally get the right command sequence.

With the protocol understood, the next step was wrapping it in an iOS app. I wanted this to be as simple and privacy-first as possible:

  • No accounts, no cloud
  • Just a clean interface with a start/stop button
  • Readings written directly to Apple Health, where they belong

I used Swift + SwiftUI for the app, and CoreBluetooth for the BLE connection. The integration with HealthKit was straightforward — Apple provides good APIs for saving blood pressure and heart rate data.

One tricky detail was ensuring that only complete readings got saved. The cuff emits partial values while inflating, and if you saved those directly, you’d fill Health with junk entries. We solved that by adding a simple check: only write to Health when both systolic and diastolic (and ideally pulse) values are present. That way, interrupted or incomplete cycles don’t pollute your health record.

I thought the hard part was over. It wasn’t.

Submitting LibreArm to the App Store opened a whole new can of worms. Apple’s App Review team quite rightly flagged that the app connected to a medical device. That meant regulatory clearance was required — FDA documentation, CE marking, the works.

Normally, this is something the manufacturer provides. But Qardio no longer existed. That left me in a difficult spot: how do you prove compliance for a device whose maker is gone?

After several rounds of review and clarification, referencing old FDA and EC documentation, Apple finally accepted that LibreArm itself wasn’t a medical device — it’s just a wellness logging app. It doesn’t interpret results, give medical advice, or do anything beyond passing readings into HealthKit. That distinction was enough to get approval.

👉 LibreArm on the App Store

From the beginning, I knew this shouldn’t just be my private workaround. There were thousands of other people with the same problem. That’s why LibreArm is fully open source, up on GitHub. Anyone can audit the code, contribute improvements, or fork it if they want.

Open sourcing also makes the app more resilient. If Apple ever decides to remove it from the store, the code will still be out there. You can still sideload it yourself. The community has control.

👉 LibreArm on GitHub

This project reminded me that hardware is only half the story. Without software, it’s useless. And when companies fold, that software can vanish overnight, leaving customers stranded.

LibreArm is my way of saying: it doesn’t have to be that way. With some curiosity, a bit of reverse engineering, and the support of open source, we can keep good hardware alive.

LibreArm is now live on the LibreArm on the App Store. You can also grab the code on LibreArm on GitHub. Most importantly, if you’ve got a QardioArm sitting in a drawer gathering dust, you can use it again.

That’s the real win.

Here are some screenshots from the app:

联系我们 contact @ memedata.com