Repository navigation
First Use
Firmware: V2.001.0002.0000 · Protocol: v4 · Python SDK: 0.5.0
Use the charging accessory supplied for your ring. Red blinking indicates charging; steady green indicates a full charge. See LED Indicators. Charge before testing recording, especially if the reported battery is below 20%.
You need Python 3.10+ and a BLE adapter. Linux also requires BlueZ and Bluetooth access. Install ffmpeg and make it available on your PATH to convert recordings to WAV.
git clone https://github.com/ziloai/OpenZilo.git
cd OpenZilo
python -m pip install -e .
python -m openzilo scan --timeout 10Identify your ring (advertised name: Open Zilo). Use the address or identifier returned by the scanner; its format varies by operating system. The address below is a placeholder. Close other applications connected to the ring.
python -m openzilo info --address AA:BB:CC:DD:EE:FFConfirm the firmware version is V2.001.0002.0000. If it differs, check compatibility before using this guide. Each command connects for its operation; it does not keep a permanent session open.
After startup the ring is in recording mode. Hold the button until green appears, say a short sentence, and release it. If you have already changed modes, use Buttons and Modes to return to recording mode.
python -m openzilo audio-count --address AA:BB:CC:DD:EE:FFCheck that the count increased. Download index 0 to test the first stored recording (this is not necessarily the one you just recorded):
python -m openzilo audio-download --address AA:BB:CC:DD:EE:FF 0 first-recording.wavListen to the generated WAV. The raw recording is also saved. A raw .bin cannot be played by simply renaming it. If WAV conversion fails, check ffmpeg; retain the raw file for retrying conversion.
Single-press to enter gesture mode from recording mode, then wait for the two blue pulses. Edit ADDRESS in examples/imu_stream.py to match your scan result and run:
python examples/imu_stream.pyThe ring must already be in gesture mode when this example starts. Move your hand and confirm batches arrive. A busy response means the prerequisites are not satisfied; check the mode and connection. Press Ctrl+C to stop. See the SDK guide (简体中文) for tap and button event APIs.
- Cannot scan / connect: charge the ring, check Bluetooth permissions, and disconnect other clients.
- No recording: confirm recording mode and sufficient battery; check for the three red error pulses and available storage.
- No IMU data: confirm gesture mode and a successful streaming-start response; restart streaming after reconnecting.
-
Download succeeds but WAV fails: check
ffmpeg; keep the downloaded raw file.
Record your firmware version, SDK version, and reproduction steps when reporting an issue. Remove private recordings and device identifiers from public reports.
OpenZilo Documentation
User Guide · 使用手册
Developer Guides · 简体中文