Janez T
474fd02635
fix: retain voice codec settings now
...
ref:
2026-03-01 11:00:30 +01:00
Janez T
6a83624823
Install CMake 3.18.1 for Flutter
2026-02-28 20:06:52 +01:00
Janez T
f96d8022ac
feat: add Codec2 voice messages over LoRa mesh (iOS/macOS only)
...
Push-to-talk voice messaging using the Codec2 ultra-low-bitrate speech
codec, transmitted as V: prefixed packets over the existing MeshCore
LoRa mesh pipeline.
Voice recording UI (long-press send button or + menu) is gated behind
Platform.isIOS || Platform.isMacOS since the `record` package only
supports microphone capture on those platforms in this build.
Key changes:
- VoiceRecorderService: streams 8kHz mono PCM chunks via `record` package
- VoicePlayerService: decodes Codec2 bytes to WAV and plays via audioplayers
- VoiceCodecService: async Codec2 encode/decode in background isolates
- VoiceProvider: reassembles multi-packet sessions, drives playback
- VoiceMessageBubble: shows packet progress, play/stop controls
- MessagesProvider: detects V: prefix, routes to VoiceProvider
- MessagesTab: PTT long-press gesture + recording indicator (iOS/macOS)
- Message model: isVoice + voiceId fields for session tracking
- Auto-selects codec mode from radio bandwidth (700C/1200/1300 bps)
- codec2_flutter + meshcore_client switched from path to git deps
2026-02-28 19:19:46 +01:00
Janez T
2e422fe653
fix: use git dependency for meshcore_client
2026-02-28 14:18:25 +01:00
Janez T
c39e0e1344
refactor: extract BLE protocol stack into meshcore_client package
...
Move BLE communication layer (command queue, frame parser/builder,
protocol constants, data models) into a standalone reusable Dart package
at ../meshcore_client. App model files become thin re-export wrappers,
keeping all existing consumers working without import changes.
2026-02-28 14:09:30 +01:00
Janez T
baf49d27d8
feat: MeshCore SAR - Flutter BLE mesh radio companion app
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-28 10:11:33 +01:00