♻️ Makes messages use static array and sizes

This commit is contained in:
Rune Harlyk
2026-01-03 00:51:51 +01:00
committed by nikguin04
parent 6c737c10c7
commit 86a4cee7ae
7 changed files with 558 additions and 412 deletions
+1 -5
View File
@@ -8,8 +8,4 @@
PB_BIND(rest_message_WifiStatus, rest_message_WifiStatus, AUTO)
PB_BIND(rest_message_WifiSettings, rest_message_WifiSettings, AUTO)
PB_BIND(rest_message_WifiSettings, rest_message_WifiSettings, 2)
+67 -47
View File
@@ -13,72 +13,91 @@
/* Struct definitions */
typedef struct _rest_message_WifiStatus {
int32_t status;
pb_callback_t local_ip;
pb_callback_t mac_address;
char local_ip[16];
char mac_address[18];
float rssi;
pb_callback_t ssid;
pb_callback_t bssid;
char ssid[33];
char bssid[18];
uint32_t channel;
pb_callback_t subnet_mask;
pb_callback_t gateway_ip;
pb_callback_t dns_ip_1;
pb_callback_t dns_ip_2;
char subnet_mask[16];
char gateway_ip[16];
char dns_ip_1[16];
bool has_dns_ip_2;
char dns_ip_2[16];
} rest_message_WifiStatus;
typedef struct _rest_message_WifiSettings {
pb_callback_t hostname;
char hostname[32];
bool priority_rssi;
pb_callback_t wifi_networks;
pb_size_t wifi_networks_count;
socket_message_KnownNetworkItem wifi_networks[8];
} rest_message_WifiSettings;
#ifdef __cplusplus
extern "C" {
#endif
/* Initializer values for message structs */
#define rest_message_WifiStatus_init_default {0, {{NULL}, NULL}, {{NULL}, NULL}, 0, {{NULL}, NULL}, {{NULL}, NULL}, 0, {{NULL}, NULL}, {{NULL}, NULL}, {{NULL}, NULL}, {{NULL}, NULL}}
#define rest_message_WifiSettings_init_default {{{NULL}, NULL}, 0, {{NULL}, NULL}}
#define rest_message_WifiStatus_init_zero {0, {{NULL}, NULL}, {{NULL}, NULL}, 0, {{NULL}, NULL}, {{NULL}, NULL}, 0, {{NULL}, NULL}, {{NULL}, NULL}, {{NULL}, NULL}, {{NULL}, NULL}}
#define rest_message_WifiSettings_init_zero {{{NULL}, NULL}, 0, {{NULL}, NULL}}
#define rest_message_WifiStatus_init_default \
{ 0, "", "", 0, "", "", 0, "", "", "", false, "" }
#define rest_message_WifiSettings_init_default \
{ \
"", 0, 0, { \
socket_message_KnownNetworkItem_init_default, socket_message_KnownNetworkItem_init_default, \
socket_message_KnownNetworkItem_init_default, socket_message_KnownNetworkItem_init_default, \
socket_message_KnownNetworkItem_init_default, socket_message_KnownNetworkItem_init_default, \
socket_message_KnownNetworkItem_init_default, socket_message_KnownNetworkItem_init_default \
} \
}
#define rest_message_WifiStatus_init_zero \
{ 0, "", "", 0, "", "", 0, "", "", "", false, "" }
#define rest_message_WifiSettings_init_zero \
{ \
"", 0, 0, { \
socket_message_KnownNetworkItem_init_zero, socket_message_KnownNetworkItem_init_zero, \
socket_message_KnownNetworkItem_init_zero, socket_message_KnownNetworkItem_init_zero, \
socket_message_KnownNetworkItem_init_zero, socket_message_KnownNetworkItem_init_zero, \
socket_message_KnownNetworkItem_init_zero, socket_message_KnownNetworkItem_init_zero \
} \
}
/* Field tags (for use in manual encoding/decoding) */
#define rest_message_WifiStatus_status_tag 1
#define rest_message_WifiStatus_local_ip_tag 2
#define rest_message_WifiStatus_mac_address_tag 3
#define rest_message_WifiStatus_rssi_tag 4
#define rest_message_WifiStatus_ssid_tag 5
#define rest_message_WifiStatus_bssid_tag 6
#define rest_message_WifiStatus_channel_tag 7
#define rest_message_WifiStatus_subnet_mask_tag 8
#define rest_message_WifiStatus_gateway_ip_tag 9
#define rest_message_WifiStatus_dns_ip_1_tag 10
#define rest_message_WifiStatus_dns_ip_2_tag 11
#define rest_message_WifiSettings_hostname_tag 1
#define rest_message_WifiStatus_status_tag 1
#define rest_message_WifiStatus_local_ip_tag 2
#define rest_message_WifiStatus_mac_address_tag 3
#define rest_message_WifiStatus_rssi_tag 4
#define rest_message_WifiStatus_ssid_tag 5
#define rest_message_WifiStatus_bssid_tag 6
#define rest_message_WifiStatus_channel_tag 7
#define rest_message_WifiStatus_subnet_mask_tag 8
#define rest_message_WifiStatus_gateway_ip_tag 9
#define rest_message_WifiStatus_dns_ip_1_tag 10
#define rest_message_WifiStatus_dns_ip_2_tag 11
#define rest_message_WifiSettings_hostname_tag 1
#define rest_message_WifiSettings_priority_rssi_tag 2
#define rest_message_WifiSettings_wifi_networks_tag 3
/* Struct field encoding specification for nanopb */
#define rest_message_WifiStatus_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, INT32, status, 1) \
X(a, CALLBACK, SINGULAR, STRING, local_ip, 2) \
X(a, CALLBACK, SINGULAR, STRING, mac_address, 3) \
X(a, STATIC, SINGULAR, FLOAT, rssi, 4) \
X(a, CALLBACK, SINGULAR, STRING, ssid, 5) \
X(a, CALLBACK, SINGULAR, STRING, bssid, 6) \
X(a, STATIC, SINGULAR, UINT32, channel, 7) \
X(a, CALLBACK, SINGULAR, STRING, subnet_mask, 8) \
X(a, CALLBACK, SINGULAR, STRING, gateway_ip, 9) \
X(a, CALLBACK, SINGULAR, STRING, dns_ip_1, 10) \
X(a, CALLBACK, OPTIONAL, STRING, dns_ip_2, 11)
#define rest_message_WifiStatus_CALLBACK pb_default_field_callback
#define rest_message_WifiStatus_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, INT32, status, 1) \
X(a, STATIC, SINGULAR, STRING, local_ip, 2) \
X(a, STATIC, SINGULAR, STRING, mac_address, 3) \
X(a, STATIC, SINGULAR, FLOAT, rssi, 4) \
X(a, STATIC, SINGULAR, STRING, ssid, 5) \
X(a, STATIC, SINGULAR, STRING, bssid, 6) \
X(a, STATIC, SINGULAR, UINT32, channel, 7) \
X(a, STATIC, SINGULAR, STRING, subnet_mask, 8) \
X(a, STATIC, SINGULAR, STRING, gateway_ip, 9) \
X(a, STATIC, SINGULAR, STRING, dns_ip_1, 10) \
X(a, STATIC, OPTIONAL, STRING, dns_ip_2, 11)
#define rest_message_WifiStatus_CALLBACK NULL
#define rest_message_WifiStatus_DEFAULT NULL
#define rest_message_WifiSettings_FIELDLIST(X, a) \
X(a, CALLBACK, SINGULAR, STRING, hostname, 1) \
X(a, STATIC, SINGULAR, BOOL, priority_rssi, 2) \
X(a, CALLBACK, REPEATED, MESSAGE, wifi_networks, 3)
#define rest_message_WifiSettings_CALLBACK pb_default_field_callback
#define rest_message_WifiSettings_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, STRING, hostname, 1) \
X(a, STATIC, SINGULAR, BOOL, priority_rssi, 2) \
X(a, STATIC, REPEATED, MESSAGE, wifi_networks, 3)
#define rest_message_WifiSettings_CALLBACK NULL
#define rest_message_WifiSettings_DEFAULT NULL
#define rest_message_WifiSettings_wifi_networks_MSGTYPE socket_message_KnownNetworkItem
@@ -90,8 +109,9 @@ extern const pb_msgdesc_t rest_message_WifiSettings_msg;
#define rest_message_WifiSettings_fields &rest_message_WifiSettings_msg
/* Maximum encoded size of messages (where known) */
/* rest_message_WifiStatus_size depends on runtime parameters */
/* rest_message_WifiSettings_size depends on runtime parameters */
#define REST_MESSAGE_REST_MESSAGE_PB_H_MAX_SIZE rest_message_WifiSettings_size
#define rest_message_WifiSettings_size 1547
#define rest_message_WifiStatus_size 179
#ifdef __cplusplus
} /* extern "C" */
@@ -8,99 +8,62 @@
PB_BIND(socket_message_Vector, socket_message_Vector, AUTO)
PB_BIND(socket_message_I2CDevice, socket_message_I2CDevice, AUTO)
PB_BIND(socket_message_PinConfig, socket_message_PinConfig, AUTO)
PB_BIND(socket_message_KnownNetworkItem, socket_message_KnownNetworkItem, AUTO)
PB_BIND(socket_message_IMUData, socket_message_IMUData, AUTO)
PB_BIND(socket_message_StaticSystemInformation, socket_message_StaticSystemInformation, AUTO)
PB_BIND(socket_message_IMUCalibrateData, socket_message_IMUCalibrateData, AUTO)
PB_BIND(socket_message_IMUCalibrateExecute, socket_message_IMUCalibrateExecute, AUTO)
PB_BIND(socket_message_ModeData, socket_message_ModeData, AUTO)
PB_BIND(socket_message_ControllerInputData, socket_message_ControllerInputData, AUTO)
PB_BIND(socket_message_AnalyticsData, socket_message_AnalyticsData, AUTO)
PB_BIND(socket_message_ServoPWMData, socket_message_ServoPWMData, AUTO)
PB_BIND(socket_message_ServoStateData, socket_message_ServoStateData, AUTO)
PB_BIND(socket_message_AnglesData, socket_message_AnglesData, AUTO)
PB_BIND(socket_message_I2CScanData, socket_message_I2CScanData, AUTO)
PB_BIND(socket_message_I2CScanData, socket_message_I2CScanData, 2)
PB_BIND(socket_message_I2CScanDataRequest, socket_message_I2CScanDataRequest, AUTO)
PB_BIND(socket_message_PeripheralSettingsData, socket_message_PeripheralSettingsData, AUTO)
PB_BIND(socket_message_PeripheralSettingsData, socket_message_PeripheralSettingsData, 2)
PB_BIND(socket_message_PeripheralSettingsDataRequest, socket_message_PeripheralSettingsDataRequest, AUTO)
PB_BIND(socket_message_WifiSettingsData, socket_message_WifiSettingsData, AUTO)
PB_BIND(socket_message_WifiSettingsData, socket_message_WifiSettingsData, 2)
PB_BIND(socket_message_RSSIData, socket_message_RSSIData, AUTO)
PB_BIND(socket_message_DownloadOTAData, socket_message_DownloadOTAData, AUTO)
PB_BIND(socket_message_SonarData, socket_message_SonarData, AUTO)
PB_BIND(socket_message_HumanInputData, socket_message_HumanInputData, AUTO)
PB_BIND(socket_message_SystemInformation, socket_message_SystemInformation, AUTO)
PB_BIND(socket_message_SystemInformation, socket_message_SystemInformation, 2)
PB_BIND(socket_message_WalkGaitData, socket_message_WalkGaitData, AUTO)
PB_BIND(socket_message_KinematicData, socket_message_KinematicData, AUTO)
PB_BIND(socket_message_SubscribeNotification, socket_message_SubscribeNotification, AUTO)
PB_BIND(socket_message_UnsubscribeNotification, socket_message_UnsubscribeNotification, AUTO)
PB_BIND(socket_message_PingMsg, socket_message_PingMsg, AUTO)
PB_BIND(socket_message_PongMsg, socket_message_PongMsg, AUTO)
PB_BIND(socket_message_WebsocketMessage, socket_message_WebsocketMessage, 2)
File diff suppressed because it is too large Load Diff
+12
View File
@@ -0,0 +1,12 @@
rest_message.WifiStatus.local_ip max_size:16
rest_message.WifiStatus.mac_address max_size:18
rest_message.WifiStatus.ssid max_size:33
rest_message.WifiStatus.bssid max_size:18
rest_message.WifiStatus.subnet_mask max_size:16
rest_message.WifiStatus.gateway_ip max_size:16
rest_message.WifiStatus.dns_ip_1 max_size:16
rest_message.WifiStatus.dns_ip_2 max_size:16
rest_message.WifiSettings.hostname max_size:32
rest_message.WifiSettings.wifi_networks max_count:8
+36
View File
@@ -0,0 +1,36 @@
socket_message.I2CDevice.part_number max_size:32
socket_message.I2CDevice.name max_size:32
socket_message.PinConfig.mode max_size:16
socket_message.PinConfig.type max_size:16
socket_message.PinConfig.role max_size:16
socket_message.KnownNetworkItem.ssid max_size:33
socket_message.KnownNetworkItem.password max_size:64
socket_message.KnownNetworkItem.local_ip max_size:16
socket_message.KnownNetworkItem.subnet_mask max_size:16
socket_message.KnownNetworkItem.gateway_ip max_size:16
socket_message.KnownNetworkItem.dns_ip_1 max_size:16
socket_message.KnownNetworkItem.dns_ip_2 max_size:16
socket_message.StaticSystemInformation.esp_platform max_size:32
socket_message.StaticSystemInformation.firmware_version max_size:16
socket_message.StaticSystemInformation.cpu_type max_size:32
socket_message.StaticSystemInformation.sdk_version max_size:32
socket_message.StaticSystemInformation.arduino_version max_size:16
socket_message.StaticSystemInformation.cpu_reset_reason max_size:32
socket_message.AnglesData.angles max_count:12
socket_message.I2CScanData.devices max_count:16
socket_message.PeripheralSettingsData.pins max_count:32
socket_message.WifiSettingsData.hostname max_size:32
socket_message.WifiSettingsData.wifi_networks max_count:8
socket_message.DownloadOTAData.status max_size:32
socket_message.DownloadOTAData.error max_size:64
socket_message.SonarData.dummy_field max_size:16
+1
View File
@@ -131,6 +131,7 @@ message WebsocketMessage {
ModeData mode = 130;
ControllerInputData input = 140;
AnalyticsData analytics = 150;
WalkGaitData walk_gait = 160;
AnglesData angles = 170;
I2CScanData i2c_scan = 180;
I2CScanDataRequest i2c_scan_data_request = 181;