Skip to content

Add O2Ring-S OxyII support - #7

Open
saim256 wants to merge 1 commit into
MackeyStingray:masterfrom
saim256:oxyii-o2ring-s-support-5
Open

Add O2Ring-S OxyII support#7
saim256 wants to merge 1 commit into
MackeyStingray:masterfrom
saim256:oxyii-o2ring-s-support-5

Conversation

@saim256

@saim256 saim256 commented May 11, 2026

Copy link
Copy Markdown

Summary

  • add an OxyII protocol frame codec and O2Ring-S/T8520 downloader state machine
  • detect O2Ring-S sync-mode advertisements by OxyII service UUID, S8-AW/T8520 names, and manufacturer data
  • download O2Ring-S recordings through the OxyII file-transfer flow and convert the v1 recording format to CSV
  • document the protocol source used for the implementation

Fixes #5.

Notes

This is based on the public protocol writeup and reference implementation from https://github.com/nglessner/o2ring-s-protocol. I do not have physical O2Ring-S hardware attached in this environment, so the live BLE path still needs validation by someone with a T8520/O2Ring-S. The local checks cover syntax, OxyII frame encoding/decoding, file-list parsing, auth/time payload shape, and synthetic v1 recording conversion.

Verification

  • python -m compileall o2r o2ring.py o2convert.py
  • focused Python fixture for OxyII frame codec/file-list parsing/auth payload shape/synthetic v1 recording conversion
  • git diff --check

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature request with bounty] Add support for O2Ring-S Smart Ring Pulse Oximeter

1 participant