From c831957c0d8a5a2d9cfddf412c49cd166f3b7561 Mon Sep 17 00:00:00 2001 From: geeksville Date: Sat, 8 Feb 2020 09:50:15 -0800 Subject: [PATCH] allow larger packets --- src/MeshRadio.cpp | 2 ++ src/mesh.pb.c | 2 +- src/mesh.pb.h | 14 +++++++------- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/MeshRadio.cpp b/src/MeshRadio.cpp index 352136b7b..2758cbad3 100644 --- a/src/MeshRadio.cpp +++ b/src/MeshRadio.cpp @@ -137,6 +137,8 @@ static int16_t packetnum = 0; // packet counter, we increment per xmission uint8_t rxlen; uint8_t srcaddr, destaddr, id, flags; + assert(SubPacket_size < 251); // a hard limit from the radio stack (including 4 bytes of headers) + // Poll to see if we've received a packet // if (manager.recvfromAckTimeout(radiobuf, &rxlen, 0, &srcaddr, &destaddr, &id, &flags)) // prefill rxlen with the max length we can accept - very important diff --git a/src/mesh.pb.c b/src/mesh.pb.c index 9c1e5accb..eb86c0398 100644 --- a/src/mesh.pb.c +++ b/src/mesh.pb.c @@ -36,7 +36,7 @@ PB_BIND(NodeInfo, NodeInfo, AUTO) PB_BIND(MyNodeInfo, MyNodeInfo, AUTO) -PB_BIND(DeviceState, DeviceState, 2) +PB_BIND(DeviceState, DeviceState, 4) PB_BIND(FromRadio, FromRadio, AUTO) diff --git a/src/mesh.pb.h b/src/mesh.pb.h index cd357e506..d0aa7642d 100644 --- a/src/mesh.pb.h +++ b/src/mesh.pb.h @@ -34,7 +34,7 @@ typedef enum _DeviceState_Version { } DeviceState_Version; /* Struct definitions */ -typedef PB_BYTES_ARRAY_T(100) Data_payload_t; +typedef PB_BYTES_ARRAY_T(200) Data_payload_t; typedef struct _Data { Data_Type typ; Data_payload_t payload; @@ -374,18 +374,18 @@ extern const pb_msgdesc_t ToRadio_msg; /* Maximum encoded size of messages (where known) */ #define Position_size 42 -#define Data_size 104 +#define Data_size 205 #define User_size 72 #define WantNodeNum_size 14 #define DenyNodeNum_size 8 -#define SubPacket_size 106 -#define MeshPacket_size 130 +#define SubPacket_size 208 +#define MeshPacket_size 233 #define RadioConfig_size 70 #define NodeInfo_size 151 #define MyNodeInfo_size 11 -#define DeviceState_size 9345 -#define FromRadio_size 139 -#define ToRadio_size 133 +#define DeviceState_size 12641 +#define FromRadio_size 242 +#define ToRadio_size 236 #ifdef __cplusplus } /* extern "C" */