Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
2a89702
renamed tau ring to OpenRing
TobiasRoeddiger Feb 11, 2026
d989da4
renamed folder
TobiasRoeddiger Feb 11, 2026
ffbf865
added missing file
TobiasRoeddiger Feb 11, 2026
1605d98
renamed value parser
TobiasRoeddiger Feb 11, 2026
9efe6be
Add OpenRing PPG sensor parsing and configuration
TobiasRoeddiger Feb 11, 2026
308fa0f
Merge pull request #111 from OpenEarable/codex/add-ppg-support-for-op…
TobiasRoeddiger Feb 11, 2026
85d291e
small changes
TobiasRoeddiger Feb 11, 2026
ba000bc
Add OpenRing payload-based config and PPG streaming command
TobiasRoeddiger Feb 11, 2026
56b7418
updates
TobiasRoeddiger Feb 11, 2026
eb470c2
Fix OpenRing IMU frame parsing and add PPG packet decoding
TobiasRoeddiger Feb 11, 2026
ab0a8e1
Swap OpenRing PPG start/stop control byte
TobiasRoeddiger Feb 11, 2026
1ec726f
Harden OpenRing IMU stream handling for mixed packets
TobiasRoeddiger Feb 11, 2026
6b90fc1
Make OpenRing parser tolerant to partial/mixed packets
TobiasRoeddiger Feb 11, 2026
2b1ecfc
Decode OpenRing PPG packet type 0x02 frames
TobiasRoeddiger Feb 11, 2026
8e25cba
Fix OpenRing IMU payload offset and flexible waveform logs
TobiasRoeddiger Feb 11, 2026
cb6aa71
Fix OpenRing sample timestamps to be strictly monotonic
TobiasRoeddiger Feb 11, 2026
9758f6b
Trace OpenRing parsed/emitted values and decouple timestamps by cmd
TobiasRoeddiger Feb 11, 2026
907aa83
Estimate IMU sample rate from packet timing for timestamp spacing
TobiasRoeddiger Feb 11, 2026
b60afdd
Use fixed IMU sample spacing for timestamps
TobiasRoeddiger Feb 11, 2026
d8df562
Align IMU accel parsing with SDK sub-opcode behavior
TobiasRoeddiger Feb 11, 2026
81d8842
Ignore OpenRing accel-only IMU packets and parse accel+gyro only
TobiasRoeddiger Feb 11, 2026
bcadb0e
fully implemented imu
TobiasRoeddiger Feb 11, 2026
31c3d0e
resolve merge conflict
TobiasRoeddiger Feb 11, 2026
bf763d7
added PPG support
TobiasRoeddiger Feb 11, 2026
4113108
all sensors working
TobiasRoeddiger Feb 11, 2026
6265086
implemented wall clock time sync for OpenRing
TobiasRoeddiger Feb 11, 2026
386018a
implemented regular battery polling
TobiasRoeddiger Feb 11, 2026
96014a2
ensure timing logic while battery and time sync
TobiasRoeddiger Feb 11, 2026
674e4e4
implemented openring
TobiasRoeddiger Feb 13, 2026
c53a9c0
added device image feature with stereo support
TobiasRoeddiger Feb 14, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
## 2.3.3

* renamed TauRing to OpenRing
* added support for OpenRing temperature sensors (`temp0`, `temp1`, `temp2`) as one 3-channel `Temperature` sensor (`°C`) with software-only on/off control

## 2.3.2

* fixed some bugs with Esense devices
Expand Down Expand Up @@ -73,4 +78,4 @@ Connecting to earable now retries after first failure.

## 0.0.1

* TODO: Describe initial release.
* TODO: Describe initial release.
Binary file added assets/wearable_icons/open_earable_v2/left.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/wearable_icons/open_earable_v2/pair.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/wearable_icons/open_earable_v2/right.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions lib/open_earable_flutter.dart
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ import 'src/managers/wearable_disconnect_notifier.dart';
import 'src/models/capabilities/stereo_device.dart';
import 'src/models/capabilities/system_device.dart';
import 'src/models/devices/discovered_device.dart';
import 'src/models/devices/tau_ring_factory.dart';
import 'src/models/devices/open_ring_factory.dart';
import 'src/models/devices/wearable.dart';

export 'src/models/devices/discovered_device.dart';
Expand Down Expand Up @@ -111,7 +111,7 @@ class WearableManager {
CosinussOneFactory(),
PolarFactory(),
DevKitFactory(),
TauRingFactory(),
OpenRingFactory(),
EsenseFactory(),
];

Expand Down
Loading