2023-01-18 13:42:53 +00:00
|
|
|
/* Automatically generated nanopb header */
|
|
|
|
/* Generated by nanopb-0.4.7 */
|
|
|
|
|
|
|
|
#ifndef PB_MESHTASTIC_MESHTASTIC_CONFIG_PB_H_INCLUDED
|
|
|
|
#define PB_MESHTASTIC_MESHTASTIC_CONFIG_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 */
|
|
|
|
/* Defines the device's role on the Mesh network */
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef enum _meshtastic_Config_DeviceConfig_Role {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Client device role */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DeviceConfig_Role_CLIENT = 0,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Client Mute device role
|
|
|
|
Same as a client except packets will not hop over this node, does not contribute to routing packets for mesh. */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DeviceConfig_Role_CLIENT_MUTE = 1,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Router device role.
|
2023-05-23 01:19:13 +00:00
|
|
|
Mesh packets will prefer to be routed over this node. This node will not be used by client apps.
|
2023-01-27 20:16:23 +00:00
|
|
|
The wifi/ble radios and the oled screen will be put to sleep.
|
|
|
|
This mode may still potentially have higher power usage due to it's preference in message rebroadcasting on the mesh. */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DeviceConfig_Role_ROUTER = 2,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Router Client device role
|
|
|
|
Mesh packets will prefer to be routed over this node. The Router Client can be used as both a Router and an app connected Client. */
|
2023-01-27 20:16:23 +00:00
|
|
|
meshtastic_Config_DeviceConfig_Role_ROUTER_CLIENT = 3,
|
|
|
|
/* Repeater device role
|
2023-01-29 19:57:41 +00:00
|
|
|
Mesh packets will simply be rebroadcasted over this node. Nodes configured with this role will not originate NodeInfo, Position, Telemetry
|
|
|
|
or any other packet type. They will simply rebroadcast any mesh packets on the same frequency, channel num, spread factor, and coding rate. */
|
2023-01-27 20:16:23 +00:00
|
|
|
meshtastic_Config_DeviceConfig_Role_REPEATER = 4,
|
|
|
|
/* Tracker device role
|
2023-01-29 19:57:41 +00:00
|
|
|
Position Mesh packets will be prioritized higher and sent more frequently by default. */
|
2023-02-24 17:25:50 +00:00
|
|
|
meshtastic_Config_DeviceConfig_Role_TRACKER = 5,
|
|
|
|
/* Sensor device role
|
|
|
|
Telemetry Mesh packets will be prioritized higher and sent more frequently by default. */
|
|
|
|
meshtastic_Config_DeviceConfig_Role_SENSOR = 6
|
2023-01-21 17:22:19 +00:00
|
|
|
} meshtastic_Config_DeviceConfig_Role;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-29 19:57:41 +00:00
|
|
|
/* Defines the device's behavior for how messages are rebroadcast */
|
|
|
|
typedef enum _meshtastic_Config_DeviceConfig_RebroadcastMode {
|
|
|
|
/* Default behavior.
|
|
|
|
Rebroadcast any observed message, if it was on our private channel or from another mesh with the same lora params. */
|
|
|
|
meshtastic_Config_DeviceConfig_RebroadcastMode_ALL = 0,
|
|
|
|
/* Same as behavior as ALL but skips packet decoding and simply rebroadcasts them.
|
|
|
|
Only available in Repeater role. Setting this on any other roles will result in ALL behavior. */
|
|
|
|
meshtastic_Config_DeviceConfig_RebroadcastMode_ALL_SKIP_DECODING = 1,
|
|
|
|
/* Ignores observed messages from foreign meshes that are open or those which it cannot decrypt.
|
|
|
|
Only rebroadcasts message on the nodes local primary / secondary channels. */
|
|
|
|
meshtastic_Config_DeviceConfig_RebroadcastMode_LOCAL_ONLY = 2
|
|
|
|
} meshtastic_Config_DeviceConfig_RebroadcastMode;
|
|
|
|
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Bit field of boolean configuration options, indicating which optional
|
2023-09-04 23:38:58 +00:00
|
|
|
fields to include when assembling POSITION messages.
|
|
|
|
Longitude, latitude, altitude, speed, heading, and DOP
|
|
|
|
are always included (also time if GPS-synced)
|
2023-01-18 13:42:53 +00:00
|
|
|
NOTE: the more fields are included, the larger the message will be -
|
|
|
|
leading to longer airtime and a higher risk of packet loss */
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef enum _meshtastic_Config_PositionConfig_PositionFlags {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Required for compilation */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_PositionConfig_PositionFlags_UNSET = 0,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Include an altitude value (if available) */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_PositionConfig_PositionFlags_ALTITUDE = 1,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Altitude value is MSL */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_PositionConfig_PositionFlags_ALTITUDE_MSL = 2,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Include geoidal separation */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_PositionConfig_PositionFlags_GEOIDAL_SEPARATION = 4,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Include the DOP value ; PDOP used by default, see below */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_PositionConfig_PositionFlags_DOP = 8,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* If POS_DOP set, send separate HDOP / VDOP values instead of PDOP */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_PositionConfig_PositionFlags_HVDOP = 16,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Include number of "satellites in view" */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_PositionConfig_PositionFlags_SATINVIEW = 32,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Include a sequence number incremented per packet */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_PositionConfig_PositionFlags_SEQ_NO = 64,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Include positional timestamp (from GPS solution) */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_PositionConfig_PositionFlags_TIMESTAMP = 128,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Include positional heading
|
|
|
|
Intended for use with vehicle not walking speeds
|
|
|
|
walking speeds are likely to be error prone like the compass */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_PositionConfig_PositionFlags_HEADING = 256,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Include positional speed
|
|
|
|
Intended for use with vehicle not walking speeds
|
|
|
|
walking speeds are likely to be error prone like the compass */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_PositionConfig_PositionFlags_SPEED = 512
|
|
|
|
} meshtastic_Config_PositionConfig_PositionFlags;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef enum _meshtastic_Config_NetworkConfig_AddressMode {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* obtain ip address via DHCP */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_NetworkConfig_AddressMode_DHCP = 0,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* use static ip address */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_NetworkConfig_AddressMode_STATIC = 1
|
|
|
|
} meshtastic_Config_NetworkConfig_AddressMode;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* How the GPS coordinates are displayed on the OLED screen. */
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef enum _meshtastic_Config_DisplayConfig_GpsCoordinateFormat {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* GPS coordinates are displayed in the normal decimal degrees format:
|
|
|
|
DD.DDDDDD DDD.DDDDDD */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_GpsCoordinateFormat_DEC = 0,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* GPS coordinates are displayed in the degrees minutes seconds format:
|
|
|
|
DD°MM'SS"C DDD°MM'SS"C, where C is the compass point representing the locations quadrant */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_GpsCoordinateFormat_DMS = 1,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Universal Transverse Mercator format:
|
|
|
|
ZZB EEEEEE NNNNNNN, where Z is zone, B is band, E is easting, N is northing */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_GpsCoordinateFormat_UTM = 2,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Military Grid Reference System format:
|
|
|
|
ZZB CD EEEEE NNNNN, where Z is zone, B is band, C is the east 100k square, D is the north 100k square,
|
|
|
|
E is easting, N is northing */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_GpsCoordinateFormat_MGRS = 3,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Open Location Code (aka Plus Codes). */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_GpsCoordinateFormat_OLC = 4,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Ordnance Survey Grid Reference (the National Grid System of the UK).
|
|
|
|
Format: AB EEEEE NNNNN, where A is the east 100k square, B is the north 100k square,
|
|
|
|
E is the easting, N is the northing */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_GpsCoordinateFormat_OSGR = 5
|
|
|
|
} meshtastic_Config_DisplayConfig_GpsCoordinateFormat;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Unit display preference */
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef enum _meshtastic_Config_DisplayConfig_DisplayUnits {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Metric (Default) */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_DisplayUnits_METRIC = 0,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Imperial */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_DisplayUnits_IMPERIAL = 1
|
|
|
|
} meshtastic_Config_DisplayConfig_DisplayUnits;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Override OLED outo detect with this if it fails. */
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef enum _meshtastic_Config_DisplayConfig_OledType {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Default / Auto */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_OledType_OLED_AUTO = 0,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Default / Auto */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_OledType_OLED_SSD1306 = 1,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Default / Auto */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_OledType_OLED_SH1106 = 2,
|
2023-01-19 14:14:12 +00:00
|
|
|
/* Can not be auto detected but set by proto. Used for 128x128 screens */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_OledType_OLED_SH1107 = 3
|
|
|
|
} meshtastic_Config_DisplayConfig_OledType;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef enum _meshtastic_Config_DisplayConfig_DisplayMode {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Default. The old style for the 128x64 OLED screen */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_DisplayMode_DEFAULT = 0,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Rearrange display elements to cater for bicolor OLED displays */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_DisplayMode_TWOCOLOR = 1,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Same as TwoColor, but with inverted top bar. Not so good for Epaper displays */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_DisplayMode_INVERTED = 2,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* TFT Full Color Displays (not implemented yet) */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_DisplayMode_COLOR = 3
|
|
|
|
} meshtastic_Config_DisplayConfig_DisplayMode;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef enum _meshtastic_Config_LoRaConfig_RegionCode {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Region is not set */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_UNSET = 0,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* United States */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_US = 1,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* European Union 433mhz */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_EU_433 = 2,
|
2023-03-06 22:17:09 +00:00
|
|
|
/* European Union 868mhz */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_EU_868 = 3,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* China */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_CN = 4,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Japan */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_JP = 5,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Australia / New Zealand */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_ANZ = 6,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Korea */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_KR = 7,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Taiwan */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_TW = 8,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Russia */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_RU = 9,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* India */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_IN = 10,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* New Zealand 865mhz */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_NZ_865 = 11,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Thailand */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_TH = 12,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* WLAN Band */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_LORA_24 = 13,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Ukraine 433mhz */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_UA_433 = 14,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Ukraine 868mhz */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode_UA_868 = 15
|
|
|
|
} meshtastic_Config_LoRaConfig_RegionCode;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Standard predefined channel settings
|
|
|
|
Note: these mappings must match ModemPreset Choice in the device code. */
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef enum _meshtastic_Config_LoRaConfig_ModemPreset {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Long Range - Fast */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_ModemPreset_LONG_FAST = 0,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Long Range - Slow */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_ModemPreset_LONG_SLOW = 1,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Very Long Range - Slow */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_ModemPreset_VERY_LONG_SLOW = 2,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Medium Range - Slow */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_ModemPreset_MEDIUM_SLOW = 3,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Medium Range - Fast */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_ModemPreset_MEDIUM_FAST = 4,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Short Range - Slow */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_ModemPreset_SHORT_SLOW = 5,
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Short Range - Fast */
|
2023-01-29 13:57:30 +00:00
|
|
|
meshtastic_Config_LoRaConfig_ModemPreset_SHORT_FAST = 6,
|
|
|
|
/* Long Range - Moderately Fast */
|
|
|
|
meshtastic_Config_LoRaConfig_ModemPreset_LONG_MODERATE = 7
|
2023-01-21 17:22:19 +00:00
|
|
|
} meshtastic_Config_LoRaConfig_ModemPreset;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef enum _meshtastic_Config_BluetoothConfig_PairingMode {
|
2023-03-06 22:17:09 +00:00
|
|
|
/* Device generates a random PIN that will be shown on the screen of the device for pairing */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_BluetoothConfig_PairingMode_RANDOM_PIN = 0,
|
2023-03-06 22:17:09 +00:00
|
|
|
/* Device requires a specified fixed PIN for pairing */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_BluetoothConfig_PairingMode_FIXED_PIN = 1,
|
2023-03-06 22:17:09 +00:00
|
|
|
/* Device requires no PIN for pairing */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_BluetoothConfig_PairingMode_NO_PIN = 2
|
|
|
|
} meshtastic_Config_BluetoothConfig_PairingMode;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Struct definitions */
|
|
|
|
/* Configuration */
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef struct _meshtastic_Config_DeviceConfig {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Sets the role of node */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DeviceConfig_Role role;
|
2023-07-18 11:19:37 +00:00
|
|
|
/* Disabling this will disable the SerialConsole by not initilizing the StreamAPI */
|
2023-01-18 13:42:53 +00:00
|
|
|
bool serial_enabled;
|
|
|
|
/* By default we turn off logging as soon as an API client connects (to keep shared serial link quiet).
|
|
|
|
Set this to true to leave the debug log outputting even when API is active. */
|
|
|
|
bool debug_log_enabled;
|
|
|
|
/* For boards without a hard wired button, this is the pin number that will be used
|
|
|
|
Boards that have more than one button can swap the function with this one. defaults to BUTTON_PIN if defined. */
|
|
|
|
uint32_t button_gpio;
|
|
|
|
/* For boards without a PWM buzzer, this is the pin number that will be used
|
|
|
|
Defaults to PIN_BUZZER if defined. */
|
|
|
|
uint32_t buzzer_gpio;
|
2023-01-29 19:57:41 +00:00
|
|
|
/* Sets the role of node */
|
|
|
|
meshtastic_Config_DeviceConfig_RebroadcastMode rebroadcast_mode;
|
2023-02-08 21:36:23 +00:00
|
|
|
/* Send our nodeinfo this often
|
|
|
|
Defaults to 900 Seconds (15 minutes) */
|
|
|
|
uint32_t node_info_broadcast_secs;
|
2023-03-29 18:04:02 +00:00
|
|
|
/* Treat double tap interrupt on supported accelerometers as a button press if set to true */
|
|
|
|
bool double_tap_as_button_press;
|
2023-05-12 13:38:30 +00:00
|
|
|
/* If true, device is considered to be "managed" by a mesh administrator
|
|
|
|
Clients should then limit available configuration and administrative options inside the user interface */
|
|
|
|
bool is_managed;
|
2023-01-21 17:22:19 +00:00
|
|
|
} meshtastic_Config_DeviceConfig;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Position Config */
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef struct _meshtastic_Config_PositionConfig {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* We should send our position this often (but only if it has changed significantly)
|
|
|
|
Defaults to 15 minutes */
|
|
|
|
uint32_t position_broadcast_secs;
|
|
|
|
/* Adaptive position braoadcast, which is now the default. */
|
|
|
|
bool position_broadcast_smart_enabled;
|
|
|
|
/* If set, this node is at a fixed position.
|
|
|
|
We will generate GPS position updates at the regular interval, but use whatever the last lat/lon/alt we have for the node.
|
|
|
|
The lat/lon/alt can be set by an internal GPS or with the help of the app. */
|
|
|
|
bool fixed_position;
|
|
|
|
/* Is GPS enabled for this node? */
|
|
|
|
bool gps_enabled;
|
|
|
|
/* How often should we try to get GPS position (in seconds)
|
|
|
|
or zero for the default of once every 30 seconds
|
|
|
|
or a very large value (maxint) to update only once at boot. */
|
|
|
|
uint32_t gps_update_interval;
|
|
|
|
/* How long should we try to get our position during each gps_update_interval attempt? (in seconds)
|
|
|
|
Or if zero, use the default of 30 seconds.
|
|
|
|
If we don't get a new gps fix in that time, the gps will be put into sleep until the next gps_update_rate
|
|
|
|
window. */
|
|
|
|
uint32_t gps_attempt_time;
|
|
|
|
/* Bit field of boolean configuration options for POSITION messages
|
|
|
|
(bitwise OR of PositionFlags) */
|
|
|
|
uint32_t position_flags;
|
|
|
|
/* (Re)define GPS_RX_PIN for your board. */
|
|
|
|
uint32_t rx_gpio;
|
|
|
|
/* (Re)define GPS_TX_PIN for your board. */
|
|
|
|
uint32_t tx_gpio;
|
2023-03-27 19:09:22 +00:00
|
|
|
/* The minimum distance in meters traveled (since the last send) before we can send a position to the mesh if position_broadcast_smart_enabled */
|
|
|
|
uint32_t broadcast_smart_minimum_distance;
|
2023-08-15 00:00:51 +00:00
|
|
|
/* The minimum number of seconds (since the last send) before we can send a position to the mesh if position_broadcast_smart_enabled */
|
2023-03-27 19:09:22 +00:00
|
|
|
uint32_t broadcast_smart_minimum_interval_secs;
|
2023-01-21 17:22:19 +00:00
|
|
|
} meshtastic_Config_PositionConfig;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Power Config\
|
|
|
|
See [Power Config](/docs/settings/config/power) for additional power config details. */
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef struct _meshtastic_Config_PowerConfig {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* If set, we are powered from a low-current source (i.e. solar), so even if it looks like we have power flowing in
|
|
|
|
we should try to minimize power consumption as much as possible.
|
|
|
|
YOU DO NOT NEED TO SET THIS IF YOU'VE set is_router (it is implied in that case).
|
|
|
|
Advanced Option */
|
|
|
|
bool is_power_saving;
|
|
|
|
/* If non-zero, the device will fully power off this many seconds after external power is removed. */
|
|
|
|
uint32_t on_battery_shutdown_after_secs;
|
|
|
|
/* Ratio of voltage divider for battery pin eg. 3.20 (R1=100k, R2=220k)
|
|
|
|
Overrides the ADC_MULTIPLIER defined in variant for battery voltage calculation.
|
|
|
|
Should be set to floating point value between 2 and 4
|
|
|
|
Fixes issues on Heltec v2 */
|
|
|
|
float adc_multiplier_override;
|
|
|
|
/* Wait Bluetooth Seconds
|
|
|
|
The number of seconds for to wait before turning off BLE in No Bluetooth states
|
|
|
|
0 for default of 1 minute */
|
|
|
|
uint32_t wait_bluetooth_secs;
|
|
|
|
/* Super Deep Sleep Seconds
|
|
|
|
While in Light Sleep if mesh_sds_timeout_secs is exceeded we will lower into super deep sleep
|
|
|
|
for this value (default 1 year) or a button press
|
|
|
|
0 for default of one year */
|
|
|
|
uint32_t sds_secs;
|
|
|
|
/* Light Sleep Seconds
|
|
|
|
In light sleep the CPU is suspended, LoRa radio is on, BLE is off an GPS is on
|
|
|
|
ESP32 Only
|
|
|
|
0 for default of 300 */
|
|
|
|
uint32_t ls_secs;
|
|
|
|
/* Minimum Wake Seconds
|
|
|
|
While in light sleep when we receive packets on the LoRa radio we will wake and handle them and stay awake in no BLE mode for this value
|
|
|
|
0 for default of 10 seconds */
|
|
|
|
uint32_t min_wake_secs;
|
2023-05-28 14:44:47 +00:00
|
|
|
/* I2C address of INA_2XX to use for reading device battery voltage */
|
|
|
|
uint8_t device_battery_ina_address;
|
2023-01-21 17:22:19 +00:00
|
|
|
} meshtastic_Config_PowerConfig;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef struct _meshtastic_Config_NetworkConfig_IpV4Config {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Static IP address */
|
|
|
|
uint32_t ip;
|
|
|
|
/* Static gateway address */
|
|
|
|
uint32_t gateway;
|
|
|
|
/* Static subnet mask */
|
|
|
|
uint32_t subnet;
|
|
|
|
/* Static DNS server address */
|
|
|
|
uint32_t dns;
|
2023-01-21 17:22:19 +00:00
|
|
|
} meshtastic_Config_NetworkConfig_IpV4Config;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Network Config */
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef struct _meshtastic_Config_NetworkConfig {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Enable WiFi (disables Bluetooth) */
|
|
|
|
bool wifi_enabled;
|
|
|
|
/* If set, this node will try to join the specified wifi network and
|
|
|
|
acquire an address via DHCP */
|
|
|
|
char wifi_ssid[33];
|
|
|
|
/* If set, will be use to authenticate to the named wifi */
|
|
|
|
char wifi_psk[64];
|
|
|
|
/* NTP server to use if WiFi is conneced, defaults to `0.pool.ntp.org` */
|
|
|
|
char ntp_server[33];
|
|
|
|
/* Enable Ethernet */
|
|
|
|
bool eth_enabled;
|
|
|
|
/* acquire an address via DHCP or assign static */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_NetworkConfig_AddressMode address_mode;
|
2023-01-18 13:42:53 +00:00
|
|
|
/* struct to keep static address */
|
|
|
|
bool has_ipv4_config;
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_NetworkConfig_IpV4Config ipv4_config;
|
2023-01-18 21:12:03 +00:00
|
|
|
/* rsyslog Server and Port */
|
|
|
|
char rsyslog_server[33];
|
2023-01-21 17:22:19 +00:00
|
|
|
} meshtastic_Config_NetworkConfig;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Display Config */
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef struct _meshtastic_Config_DisplayConfig {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Number of seconds the screen stays on after pressing the user button or receiving a message
|
|
|
|
0 for default of one minute MAXUINT for always on */
|
|
|
|
uint32_t screen_on_secs;
|
|
|
|
/* How the GPS coordinates are formatted on the OLED screen. */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_GpsCoordinateFormat gps_format;
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Automatically toggles to the next page on the screen like a carousel, based the specified interval in seconds.
|
|
|
|
Potentially useful for devices without user buttons. */
|
|
|
|
uint32_t auto_screen_carousel_secs;
|
2023-05-23 01:19:13 +00:00
|
|
|
/* If this is set, the displayed compass will always point north. if unset, the old behaviour
|
2023-01-18 13:42:53 +00:00
|
|
|
(top of display is heading direction) is used. */
|
|
|
|
bool compass_north_top;
|
|
|
|
/* Flip screen vertically, for cases that mount the screen upside down */
|
|
|
|
bool flip_screen;
|
2023-07-18 11:19:37 +00:00
|
|
|
/* Perferred display units */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_DisplayUnits units;
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Override auto-detect in screen */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_OledType oled;
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Display Mode */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DisplayConfig_DisplayMode displaymode;
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Print first line in pseudo-bold? FALSE is original style, TRUE is bold */
|
|
|
|
bool heading_bold;
|
2023-03-23 16:32:04 +00:00
|
|
|
/* Should we wake the screen up on accelerometer detected motion or tap */
|
|
|
|
bool wake_on_tap_or_motion;
|
2023-01-21 17:22:19 +00:00
|
|
|
} meshtastic_Config_DisplayConfig;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Lora Config */
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef struct _meshtastic_Config_LoRaConfig {
|
2023-03-06 22:17:09 +00:00
|
|
|
/* When enabled, the `modem_preset` fields will be adhered to, else the `bandwidth`/`spread_factor`/`coding_rate`
|
2023-01-18 13:42:53 +00:00
|
|
|
will be taked from their respective manually defined fields */
|
|
|
|
bool use_preset;
|
|
|
|
/* Either modem_config or bandwidth/spreading/coding will be specified - NOT BOTH.
|
|
|
|
As a heuristic: If bandwidth is specified, do not use modem_config.
|
|
|
|
Because protobufs take ZERO space when the value is zero this works out nicely.
|
|
|
|
This value is replaced by bandwidth/spread_factor/coding_rate.
|
|
|
|
If you'd like to experiment with other options add them to MeshRadio.cpp in the device code. */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_ModemPreset modem_preset;
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Bandwidth in MHz
|
|
|
|
Certain bandwidth numbers are 'special' and will be converted to the
|
|
|
|
appropriate floating point value: 31 -> 31.25MHz */
|
|
|
|
uint16_t bandwidth;
|
|
|
|
/* A number from 7 to 12.
|
|
|
|
Indicates number of chirps per symbol as 1<<spread_factor. */
|
|
|
|
uint32_t spread_factor;
|
|
|
|
/* The denominator of the coding rate.
|
|
|
|
ie for 4/5, the value is 5. 4/8 the value is 8. */
|
|
|
|
uint8_t coding_rate;
|
|
|
|
/* This parameter is for advanced users with advanced test equipment, we do not recommend most users use it.
|
|
|
|
A frequency offset that is added to to the calculated band center frequency.
|
|
|
|
Used to correct for crystal calibration errors. */
|
|
|
|
float frequency_offset;
|
|
|
|
/* The region code for the radio (US, CN, EU433, etc...) */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_LoRaConfig_RegionCode region;
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Maximum number of hops. This can't be greater than 7.
|
2023-09-18 18:26:09 +00:00
|
|
|
Default of 3
|
|
|
|
Attempting to set a value > 7 results in the default */
|
2023-01-18 13:42:53 +00:00
|
|
|
uint32_t hop_limit;
|
|
|
|
/* Disable TX from the LoRa radio. Useful for hot-swapping antennas and other tests.
|
|
|
|
Defaults to false */
|
|
|
|
bool tx_enabled;
|
2023-03-06 22:17:09 +00:00
|
|
|
/* If zero, then use default max legal continuous power (ie. something that won't
|
2023-01-18 13:42:53 +00:00
|
|
|
burn out the radio hardware)
|
|
|
|
In most cases you should use zero here.
|
|
|
|
Units are in dBm. */
|
|
|
|
int8_t tx_power;
|
2023-03-06 22:17:09 +00:00
|
|
|
/* This controls the actual hardware frequency the radio transmits on.
|
2023-01-18 13:42:53 +00:00
|
|
|
Most users should never need to be exposed to this field/concept.
|
|
|
|
A channel number between 1 and NUM_CHANNELS (whatever the max is in the current region).
|
|
|
|
If ZERO then the rule is "use the old channel name hash based
|
|
|
|
algorithm to derive the channel number")
|
|
|
|
If using the hash algorithm the channel number will be: hash(channel_name) %
|
|
|
|
NUM_CHANNELS (Where num channels depends on the regulatory region). */
|
|
|
|
uint16_t channel_num;
|
2023-05-23 01:19:13 +00:00
|
|
|
/* If true, duty cycle limits will be exceeded and thus you're possibly not following
|
2023-01-18 13:42:53 +00:00
|
|
|
the local regulations if you're not a HAM.
|
|
|
|
Has no effect if the duty cycle of the used region is 100%. */
|
|
|
|
bool override_duty_cycle;
|
2023-01-24 18:16:01 +00:00
|
|
|
/* If true, sets RX boosted gain mode on SX126X based radios */
|
|
|
|
bool sx126x_rx_boosted_gain;
|
2023-01-30 14:55:58 +00:00
|
|
|
/* This parameter is for advanced users and licensed HAM radio operators.
|
|
|
|
Ignore Channel Calculation and use this frequency instead. The frequency_offset
|
|
|
|
will still be applied. This will allow you to use out-of-band frequencies.
|
|
|
|
Please respect your local laws and regulations. If you are a HAM, make sure you
|
|
|
|
enable HAM mode and turn off encryption. */
|
|
|
|
float override_frequency;
|
2023-01-18 13:42:53 +00:00
|
|
|
/* For testing it is useful sometimes to force a node to never listen to
|
|
|
|
particular other nodes (simulating radio out of range). All nodenums listed
|
2023-03-06 22:17:09 +00:00
|
|
|
in ignore_incoming will have packets they send dropped on receive (by router.cpp) */
|
2023-01-18 13:42:53 +00:00
|
|
|
pb_size_t ignore_incoming_count;
|
|
|
|
uint32_t ignore_incoming[3];
|
2023-01-21 17:22:19 +00:00
|
|
|
} meshtastic_Config_LoRaConfig;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef struct _meshtastic_Config_BluetoothConfig {
|
2023-01-18 13:42:53 +00:00
|
|
|
/* Enable Bluetooth on the device */
|
|
|
|
bool enabled;
|
|
|
|
/* Determines the pairing strategy for the device */
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_BluetoothConfig_PairingMode mode;
|
2023-03-06 22:17:09 +00:00
|
|
|
/* Specified PIN for PairingMode.FixedPin */
|
2023-01-18 13:42:53 +00:00
|
|
|
uint32_t fixed_pin;
|
2023-01-21 17:22:19 +00:00
|
|
|
} meshtastic_Config_BluetoothConfig;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
typedef struct _meshtastic_Config {
|
2023-01-18 13:42:53 +00:00
|
|
|
pb_size_t which_payload_variant;
|
|
|
|
union {
|
2023-01-21 17:22:19 +00:00
|
|
|
meshtastic_Config_DeviceConfig device;
|
|
|
|
meshtastic_Config_PositionConfig position;
|
|
|
|
meshtastic_Config_PowerConfig power;
|
|
|
|
meshtastic_Config_NetworkConfig network;
|
|
|
|
meshtastic_Config_DisplayConfig display;
|
|
|
|
meshtastic_Config_LoRaConfig lora;
|
|
|
|
meshtastic_Config_BluetoothConfig bluetooth;
|
2023-01-18 13:42:53 +00:00
|
|
|
} payload_variant;
|
2023-01-21 17:22:19 +00:00
|
|
|
} meshtastic_Config;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/* Helper constants for enums */
|
2023-01-21 17:22:19 +00:00
|
|
|
#define _meshtastic_Config_DeviceConfig_Role_MIN meshtastic_Config_DeviceConfig_Role_CLIENT
|
2023-02-24 17:25:50 +00:00
|
|
|
#define _meshtastic_Config_DeviceConfig_Role_MAX meshtastic_Config_DeviceConfig_Role_SENSOR
|
|
|
|
#define _meshtastic_Config_DeviceConfig_Role_ARRAYSIZE ((meshtastic_Config_DeviceConfig_Role)(meshtastic_Config_DeviceConfig_Role_SENSOR+1))
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-29 19:57:41 +00:00
|
|
|
#define _meshtastic_Config_DeviceConfig_RebroadcastMode_MIN meshtastic_Config_DeviceConfig_RebroadcastMode_ALL
|
|
|
|
#define _meshtastic_Config_DeviceConfig_RebroadcastMode_MAX meshtastic_Config_DeviceConfig_RebroadcastMode_LOCAL_ONLY
|
|
|
|
#define _meshtastic_Config_DeviceConfig_RebroadcastMode_ARRAYSIZE ((meshtastic_Config_DeviceConfig_RebroadcastMode)(meshtastic_Config_DeviceConfig_RebroadcastMode_LOCAL_ONLY+1))
|
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define _meshtastic_Config_PositionConfig_PositionFlags_MIN meshtastic_Config_PositionConfig_PositionFlags_UNSET
|
|
|
|
#define _meshtastic_Config_PositionConfig_PositionFlags_MAX meshtastic_Config_PositionConfig_PositionFlags_SPEED
|
|
|
|
#define _meshtastic_Config_PositionConfig_PositionFlags_ARRAYSIZE ((meshtastic_Config_PositionConfig_PositionFlags)(meshtastic_Config_PositionConfig_PositionFlags_SPEED+1))
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define _meshtastic_Config_NetworkConfig_AddressMode_MIN meshtastic_Config_NetworkConfig_AddressMode_DHCP
|
|
|
|
#define _meshtastic_Config_NetworkConfig_AddressMode_MAX meshtastic_Config_NetworkConfig_AddressMode_STATIC
|
|
|
|
#define _meshtastic_Config_NetworkConfig_AddressMode_ARRAYSIZE ((meshtastic_Config_NetworkConfig_AddressMode)(meshtastic_Config_NetworkConfig_AddressMode_STATIC+1))
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define _meshtastic_Config_DisplayConfig_GpsCoordinateFormat_MIN meshtastic_Config_DisplayConfig_GpsCoordinateFormat_DEC
|
|
|
|
#define _meshtastic_Config_DisplayConfig_GpsCoordinateFormat_MAX meshtastic_Config_DisplayConfig_GpsCoordinateFormat_OSGR
|
|
|
|
#define _meshtastic_Config_DisplayConfig_GpsCoordinateFormat_ARRAYSIZE ((meshtastic_Config_DisplayConfig_GpsCoordinateFormat)(meshtastic_Config_DisplayConfig_GpsCoordinateFormat_OSGR+1))
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define _meshtastic_Config_DisplayConfig_DisplayUnits_MIN meshtastic_Config_DisplayConfig_DisplayUnits_METRIC
|
|
|
|
#define _meshtastic_Config_DisplayConfig_DisplayUnits_MAX meshtastic_Config_DisplayConfig_DisplayUnits_IMPERIAL
|
|
|
|
#define _meshtastic_Config_DisplayConfig_DisplayUnits_ARRAYSIZE ((meshtastic_Config_DisplayConfig_DisplayUnits)(meshtastic_Config_DisplayConfig_DisplayUnits_IMPERIAL+1))
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define _meshtastic_Config_DisplayConfig_OledType_MIN meshtastic_Config_DisplayConfig_OledType_OLED_AUTO
|
|
|
|
#define _meshtastic_Config_DisplayConfig_OledType_MAX meshtastic_Config_DisplayConfig_OledType_OLED_SH1107
|
|
|
|
#define _meshtastic_Config_DisplayConfig_OledType_ARRAYSIZE ((meshtastic_Config_DisplayConfig_OledType)(meshtastic_Config_DisplayConfig_OledType_OLED_SH1107+1))
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define _meshtastic_Config_DisplayConfig_DisplayMode_MIN meshtastic_Config_DisplayConfig_DisplayMode_DEFAULT
|
|
|
|
#define _meshtastic_Config_DisplayConfig_DisplayMode_MAX meshtastic_Config_DisplayConfig_DisplayMode_COLOR
|
|
|
|
#define _meshtastic_Config_DisplayConfig_DisplayMode_ARRAYSIZE ((meshtastic_Config_DisplayConfig_DisplayMode)(meshtastic_Config_DisplayConfig_DisplayMode_COLOR+1))
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define _meshtastic_Config_LoRaConfig_RegionCode_MIN meshtastic_Config_LoRaConfig_RegionCode_UNSET
|
|
|
|
#define _meshtastic_Config_LoRaConfig_RegionCode_MAX meshtastic_Config_LoRaConfig_RegionCode_UA_868
|
|
|
|
#define _meshtastic_Config_LoRaConfig_RegionCode_ARRAYSIZE ((meshtastic_Config_LoRaConfig_RegionCode)(meshtastic_Config_LoRaConfig_RegionCode_UA_868+1))
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define _meshtastic_Config_LoRaConfig_ModemPreset_MIN meshtastic_Config_LoRaConfig_ModemPreset_LONG_FAST
|
2023-01-29 13:57:30 +00:00
|
|
|
#define _meshtastic_Config_LoRaConfig_ModemPreset_MAX meshtastic_Config_LoRaConfig_ModemPreset_LONG_MODERATE
|
|
|
|
#define _meshtastic_Config_LoRaConfig_ModemPreset_ARRAYSIZE ((meshtastic_Config_LoRaConfig_ModemPreset)(meshtastic_Config_LoRaConfig_ModemPreset_LONG_MODERATE+1))
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define _meshtastic_Config_BluetoothConfig_PairingMode_MIN meshtastic_Config_BluetoothConfig_PairingMode_RANDOM_PIN
|
|
|
|
#define _meshtastic_Config_BluetoothConfig_PairingMode_MAX meshtastic_Config_BluetoothConfig_PairingMode_NO_PIN
|
|
|
|
#define _meshtastic_Config_BluetoothConfig_PairingMode_ARRAYSIZE ((meshtastic_Config_BluetoothConfig_PairingMode)(meshtastic_Config_BluetoothConfig_PairingMode_NO_PIN+1))
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_DeviceConfig_role_ENUMTYPE meshtastic_Config_DeviceConfig_Role
|
2023-01-29 19:57:41 +00:00
|
|
|
#define meshtastic_Config_DeviceConfig_rebroadcast_mode_ENUMTYPE meshtastic_Config_DeviceConfig_RebroadcastMode
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_NetworkConfig_address_mode_ENUMTYPE meshtastic_Config_NetworkConfig_AddressMode
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_DisplayConfig_gps_format_ENUMTYPE meshtastic_Config_DisplayConfig_GpsCoordinateFormat
|
|
|
|
#define meshtastic_Config_DisplayConfig_units_ENUMTYPE meshtastic_Config_DisplayConfig_DisplayUnits
|
|
|
|
#define meshtastic_Config_DisplayConfig_oled_ENUMTYPE meshtastic_Config_DisplayConfig_OledType
|
|
|
|
#define meshtastic_Config_DisplayConfig_displaymode_ENUMTYPE meshtastic_Config_DisplayConfig_DisplayMode
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_LoRaConfig_modem_preset_ENUMTYPE meshtastic_Config_LoRaConfig_ModemPreset
|
|
|
|
#define meshtastic_Config_LoRaConfig_region_ENUMTYPE meshtastic_Config_LoRaConfig_RegionCode
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_BluetoothConfig_mode_ENUMTYPE meshtastic_Config_BluetoothConfig_PairingMode
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
|
|
|
|
/* Initializer values for message structs */
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_init_default {0, {meshtastic_Config_DeviceConfig_init_default}}
|
2023-05-12 13:38:30 +00:00
|
|
|
#define meshtastic_Config_DeviceConfig_init_default {_meshtastic_Config_DeviceConfig_Role_MIN, 0, 0, 0, 0, _meshtastic_Config_DeviceConfig_RebroadcastMode_MIN, 0, 0, 0}
|
2023-03-27 19:09:22 +00:00
|
|
|
#define meshtastic_Config_PositionConfig_init_default {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
|
2023-08-12 14:29:19 +00:00
|
|
|
#define meshtastic_Config_PowerConfig_init_default {0, 0, 0, 0, 0, 0, 0, 0}
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_NetworkConfig_init_default {0, "", "", "", 0, _meshtastic_Config_NetworkConfig_AddressMode_MIN, false, meshtastic_Config_NetworkConfig_IpV4Config_init_default, ""}
|
|
|
|
#define meshtastic_Config_NetworkConfig_IpV4Config_init_default {0, 0, 0, 0}
|
2023-03-23 16:32:04 +00:00
|
|
|
#define meshtastic_Config_DisplayConfig_init_default {0, _meshtastic_Config_DisplayConfig_GpsCoordinateFormat_MIN, 0, 0, 0, _meshtastic_Config_DisplayConfig_DisplayUnits_MIN, _meshtastic_Config_DisplayConfig_OledType_MIN, _meshtastic_Config_DisplayConfig_DisplayMode_MIN, 0, 0}
|
2023-01-30 14:55:58 +00:00
|
|
|
#define meshtastic_Config_LoRaConfig_init_default {0, _meshtastic_Config_LoRaConfig_ModemPreset_MIN, 0, 0, 0, 0, _meshtastic_Config_LoRaConfig_RegionCode_MIN, 0, 0, 0, 0, 0, 0, 0, 0, {0, 0, 0}}
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_BluetoothConfig_init_default {0, _meshtastic_Config_BluetoothConfig_PairingMode_MIN, 0}
|
|
|
|
#define meshtastic_Config_init_zero {0, {meshtastic_Config_DeviceConfig_init_zero}}
|
2023-05-12 13:38:30 +00:00
|
|
|
#define meshtastic_Config_DeviceConfig_init_zero {_meshtastic_Config_DeviceConfig_Role_MIN, 0, 0, 0, 0, _meshtastic_Config_DeviceConfig_RebroadcastMode_MIN, 0, 0, 0}
|
2023-03-27 19:09:22 +00:00
|
|
|
#define meshtastic_Config_PositionConfig_init_zero {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
|
2023-08-12 14:29:19 +00:00
|
|
|
#define meshtastic_Config_PowerConfig_init_zero {0, 0, 0, 0, 0, 0, 0, 0}
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_NetworkConfig_init_zero {0, "", "", "", 0, _meshtastic_Config_NetworkConfig_AddressMode_MIN, false, meshtastic_Config_NetworkConfig_IpV4Config_init_zero, ""}
|
|
|
|
#define meshtastic_Config_NetworkConfig_IpV4Config_init_zero {0, 0, 0, 0}
|
2023-03-23 16:32:04 +00:00
|
|
|
#define meshtastic_Config_DisplayConfig_init_zero {0, _meshtastic_Config_DisplayConfig_GpsCoordinateFormat_MIN, 0, 0, 0, _meshtastic_Config_DisplayConfig_DisplayUnits_MIN, _meshtastic_Config_DisplayConfig_OledType_MIN, _meshtastic_Config_DisplayConfig_DisplayMode_MIN, 0, 0}
|
2023-01-30 14:55:58 +00:00
|
|
|
#define meshtastic_Config_LoRaConfig_init_zero {0, _meshtastic_Config_LoRaConfig_ModemPreset_MIN, 0, 0, 0, 0, _meshtastic_Config_LoRaConfig_RegionCode_MIN, 0, 0, 0, 0, 0, 0, 0, 0, {0, 0, 0}}
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_BluetoothConfig_init_zero {0, _meshtastic_Config_BluetoothConfig_PairingMode_MIN, 0}
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Field tags (for use in manual encoding/decoding) */
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_DeviceConfig_role_tag 1
|
|
|
|
#define meshtastic_Config_DeviceConfig_serial_enabled_tag 2
|
|
|
|
#define meshtastic_Config_DeviceConfig_debug_log_enabled_tag 3
|
|
|
|
#define meshtastic_Config_DeviceConfig_button_gpio_tag 4
|
|
|
|
#define meshtastic_Config_DeviceConfig_buzzer_gpio_tag 5
|
2023-01-29 19:57:41 +00:00
|
|
|
#define meshtastic_Config_DeviceConfig_rebroadcast_mode_tag 6
|
2023-02-08 21:36:23 +00:00
|
|
|
#define meshtastic_Config_DeviceConfig_node_info_broadcast_secs_tag 7
|
2023-03-29 18:04:02 +00:00
|
|
|
#define meshtastic_Config_DeviceConfig_double_tap_as_button_press_tag 8
|
2023-05-12 13:38:30 +00:00
|
|
|
#define meshtastic_Config_DeviceConfig_is_managed_tag 9
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_PositionConfig_position_broadcast_secs_tag 1
|
|
|
|
#define meshtastic_Config_PositionConfig_position_broadcast_smart_enabled_tag 2
|
|
|
|
#define meshtastic_Config_PositionConfig_fixed_position_tag 3
|
|
|
|
#define meshtastic_Config_PositionConfig_gps_enabled_tag 4
|
|
|
|
#define meshtastic_Config_PositionConfig_gps_update_interval_tag 5
|
|
|
|
#define meshtastic_Config_PositionConfig_gps_attempt_time_tag 6
|
|
|
|
#define meshtastic_Config_PositionConfig_position_flags_tag 7
|
|
|
|
#define meshtastic_Config_PositionConfig_rx_gpio_tag 8
|
|
|
|
#define meshtastic_Config_PositionConfig_tx_gpio_tag 9
|
2023-03-27 19:09:22 +00:00
|
|
|
#define meshtastic_Config_PositionConfig_broadcast_smart_minimum_distance_tag 10
|
|
|
|
#define meshtastic_Config_PositionConfig_broadcast_smart_minimum_interval_secs_tag 11
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_PowerConfig_is_power_saving_tag 1
|
|
|
|
#define meshtastic_Config_PowerConfig_on_battery_shutdown_after_secs_tag 2
|
|
|
|
#define meshtastic_Config_PowerConfig_adc_multiplier_override_tag 3
|
|
|
|
#define meshtastic_Config_PowerConfig_wait_bluetooth_secs_tag 4
|
|
|
|
#define meshtastic_Config_PowerConfig_sds_secs_tag 6
|
|
|
|
#define meshtastic_Config_PowerConfig_ls_secs_tag 7
|
|
|
|
#define meshtastic_Config_PowerConfig_min_wake_secs_tag 8
|
2023-05-28 14:44:47 +00:00
|
|
|
#define meshtastic_Config_PowerConfig_device_battery_ina_address_tag 9
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_NetworkConfig_IpV4Config_ip_tag 1
|
|
|
|
#define meshtastic_Config_NetworkConfig_IpV4Config_gateway_tag 2
|
|
|
|
#define meshtastic_Config_NetworkConfig_IpV4Config_subnet_tag 3
|
|
|
|
#define meshtastic_Config_NetworkConfig_IpV4Config_dns_tag 4
|
|
|
|
#define meshtastic_Config_NetworkConfig_wifi_enabled_tag 1
|
|
|
|
#define meshtastic_Config_NetworkConfig_wifi_ssid_tag 3
|
|
|
|
#define meshtastic_Config_NetworkConfig_wifi_psk_tag 4
|
|
|
|
#define meshtastic_Config_NetworkConfig_ntp_server_tag 5
|
|
|
|
#define meshtastic_Config_NetworkConfig_eth_enabled_tag 6
|
|
|
|
#define meshtastic_Config_NetworkConfig_address_mode_tag 7
|
|
|
|
#define meshtastic_Config_NetworkConfig_ipv4_config_tag 8
|
|
|
|
#define meshtastic_Config_NetworkConfig_rsyslog_server_tag 9
|
|
|
|
#define meshtastic_Config_DisplayConfig_screen_on_secs_tag 1
|
|
|
|
#define meshtastic_Config_DisplayConfig_gps_format_tag 2
|
|
|
|
#define meshtastic_Config_DisplayConfig_auto_screen_carousel_secs_tag 3
|
|
|
|
#define meshtastic_Config_DisplayConfig_compass_north_top_tag 4
|
|
|
|
#define meshtastic_Config_DisplayConfig_flip_screen_tag 5
|
|
|
|
#define meshtastic_Config_DisplayConfig_units_tag 6
|
|
|
|
#define meshtastic_Config_DisplayConfig_oled_tag 7
|
|
|
|
#define meshtastic_Config_DisplayConfig_displaymode_tag 8
|
|
|
|
#define meshtastic_Config_DisplayConfig_heading_bold_tag 9
|
2023-03-23 16:32:04 +00:00
|
|
|
#define meshtastic_Config_DisplayConfig_wake_on_tap_or_motion_tag 10
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_LoRaConfig_use_preset_tag 1
|
|
|
|
#define meshtastic_Config_LoRaConfig_modem_preset_tag 2
|
|
|
|
#define meshtastic_Config_LoRaConfig_bandwidth_tag 3
|
|
|
|
#define meshtastic_Config_LoRaConfig_spread_factor_tag 4
|
|
|
|
#define meshtastic_Config_LoRaConfig_coding_rate_tag 5
|
|
|
|
#define meshtastic_Config_LoRaConfig_frequency_offset_tag 6
|
|
|
|
#define meshtastic_Config_LoRaConfig_region_tag 7
|
|
|
|
#define meshtastic_Config_LoRaConfig_hop_limit_tag 8
|
|
|
|
#define meshtastic_Config_LoRaConfig_tx_enabled_tag 9
|
|
|
|
#define meshtastic_Config_LoRaConfig_tx_power_tag 10
|
|
|
|
#define meshtastic_Config_LoRaConfig_channel_num_tag 11
|
|
|
|
#define meshtastic_Config_LoRaConfig_override_duty_cycle_tag 12
|
2023-01-24 18:16:01 +00:00
|
|
|
#define meshtastic_Config_LoRaConfig_sx126x_rx_boosted_gain_tag 13
|
2023-01-30 14:55:58 +00:00
|
|
|
#define meshtastic_Config_LoRaConfig_override_frequency_tag 14
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_LoRaConfig_ignore_incoming_tag 103
|
|
|
|
#define meshtastic_Config_BluetoothConfig_enabled_tag 1
|
|
|
|
#define meshtastic_Config_BluetoothConfig_mode_tag 2
|
|
|
|
#define meshtastic_Config_BluetoothConfig_fixed_pin_tag 3
|
|
|
|
#define meshtastic_Config_device_tag 1
|
|
|
|
#define meshtastic_Config_position_tag 2
|
|
|
|
#define meshtastic_Config_power_tag 3
|
|
|
|
#define meshtastic_Config_network_tag 4
|
|
|
|
#define meshtastic_Config_display_tag 5
|
|
|
|
#define meshtastic_Config_lora_tag 6
|
|
|
|
#define meshtastic_Config_bluetooth_tag 7
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Struct field encoding specification for nanopb */
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_FIELDLIST(X, a) \
|
2023-01-18 13:42:53 +00:00
|
|
|
X(a, STATIC, ONEOF, MESSAGE, (payload_variant,device,payload_variant.device), 1) \
|
|
|
|
X(a, STATIC, ONEOF, MESSAGE, (payload_variant,position,payload_variant.position), 2) \
|
|
|
|
X(a, STATIC, ONEOF, MESSAGE, (payload_variant,power,payload_variant.power), 3) \
|
|
|
|
X(a, STATIC, ONEOF, MESSAGE, (payload_variant,network,payload_variant.network), 4) \
|
|
|
|
X(a, STATIC, ONEOF, MESSAGE, (payload_variant,display,payload_variant.display), 5) \
|
|
|
|
X(a, STATIC, ONEOF, MESSAGE, (payload_variant,lora,payload_variant.lora), 6) \
|
|
|
|
X(a, STATIC, ONEOF, MESSAGE, (payload_variant,bluetooth,payload_variant.bluetooth), 7)
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_CALLBACK NULL
|
|
|
|
#define meshtastic_Config_DEFAULT NULL
|
|
|
|
#define meshtastic_Config_payload_variant_device_MSGTYPE meshtastic_Config_DeviceConfig
|
|
|
|
#define meshtastic_Config_payload_variant_position_MSGTYPE meshtastic_Config_PositionConfig
|
|
|
|
#define meshtastic_Config_payload_variant_power_MSGTYPE meshtastic_Config_PowerConfig
|
|
|
|
#define meshtastic_Config_payload_variant_network_MSGTYPE meshtastic_Config_NetworkConfig
|
|
|
|
#define meshtastic_Config_payload_variant_display_MSGTYPE meshtastic_Config_DisplayConfig
|
|
|
|
#define meshtastic_Config_payload_variant_lora_MSGTYPE meshtastic_Config_LoRaConfig
|
|
|
|
#define meshtastic_Config_payload_variant_bluetooth_MSGTYPE meshtastic_Config_BluetoothConfig
|
|
|
|
|
|
|
|
#define meshtastic_Config_DeviceConfig_FIELDLIST(X, a) \
|
2023-01-18 13:42:53 +00:00
|
|
|
X(a, STATIC, SINGULAR, UENUM, role, 1) \
|
|
|
|
X(a, STATIC, SINGULAR, BOOL, serial_enabled, 2) \
|
|
|
|
X(a, STATIC, SINGULAR, BOOL, debug_log_enabled, 3) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, button_gpio, 4) \
|
2023-01-29 19:57:41 +00:00
|
|
|
X(a, STATIC, SINGULAR, UINT32, buzzer_gpio, 5) \
|
2023-02-08 21:36:23 +00:00
|
|
|
X(a, STATIC, SINGULAR, UENUM, rebroadcast_mode, 6) \
|
2023-03-29 18:04:02 +00:00
|
|
|
X(a, STATIC, SINGULAR, UINT32, node_info_broadcast_secs, 7) \
|
2023-05-12 13:38:30 +00:00
|
|
|
X(a, STATIC, SINGULAR, BOOL, double_tap_as_button_press, 8) \
|
|
|
|
X(a, STATIC, SINGULAR, BOOL, is_managed, 9)
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_DeviceConfig_CALLBACK NULL
|
|
|
|
#define meshtastic_Config_DeviceConfig_DEFAULT NULL
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_PositionConfig_FIELDLIST(X, a) \
|
2023-01-18 13:42:53 +00:00
|
|
|
X(a, STATIC, SINGULAR, UINT32, position_broadcast_secs, 1) \
|
|
|
|
X(a, STATIC, SINGULAR, BOOL, position_broadcast_smart_enabled, 2) \
|
|
|
|
X(a, STATIC, SINGULAR, BOOL, fixed_position, 3) \
|
|
|
|
X(a, STATIC, SINGULAR, BOOL, gps_enabled, 4) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, gps_update_interval, 5) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, gps_attempt_time, 6) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, position_flags, 7) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, rx_gpio, 8) \
|
2023-03-27 19:09:22 +00:00
|
|
|
X(a, STATIC, SINGULAR, UINT32, tx_gpio, 9) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, broadcast_smart_minimum_distance, 10) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, broadcast_smart_minimum_interval_secs, 11)
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_PositionConfig_CALLBACK NULL
|
|
|
|
#define meshtastic_Config_PositionConfig_DEFAULT NULL
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_PowerConfig_FIELDLIST(X, a) \
|
2023-01-18 13:42:53 +00:00
|
|
|
X(a, STATIC, SINGULAR, BOOL, is_power_saving, 1) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, on_battery_shutdown_after_secs, 2) \
|
|
|
|
X(a, STATIC, SINGULAR, FLOAT, adc_multiplier_override, 3) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, wait_bluetooth_secs, 4) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, sds_secs, 6) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, ls_secs, 7) \
|
2023-05-28 14:44:47 +00:00
|
|
|
X(a, STATIC, SINGULAR, UINT32, min_wake_secs, 8) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, device_battery_ina_address, 9)
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_PowerConfig_CALLBACK NULL
|
|
|
|
#define meshtastic_Config_PowerConfig_DEFAULT NULL
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_NetworkConfig_FIELDLIST(X, a) \
|
2023-01-18 13:42:53 +00:00
|
|
|
X(a, STATIC, SINGULAR, BOOL, wifi_enabled, 1) \
|
|
|
|
X(a, STATIC, SINGULAR, STRING, wifi_ssid, 3) \
|
|
|
|
X(a, STATIC, SINGULAR, STRING, wifi_psk, 4) \
|
|
|
|
X(a, STATIC, SINGULAR, STRING, ntp_server, 5) \
|
|
|
|
X(a, STATIC, SINGULAR, BOOL, eth_enabled, 6) \
|
|
|
|
X(a, STATIC, SINGULAR, UENUM, address_mode, 7) \
|
2023-01-18 21:12:03 +00:00
|
|
|
X(a, STATIC, OPTIONAL, MESSAGE, ipv4_config, 8) \
|
|
|
|
X(a, STATIC, SINGULAR, STRING, rsyslog_server, 9)
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_NetworkConfig_CALLBACK NULL
|
|
|
|
#define meshtastic_Config_NetworkConfig_DEFAULT NULL
|
|
|
|
#define meshtastic_Config_NetworkConfig_ipv4_config_MSGTYPE meshtastic_Config_NetworkConfig_IpV4Config
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_NetworkConfig_IpV4Config_FIELDLIST(X, a) \
|
2023-01-18 13:42:53 +00:00
|
|
|
X(a, STATIC, SINGULAR, FIXED32, ip, 1) \
|
|
|
|
X(a, STATIC, SINGULAR, FIXED32, gateway, 2) \
|
|
|
|
X(a, STATIC, SINGULAR, FIXED32, subnet, 3) \
|
|
|
|
X(a, STATIC, SINGULAR, FIXED32, dns, 4)
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_NetworkConfig_IpV4Config_CALLBACK NULL
|
|
|
|
#define meshtastic_Config_NetworkConfig_IpV4Config_DEFAULT NULL
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_DisplayConfig_FIELDLIST(X, a) \
|
2023-01-18 13:42:53 +00:00
|
|
|
X(a, STATIC, SINGULAR, UINT32, screen_on_secs, 1) \
|
|
|
|
X(a, STATIC, SINGULAR, UENUM, gps_format, 2) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, auto_screen_carousel_secs, 3) \
|
|
|
|
X(a, STATIC, SINGULAR, BOOL, compass_north_top, 4) \
|
|
|
|
X(a, STATIC, SINGULAR, BOOL, flip_screen, 5) \
|
|
|
|
X(a, STATIC, SINGULAR, UENUM, units, 6) \
|
|
|
|
X(a, STATIC, SINGULAR, UENUM, oled, 7) \
|
|
|
|
X(a, STATIC, SINGULAR, UENUM, displaymode, 8) \
|
2023-03-23 16:32:04 +00:00
|
|
|
X(a, STATIC, SINGULAR, BOOL, heading_bold, 9) \
|
|
|
|
X(a, STATIC, SINGULAR, BOOL, wake_on_tap_or_motion, 10)
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_DisplayConfig_CALLBACK NULL
|
|
|
|
#define meshtastic_Config_DisplayConfig_DEFAULT NULL
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_LoRaConfig_FIELDLIST(X, a) \
|
2023-01-18 13:42:53 +00:00
|
|
|
X(a, STATIC, SINGULAR, BOOL, use_preset, 1) \
|
|
|
|
X(a, STATIC, SINGULAR, UENUM, modem_preset, 2) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, bandwidth, 3) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, spread_factor, 4) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, coding_rate, 5) \
|
|
|
|
X(a, STATIC, SINGULAR, FLOAT, frequency_offset, 6) \
|
|
|
|
X(a, STATIC, SINGULAR, UENUM, region, 7) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, hop_limit, 8) \
|
|
|
|
X(a, STATIC, SINGULAR, BOOL, tx_enabled, 9) \
|
|
|
|
X(a, STATIC, SINGULAR, INT32, tx_power, 10) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, channel_num, 11) \
|
|
|
|
X(a, STATIC, SINGULAR, BOOL, override_duty_cycle, 12) \
|
2023-01-24 18:16:01 +00:00
|
|
|
X(a, STATIC, SINGULAR, BOOL, sx126x_rx_boosted_gain, 13) \
|
2023-01-30 14:55:58 +00:00
|
|
|
X(a, STATIC, SINGULAR, FLOAT, override_frequency, 14) \
|
2023-01-18 13:42:53 +00:00
|
|
|
X(a, STATIC, REPEATED, UINT32, ignore_incoming, 103)
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_LoRaConfig_CALLBACK NULL
|
|
|
|
#define meshtastic_Config_LoRaConfig_DEFAULT NULL
|
2023-01-18 13:42:53 +00:00
|
|
|
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_BluetoothConfig_FIELDLIST(X, a) \
|
2023-01-18 13:42:53 +00:00
|
|
|
X(a, STATIC, SINGULAR, BOOL, enabled, 1) \
|
|
|
|
X(a, STATIC, SINGULAR, UENUM, mode, 2) \
|
|
|
|
X(a, STATIC, SINGULAR, UINT32, fixed_pin, 3)
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_BluetoothConfig_CALLBACK NULL
|
|
|
|
#define meshtastic_Config_BluetoothConfig_DEFAULT NULL
|
|
|
|
|
|
|
|
extern const pb_msgdesc_t meshtastic_Config_msg;
|
|
|
|
extern const pb_msgdesc_t meshtastic_Config_DeviceConfig_msg;
|
|
|
|
extern const pb_msgdesc_t meshtastic_Config_PositionConfig_msg;
|
|
|
|
extern const pb_msgdesc_t meshtastic_Config_PowerConfig_msg;
|
|
|
|
extern const pb_msgdesc_t meshtastic_Config_NetworkConfig_msg;
|
|
|
|
extern const pb_msgdesc_t meshtastic_Config_NetworkConfig_IpV4Config_msg;
|
|
|
|
extern const pb_msgdesc_t meshtastic_Config_DisplayConfig_msg;
|
|
|
|
extern const pb_msgdesc_t meshtastic_Config_LoRaConfig_msg;
|
|
|
|
extern const pb_msgdesc_t meshtastic_Config_BluetoothConfig_msg;
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Defines for backwards compatibility with code written before nanopb-0.4.0 */
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_fields &meshtastic_Config_msg
|
|
|
|
#define meshtastic_Config_DeviceConfig_fields &meshtastic_Config_DeviceConfig_msg
|
|
|
|
#define meshtastic_Config_PositionConfig_fields &meshtastic_Config_PositionConfig_msg
|
|
|
|
#define meshtastic_Config_PowerConfig_fields &meshtastic_Config_PowerConfig_msg
|
|
|
|
#define meshtastic_Config_NetworkConfig_fields &meshtastic_Config_NetworkConfig_msg
|
|
|
|
#define meshtastic_Config_NetworkConfig_IpV4Config_fields &meshtastic_Config_NetworkConfig_IpV4Config_msg
|
|
|
|
#define meshtastic_Config_DisplayConfig_fields &meshtastic_Config_DisplayConfig_msg
|
|
|
|
#define meshtastic_Config_LoRaConfig_fields &meshtastic_Config_LoRaConfig_msg
|
|
|
|
#define meshtastic_Config_BluetoothConfig_fields &meshtastic_Config_BluetoothConfig_msg
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
/* Maximum encoded size of messages (where known) */
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_BluetoothConfig_size 10
|
2023-05-12 13:38:30 +00:00
|
|
|
#define meshtastic_Config_DeviceConfig_size 30
|
2023-03-23 16:32:04 +00:00
|
|
|
#define meshtastic_Config_DisplayConfig_size 28
|
2023-01-30 14:55:58 +00:00
|
|
|
#define meshtastic_Config_LoRaConfig_size 77
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_NetworkConfig_IpV4Config_size 20
|
|
|
|
#define meshtastic_Config_NetworkConfig_size 195
|
2023-03-27 19:09:22 +00:00
|
|
|
#define meshtastic_Config_PositionConfig_size 54
|
2023-08-12 14:29:19 +00:00
|
|
|
#define meshtastic_Config_PowerConfig_size 40
|
2023-01-21 17:22:19 +00:00
|
|
|
#define meshtastic_Config_size 198
|
2023-01-18 13:42:53 +00:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
} /* extern "C" */
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|