Merge branch 'master' into issue-919

This commit is contained in:
Jm Casler
2021-11-28 20:13:56 -08:00
committed by GitHub
16 changed files with 310 additions and 64 deletions

View File

@@ -79,7 +79,7 @@ extern const pb_msgdesc_t AdminMessage_msg;
#define AdminMessage_fields &AdminMessage_msg
/* Maximum encoded size of messages (where known) */
#define AdminMessage_size 420
#define AdminMessage_size 440
#ifdef __cplusplus
} /* extern "C" */

View File

@@ -125,7 +125,7 @@ extern const pb_msgdesc_t ChannelFile_msg;
/* Maximum encoded size of messages (where known) */
#define LegacyRadioConfig_size 4
#define LegacyRadioConfig_LegacyPreferences_size 2
#define DeviceState_size 9000
#define DeviceState_size 9594
#define ChannelFile_size 832
#ifdef __cplusplus

View File

@@ -198,6 +198,9 @@ typedef struct _User {
HardwareModel hw_model;
bool is_licensed;
Team team;
uint32_t tx_power_dbm;
uint32_t ant_gain_dbi;
uint32_t ant_azimuth;
} User;
typedef PB_BYTES_ARRAY_T(256) MeshPacket_encrypted_t;
@@ -306,7 +309,7 @@ extern "C" {
/* Initializer values for message structs */
#define Position_init_default {0, 0, 0, 0, 0, _Position_LocSource_MIN, _Position_AltSource_MIN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
#define User_init_default {"", "", "", {0}, _HardwareModel_MIN, 0, _Team_MIN}
#define User_init_default {"", "", "", {0}, _HardwareModel_MIN, 0, _Team_MIN, 0, 0, 0}
#define RouteDiscovery_init_default {0, {0, 0, 0, 0, 0, 0, 0, 0}}
#define Routing_init_default {0, {RouteDiscovery_init_default}}
#define Data_init_default {_PortNum_MIN, {0, {0}}, 0, 0, 0, 0}
@@ -318,7 +321,7 @@ extern "C" {
#define ToRadio_init_default {0, {MeshPacket_init_default}}
#define ToRadio_PeerInfo_init_default {0, 0}
#define Position_init_zero {0, 0, 0, 0, 0, _Position_LocSource_MIN, _Position_AltSource_MIN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
#define User_init_zero {"", "", "", {0}, _HardwareModel_MIN, 0, _Team_MIN}
#define User_init_zero {"", "", "", {0}, _HardwareModel_MIN, 0, _Team_MIN, 0, 0, 0}
#define RouteDiscovery_init_zero {0, {0, 0, 0, 0, 0, 0, 0, 0}}
#define Routing_init_zero {0, {RouteDiscovery_init_zero}}
#define Data_init_zero {_PortNum_MIN, {0, {0}}, 0, 0, 0, 0}
@@ -387,6 +390,9 @@ extern "C" {
#define User_hw_model_tag 6
#define User_is_licensed_tag 7
#define User_team_tag 8
#define User_tx_power_dbm_tag 10
#define User_ant_gain_dbi_tag 11
#define User_ant_azimuth_tag 12
#define MeshPacket_from_tag 1
#define MeshPacket_to_tag 2
#define MeshPacket_channel_tag 3
@@ -454,7 +460,10 @@ X(a, STATIC, SINGULAR, STRING, short_name, 3) \
X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, macaddr, 4) \
X(a, STATIC, SINGULAR, UENUM, hw_model, 6) \
X(a, STATIC, SINGULAR, BOOL, is_licensed, 7) \
X(a, STATIC, SINGULAR, UENUM, team, 8)
X(a, STATIC, SINGULAR, UENUM, team, 8) \
X(a, STATIC, SINGULAR, UINT32, tx_power_dbm, 10) \
X(a, STATIC, SINGULAR, UINT32, ant_gain_dbi, 11) \
X(a, STATIC, SINGULAR, UINT32, ant_azimuth, 12)
#define User_CALLBACK NULL
#define User_DEFAULT NULL
@@ -595,12 +604,12 @@ extern const pb_msgdesc_t ToRadio_PeerInfo_msg;
/* Maximum encoded size of messages (where known) */
#define Position_size 153
#define User_size 78
#define User_size 96
#define RouteDiscovery_size 40
#define Routing_size 42
#define Data_size 260
#define MeshPacket_size 309
#define NodeInfo_size 252
#define NodeInfo_size 270
#define MyNodeInfo_size 101
#define LogRecord_size 81
#define FromRadio_size 318

View File

@@ -101,6 +101,7 @@ typedef struct _RadioConfig_UserPreferences {
bool wifi_ap_mode;
RegionCode region;
ChargeCurrent charge_current;
bool position_broadcast_smart;
LocationSharing location_share;
GpsOperation gps_operation;
uint32_t gps_update_interval;
@@ -135,6 +136,8 @@ typedef struct _RadioConfig_UserPreferences {
uint32_t range_test_plugin_sender;
bool range_test_plugin_save;
uint32_t store_forward_plugin_records;
uint32_t store_forward_plugin_history_return_max;
uint32_t store_forward_plugin_history_return_window;
bool environmental_measurement_plugin_measurement_enabled;
bool environmental_measurement_plugin_screen_enabled;
uint32_t environmental_measurement_plugin_read_error_count_threshold;
@@ -144,6 +147,7 @@ typedef struct _RadioConfig_UserPreferences {
RadioConfig_UserPreferences_EnvironmentalMeasurementSensorType environmental_measurement_plugin_sensor_type;
uint32_t environmental_measurement_plugin_sensor_pin;
bool store_forward_plugin_enabled;
bool store_forward_plugin_heartbeat;
uint32_t position_flags;
bool is_always_powered;
} RadioConfig_UserPreferences;
@@ -190,9 +194,9 @@ extern "C" {
/* Initializer values for message structs */
#define RadioConfig_init_default {false, RadioConfig_UserPreferences_init_default}
#define RadioConfig_UserPreferences_init_default {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "", "", 0, _RegionCode_MIN, _ChargeCurrent_MIN, _LocationSharing_MIN, _GpsOperation_MIN, 0, 0, 0, 0, 0, 0, 0, "", 0, _GpsCoordinateFormat_MIN, 0, 0, 0, 0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, _RadioConfig_UserPreferences_EnvironmentalMeasurementSensorType_MIN, 0, 0, 0, 0}
#define RadioConfig_UserPreferences_init_default {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "", "", 0, _RegionCode_MIN, _ChargeCurrent_MIN, 0, _LocationSharing_MIN, _GpsOperation_MIN, 0, 0, 0, 0, 0, 0, 0, "", 0, _GpsCoordinateFormat_MIN, 0, 0, 0, 0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, _RadioConfig_UserPreferences_EnvironmentalMeasurementSensorType_MIN, 0, 0, 0, 0, 0}
#define RadioConfig_init_zero {false, RadioConfig_UserPreferences_init_zero}
#define RadioConfig_UserPreferences_init_zero {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "", "", 0, _RegionCode_MIN, _ChargeCurrent_MIN, _LocationSharing_MIN, _GpsOperation_MIN, 0, 0, 0, 0, 0, 0, 0, "", 0, _GpsCoordinateFormat_MIN, 0, 0, 0, 0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, _RadioConfig_UserPreferences_EnvironmentalMeasurementSensorType_MIN, 0, 0, 0, 0}
#define RadioConfig_UserPreferences_init_zero {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "", "", 0, _RegionCode_MIN, _ChargeCurrent_MIN, 0, _LocationSharing_MIN, _GpsOperation_MIN, 0, 0, 0, 0, 0, 0, 0, "", 0, _GpsCoordinateFormat_MIN, 0, 0, 0, 0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, _RadioConfig_UserPreferences_EnvironmentalMeasurementSensorType_MIN, 0, 0, 0, 0, 0}
/* Field tags (for use in manual encoding/decoding) */
#define RadioConfig_UserPreferences_position_broadcast_secs_tag 1
@@ -210,6 +214,7 @@ extern "C" {
#define RadioConfig_UserPreferences_wifi_ap_mode_tag 14
#define RadioConfig_UserPreferences_region_tag 15
#define RadioConfig_UserPreferences_charge_current_tag 16
#define RadioConfig_UserPreferences_position_broadcast_smart_tag 17
#define RadioConfig_UserPreferences_location_share_tag 32
#define RadioConfig_UserPreferences_gps_operation_tag 33
#define RadioConfig_UserPreferences_gps_update_interval_tag 34
@@ -243,6 +248,8 @@ extern "C" {
#define RadioConfig_UserPreferences_range_test_plugin_sender_tag 133
#define RadioConfig_UserPreferences_range_test_plugin_save_tag 134
#define RadioConfig_UserPreferences_store_forward_plugin_records_tag 137
#define RadioConfig_UserPreferences_store_forward_plugin_history_return_max_tag 138
#define RadioConfig_UserPreferences_store_forward_plugin_history_return_window_tag 139
#define RadioConfig_UserPreferences_environmental_measurement_plugin_measurement_enabled_tag 140
#define RadioConfig_UserPreferences_environmental_measurement_plugin_screen_enabled_tag 141
#define RadioConfig_UserPreferences_environmental_measurement_plugin_read_error_count_threshold_tag 142
@@ -252,6 +259,7 @@ extern "C" {
#define RadioConfig_UserPreferences_environmental_measurement_plugin_sensor_type_tag 146
#define RadioConfig_UserPreferences_environmental_measurement_plugin_sensor_pin_tag 147
#define RadioConfig_UserPreferences_store_forward_plugin_enabled_tag 148
#define RadioConfig_UserPreferences_store_forward_plugin_heartbeat_tag 149
#define RadioConfig_UserPreferences_position_flags_tag 150
#define RadioConfig_UserPreferences_is_always_powered_tag 151
#define RadioConfig_preferences_tag 1
@@ -279,6 +287,7 @@ X(a, STATIC, SINGULAR, STRING, wifi_password, 13) \
X(a, STATIC, SINGULAR, BOOL, wifi_ap_mode, 14) \
X(a, STATIC, SINGULAR, UENUM, region, 15) \
X(a, STATIC, SINGULAR, UENUM, charge_current, 16) \
X(a, STATIC, SINGULAR, BOOL, position_broadcast_smart, 17) \
X(a, STATIC, SINGULAR, UENUM, location_share, 32) \
X(a, STATIC, SINGULAR, UENUM, gps_operation, 33) \
X(a, STATIC, SINGULAR, UINT32, gps_update_interval, 34) \
@@ -312,6 +321,8 @@ X(a, STATIC, SINGULAR, BOOL, range_test_plugin_enabled, 132) \
X(a, STATIC, SINGULAR, UINT32, range_test_plugin_sender, 133) \
X(a, STATIC, SINGULAR, BOOL, range_test_plugin_save, 134) \
X(a, STATIC, SINGULAR, UINT32, store_forward_plugin_records, 137) \
X(a, STATIC, SINGULAR, UINT32, store_forward_plugin_history_return_max, 138) \
X(a, STATIC, SINGULAR, UINT32, store_forward_plugin_history_return_window, 139) \
X(a, STATIC, SINGULAR, BOOL, environmental_measurement_plugin_measurement_enabled, 140) \
X(a, STATIC, SINGULAR, BOOL, environmental_measurement_plugin_screen_enabled, 141) \
X(a, STATIC, SINGULAR, UINT32, environmental_measurement_plugin_read_error_count_threshold, 142) \
@@ -321,6 +332,7 @@ X(a, STATIC, SINGULAR, BOOL, environmental_measurement_plugin_display_fare
X(a, STATIC, SINGULAR, UENUM, environmental_measurement_plugin_sensor_type, 146) \
X(a, STATIC, SINGULAR, UINT32, environmental_measurement_plugin_sensor_pin, 147) \
X(a, STATIC, SINGULAR, BOOL, store_forward_plugin_enabled, 148) \
X(a, STATIC, SINGULAR, BOOL, store_forward_plugin_heartbeat, 149) \
X(a, STATIC, SINGULAR, UINT32, position_flags, 150) \
X(a, STATIC, SINGULAR, BOOL, is_always_powered, 151)
#define RadioConfig_UserPreferences_CALLBACK NULL
@@ -334,8 +346,8 @@ extern const pb_msgdesc_t RadioConfig_UserPreferences_msg;
#define RadioConfig_UserPreferences_fields &RadioConfig_UserPreferences_msg
/* Maximum encoded size of messages (where known) */
#define RadioConfig_size 417
#define RadioConfig_UserPreferences_size 414
#define RadioConfig_size 437
#define RadioConfig_UserPreferences_size 434
#ifdef __cplusplus
} /* extern "C" */

View File

@@ -0,0 +1,19 @@
/* Automatically generated nanopb constant definitions */
/* Generated by nanopb-0.4.4 */
#include "storeforward.pb.h"
#if PB_PROTO_HEADER_VERSION != 40
#error Regenerate this file with the current version of nanopb generator.
#endif
PB_BIND(StoreAndForwardMessage, StoreAndForwardMessage, AUTO)
PB_BIND(StoreAndForwardMessage_Statistics, StoreAndForwardMessage_Statistics, AUTO)
PB_BIND(StoreAndForwardMessage_History, StoreAndForwardMessage_History, AUTO)

View File

@@ -0,0 +1,136 @@
/* Automatically generated nanopb header */
/* Generated by nanopb-0.4.4 */
#ifndef PB_STOREFORWARD_PB_H_INCLUDED
#define PB_STOREFORWARD_PB_H_INCLUDED
#include <pb.h>
#if PB_PROTO_HEADER_VERSION != 40
#error Regenerate this file with the current version of nanopb generator.
#endif
/* Enum definitions */
typedef enum _StoreAndForwardMessage_RequestResponse {
StoreAndForwardMessage_RequestResponse_UNSET = 0,
StoreAndForwardMessage_RequestResponse_ROUTER_ERROR = 1,
StoreAndForwardMessage_RequestResponse_ROUTER_HEARTBEAT = 2,
StoreAndForwardMessage_RequestResponse_ROUTER_PING = 3,
StoreAndForwardMessage_RequestResponse_ROUTER_PONG = 4,
StoreAndForwardMessage_RequestResponse_ROUTER_BUSY = 5,
StoreAndForwardMessage_RequestResponse_CLIENT_ERROR = 101,
StoreAndForwardMessage_RequestResponse_CLIENT_HISTORY = 102,
StoreAndForwardMessage_RequestResponse_CLIENT_STATS = 103,
StoreAndForwardMessage_RequestResponse_CLIENT_PING = 104,
StoreAndForwardMessage_RequestResponse_CLIENT_PONG = 105,
StoreAndForwardMessage_RequestResponse_MAX = 255
} StoreAndForwardMessage_RequestResponse;
/* Struct definitions */
typedef struct _StoreAndForwardMessage_History {
uint32_t HistoryMessages;
uint32_t Window;
} StoreAndForwardMessage_History;
typedef struct _StoreAndForwardMessage_Statistics {
uint32_t MessagesTotal;
uint32_t MessagesSaved;
uint32_t MessagesMax;
uint32_t UpTime;
uint32_t Requests;
uint32_t RequestsHistory;
bool Heartbeat;
uint32_t ReturnMax;
uint32_t ReturnWindow;
} StoreAndForwardMessage_Statistics;
typedef struct _StoreAndForwardMessage {
StoreAndForwardMessage_RequestResponse rr;
bool has_stats;
StoreAndForwardMessage_Statistics stats;
bool has_history;
StoreAndForwardMessage_History history;
} StoreAndForwardMessage;
/* Helper constants for enums */
#define _StoreAndForwardMessage_RequestResponse_MIN StoreAndForwardMessage_RequestResponse_UNSET
#define _StoreAndForwardMessage_RequestResponse_MAX StoreAndForwardMessage_RequestResponse_MAX
#define _StoreAndForwardMessage_RequestResponse_ARRAYSIZE ((StoreAndForwardMessage_RequestResponse)(StoreAndForwardMessage_RequestResponse_MAX+1))
#ifdef __cplusplus
extern "C" {
#endif
/* Initializer values for message structs */
#define StoreAndForwardMessage_init_default {_StoreAndForwardMessage_RequestResponse_MIN, false, StoreAndForwardMessage_Statistics_init_default, false, StoreAndForwardMessage_History_init_default}
#define StoreAndForwardMessage_Statistics_init_default {0, 0, 0, 0, 0, 0, 0, 0, 0}
#define StoreAndForwardMessage_History_init_default {0, 0}
#define StoreAndForwardMessage_init_zero {_StoreAndForwardMessage_RequestResponse_MIN, false, StoreAndForwardMessage_Statistics_init_zero, false, StoreAndForwardMessage_History_init_zero}
#define StoreAndForwardMessage_Statistics_init_zero {0, 0, 0, 0, 0, 0, 0, 0, 0}
#define StoreAndForwardMessage_History_init_zero {0, 0}
/* Field tags (for use in manual encoding/decoding) */
#define StoreAndForwardMessage_History_HistoryMessages_tag 1
#define StoreAndForwardMessage_History_Window_tag 2
#define StoreAndForwardMessage_Statistics_MessagesTotal_tag 1
#define StoreAndForwardMessage_Statistics_MessagesSaved_tag 2
#define StoreAndForwardMessage_Statistics_MessagesMax_tag 3
#define StoreAndForwardMessage_Statistics_UpTime_tag 4
#define StoreAndForwardMessage_Statistics_Requests_tag 5
#define StoreAndForwardMessage_Statistics_RequestsHistory_tag 6
#define StoreAndForwardMessage_Statistics_Heartbeat_tag 7
#define StoreAndForwardMessage_Statistics_ReturnMax_tag 8
#define StoreAndForwardMessage_Statistics_ReturnWindow_tag 9
#define StoreAndForwardMessage_rr_tag 1
#define StoreAndForwardMessage_stats_tag 2
#define StoreAndForwardMessage_history_tag 3
/* Struct field encoding specification for nanopb */
#define StoreAndForwardMessage_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, UENUM, rr, 1) \
X(a, STATIC, OPTIONAL, MESSAGE, stats, 2) \
X(a, STATIC, OPTIONAL, MESSAGE, history, 3)
#define StoreAndForwardMessage_CALLBACK NULL
#define StoreAndForwardMessage_DEFAULT NULL
#define StoreAndForwardMessage_stats_MSGTYPE StoreAndForwardMessage_Statistics
#define StoreAndForwardMessage_history_MSGTYPE StoreAndForwardMessage_History
#define StoreAndForwardMessage_Statistics_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, UINT32, MessagesTotal, 1) \
X(a, STATIC, SINGULAR, UINT32, MessagesSaved, 2) \
X(a, STATIC, SINGULAR, UINT32, MessagesMax, 3) \
X(a, STATIC, SINGULAR, UINT32, UpTime, 4) \
X(a, STATIC, SINGULAR, UINT32, Requests, 5) \
X(a, STATIC, SINGULAR, UINT32, RequestsHistory, 6) \
X(a, STATIC, SINGULAR, BOOL, Heartbeat, 7) \
X(a, STATIC, SINGULAR, UINT32, ReturnMax, 8) \
X(a, STATIC, SINGULAR, UINT32, ReturnWindow, 9)
#define StoreAndForwardMessage_Statistics_CALLBACK NULL
#define StoreAndForwardMessage_Statistics_DEFAULT NULL
#define StoreAndForwardMessage_History_FIELDLIST(X, a) \
X(a, STATIC, SINGULAR, UINT32, HistoryMessages, 1) \
X(a, STATIC, SINGULAR, UINT32, Window, 2)
#define StoreAndForwardMessage_History_CALLBACK NULL
#define StoreAndForwardMessage_History_DEFAULT NULL
extern const pb_msgdesc_t StoreAndForwardMessage_msg;
extern const pb_msgdesc_t StoreAndForwardMessage_Statistics_msg;
extern const pb_msgdesc_t StoreAndForwardMessage_History_msg;
/* Defines for backwards compatibility with code written before nanopb-0.4.0 */
#define StoreAndForwardMessage_fields &StoreAndForwardMessage_msg
#define StoreAndForwardMessage_Statistics_fields &StoreAndForwardMessage_Statistics_msg
#define StoreAndForwardMessage_History_fields &StoreAndForwardMessage_History_msg
/* Maximum encoded size of messages (where known) */
#define StoreAndForwardMessage_size 69
#define StoreAndForwardMessage_Statistics_size 50
#define StoreAndForwardMessage_History_size 12
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif

View File

@@ -1,3 +1,4 @@
#include "main.h"
#include "mesh/http/WebServer.h"
#include "NodeDB.h"
#include "mesh/http/WiFiAPClient.h"
@@ -77,7 +78,7 @@ static void taskCreateCert(void *parameter)
{
prefs.begin("MeshtasticHTTPS", false);
// Delete the saved certs
// Delete the saved certs (used in debugging)
if (0) {
DEBUG_MSG("Deleting any saved SSL keys ...\n");
// prefs.clear();
@@ -166,11 +167,16 @@ void createSSLCert()
NULL); /* Task handle. */
DEBUG_MSG("Waiting for SSL Cert to be generated.\n");
int seconds = 0;
while (!isCertReady) {
DEBUG_MSG(".");
delay(1000);
yield();
esp_task_wdt_reset();
seconds++;
if ((seconds == 3) && screen) {
screen->setSSLFrames();
}
}
DEBUG_MSG("SSL Cert Ready!\n");
}