Documentation version: stable (v0.6.2)
Version migration and firmware differences¶
Device applicability
This document applies to OpenZilo Q.
Check API changes when upgrading the SDK and discover features again after changing firmware. SDK and firmware have separate version numbers; version ordering alone does not determine compatibility.
BLE write chunks and migration from 0.3.x¶
The SDK writes NUS RX in chunks of at most 20 bytes, with a shorter final chunk when necessary. Applications do not configure this size, and it does not disable Windows, Bleak or system MTU negotiation. Incoming notifications need not be 20 bytes; PacketStream reconstructs packets from their headers.
Since 0.4.0, NusClient no longer accepts write_chunk_size. Remove it from custom transport code using 0.3.x:
# Old 0.3.x usage, no longer supported
# transport = sdk.NusClient(address=ADDRESS, write_chunk_size=20)
# 0.4.0
transport = sdk.NusClient(address=ADDRESS)
ring = sdk.OpenZiloClient(transport=transport)
Differences between firmware implementations¶
When upgrading from V2.001.0002.0000 to V2.001.0002.0001, update your application for these changes:
- Remote recording and settings:
V2.001.0002.0001adds start, stop, status and configuration of channels, bitrate, gain and duration.V2.001.0002.0000has none of these APIs. - Live audio:
V2.001.0002.0001adds live Opus output, which the SDK can decode to PCM.V2.001.0002.0000transfers files after recording is saved. - Recording format:
V2.001.0002.0000uses Speex. New recordings inV2.001.0002.0001use mono/stereo Opus (OP2C), with stereo as the default. The SDK still decodes existing Speex files. - Save notification:
V2.001.0002.0000pushes0x0505after saving.V2.001.0002.0001notifies with0x050A, followed by file download. Continue usingreceive_auto_audio_file()for both. - IMU:
V2.001.0002.0000requires gesture mode first.V2.001.0002.0001starts capture on0x0601and stops on0x0603or disconnect. Subscribe again after reconnecting. - Button and tap events:
V2.001.0002.0001removes recording/gesture mode switching; single presses only report events. Tap detection runs with the IMU subscription instead of maintaining separate background capture.
See remote recording, live audio, IMU and events for SDK usage.