Repository navigation
Add wireless Rokid–iPhone MiniCPM conversations and Windows IPA workflow - #9
Draft
MengzhangLI wants to merge 11 commits into
Draft
MengzhangLI wants to merge 11 commits into
MengzhangLI wants to merge 11 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Rokid can send camera frames and microphone audio directly to an iPhone over its Personal Hotspot or a shared Wi-Fi network. OpenGlass runs Apple on-device ASR, MiniCPM-V 4.6, and system TTS on the phone. With models present, opening the app starts reception automatically; a spoken question is finalized after a pause, answered, read aloud, and followed by automatic listening for the next question. Each inference clears the KV cache.
The Rokid collector discovers and verifies the receiver through Bonjour or the Wi-Fi gateway, remembers the selected phone, and uses one endpoint for both streams. Automatic mode does not fall back to USB. Reconnect backoff, a stalled-write watchdog, and generation-checked camera callbacks handle interruptions. The existing explicit PC/USB address path remains available. A separate OpenGlass WiFi Android variant allows installation when the original collector's signing key is unavailable. Its glasses display now shows one dim, centered status line instead of the diagnostic dashboard; connection settings remain available by touch long press or Menu. Normal taps and confirmation keys only resume a paused session, while an explicit menu action pauses capture; confirmation key-down is consumed to prevent the focused HUD from opening settings on a held key. The HUD disables the full-screen focus highlight and the settings dialog has an explicit Close button.
The iOS overlay builds against pinned official MiniCPM-V-Apps sources in GitHub Actions. Windows scripts provide artifact verification, USB relay, and optional Wi-Fi configuration. The local-only Windows signing workflow has successfully installed the iPhone app; credentials and model weights are excluded from CI. Updates retain the existing model files.
Continuous listening treats an empty final as a normal task rotation, avoiding the old 0.5–8 second retry gaps during silence. Short noise cannot end a task before any words are recognized. Audio arriving during endAudio/finalization is held briefly for the next task only after an empty result; a nonempty result, error, stop or interruption clears it. ASR metadata in /health distinguishes accepted samples from received network packets without exposing audio or transcripts. Real recognition errors retain bounded backoff, and inference/TTS keep their existing input gates.
Validation:
The iPhone app must stay in the foreground. ASR pauses during inference and TTS, with a shared echo hold before resuming. Temporary recognition failures retry automatically; missing permissions/language resources and model failures remain explicit. A user pause is respected across callbacks and foreground restoration. The app does not provide simultaneous speaking/listening or speech interruption of TTS, and hotel Wi-Fi must permit peer-to-peer traffic.