Add compact chunked client API payload#980
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThis PR modifies the ChunkedPayload protobuf message in mesh.proto, removing payload_id, chunk_count, and chunk_index fields and replacing them with payload_size and payload_chunk. New chunked_payload fields are added to FromRadio and ToRadio oneofs. Corresponding nanopb option sizing updates are made in mesh.options. ChangesChunkedPayload schema and wiring
Estimated code review effort: 2 (Simple) | ~10 minutes Sequence Diagram(s)Not applicable — this PR consists of protobuf schema field changes without observable multi-component runtime flow. Estimated code review effort: 2 (Simple) | ~10 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
Compatibility note for reviewers: this intentionally reuses and reshapes the existing |
Summary
Add a compact
ChunkedPayloadmessage for Meshtastic client API transports that need to carry serializedToRadio/FromRadioprotobuf packets over small BLE characteristic reads and writes.This is intended for constrained BLE centrals such as Garmin Connect IQ devices, where public BLE writes are limited to 20 bytes and ATT long reads are not available.
Related firmware implementation PR: meshtastic/firmware#10928
What Changed
ToRadio.chunked_payload = 8.FromRadio.chunked_payload = 20.ChunkedPayload:payload_size = 1,uint32, nanopbint_size:16.payload_chunk = 2, nanopbmax_size:228.Transport Behavior
payload_sizeandpayload_chunk.payload_chunk.Compatibility
Testing
Summary by CodeRabbit
New Features
Changes