Files

485 lines
75 KiB
Python

# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: meshtastic/protobuf/config.proto
"""Generated protocol buffer code."""
from google.protobuf.internal import builder as _builder
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
from google.protobuf import symbol_database as _symbol_database
# @@protoc_insertion_point(imports)
_sym_db = _symbol_database.Default()
from meshtastic.protobuf import device_ui_pb2 as meshtastic_dot_protobuf_dot_device__ui__pb2
from meshtastic.protobuf import field_metadata_pb2 as meshtastic_dot_protobuf_dot_field__metadata__pb2
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n meshtastic/protobuf/config.proto\x12\x13meshtastic.protobuf\x1a#meshtastic/protobuf/device_ui.proto\x1a(meshtastic/protobuf/field_metadata.proto\"\x93\x86\x01\n\x06\x43onfig\x12:\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32(.meshtastic.protobuf.Config.DeviceConfigH\x00\x12>\n\x08position\x18\x02 \x01(\x0b\x32*.meshtastic.protobuf.Config.PositionConfigH\x00\x12\x38\n\x05power\x18\x03 \x01(\x0b\x32\'.meshtastic.protobuf.Config.PowerConfigH\x00\x12<\n\x07network\x18\x04 \x01(\x0b\x32).meshtastic.protobuf.Config.NetworkConfigH\x00\x12<\n\x07\x64isplay\x18\x05 \x01(\x0b\x32).meshtastic.protobuf.Config.DisplayConfigH\x00\x12\x36\n\x04lora\x18\x06 \x01(\x0b\x32&.meshtastic.protobuf.Config.LoRaConfigH\x00\x12@\n\tbluetooth\x18\x07 \x01(\x0b\x32+.meshtastic.protobuf.Config.BluetoothConfigH\x00\x12>\n\x08security\x18\x08 \x01(\x0b\x32*.meshtastic.protobuf.Config.SecurityConfigH\x00\x12\x42\n\nsessionkey\x18\t \x01(\x0b\x32,.meshtastic.protobuf.Config.SessionkeyConfigH\x00\x12\x38\n\tdevice_ui\x18\n \x01(\x0b\x32#.meshtastic.protobuf.DeviceUIConfigH\x00\x1a\x80\x1f\n\x0c\x44\x65viceConfig\x12N\n\x04role\x18\x01 \x01(\x0e\x32-.meshtastic.protobuf.Config.DeviceConfig.RoleB\x11\xca\xf3\x18\r:\x0b\x44\x65vice Role\x12\x1a\n\x0eserial_enabled\x18\x02 \x01(\x08\x42\x02\x18\x01\x12u\n\x0b\x62utton_gpio\x18\x04 \x01(\rB`\xca\xf3\x18\\:\x0b\x42utton GPIOBMGPIO pin for the user button, can be remapped on boards with multiple buttons\x12\x43\n\x0b\x62uzzer_gpio\x18\x05 \x01(\rB.\xca\xf3\x18*:\x0b\x42uzzer GPIOB\x1bGPIO pin for the PWM buzzer\x12j\n\x10rebroadcast_mode\x18\x06 \x01(\x0e\x32\x38.meshtastic.protobuf.Config.DeviceConfig.RebroadcastModeB\x16\xca\xf3\x18\x12:\x10Rebroadcast Mode\x12\x9a\x01\n\x18node_info_broadcast_secs\x18\x07 \x01(\rBx\xca\xf3\x18t\x19\x00\x00\x00\x00\x00 \xac@*\x01s:\x1cNode Info Broadcast IntervalBHHow often node information is sent. Defaults to 3 hours, minimum 1 hour.\x12\x84\x01\n\x1a\x64ouble_tap_as_button_press\x18\x08 \x01(\x08\x42`\xca\xf3\x18\\:\x14\x44ouble Tap as ButtonBDTreat double tap on supported accelerometers as a user button press.\x12\x16\n\nis_managed\x18\t \x01(\x08\x42\x02\x18\x01\x12i\n\x14\x64isable_triple_click\x18\n \x01(\x08\x42K\xca\xf3\x18G:\x14\x44isable Triple ClickB/Disables the user button triple-press shortcut.\x12@\n\x05tzdef\x18\x0b \x01(\tB1\xca\xf3\x18-:\tTime ZoneB POSIX timezone definition string\x12\xc5\x01\n\x16led_heartbeat_disabled\x18\x0c \x01(\x08\x42\xa4\x01\xca\xf3\x18\x9f\x01:\x15\x44isable LED HeartbeatB\x85\x01Turns off the blinking LED on the device. On most devices this is one of up to 4 LEDs; the charger and GPS LEDs are not controllable.\x12U\n\x0b\x62uzzer_mode\x18\r \x01(\x0e\x32\x33.meshtastic.protobuf.Config.DeviceConfig.BuzzerModeB\x0b\xca\xf3\x18\x07R\x05\x32.7.0\"\xef\x0b\n\x04Role\x12G\n\x06\x43LIENT\x10\x00\x1a;\xca\xf3\x18\x37:\x06\x43lientB-App connected or standalone messaging device.\x12\\\n\x0b\x43LIENT_MUTE\x10\x01\x1aK\xca\xf3\x18G:\x0b\x43lient MuteB8Device that does not forward packets from other devices.\x12\xae\x01\n\x06ROUTER\x10\x02\x1a\xa1\x01\xca\xf3\x18\x9c\x01:\x06RouterB\x91\x01Infrastructure node on a tower or mountain top only. Not to be used for roofs or mobile nodes. Needs exceptional coverage. Visible in Nodes list.\x12(\n\rROUTER_CLIENT\x10\x03\x1a\x15\x08\x01\xca\xf3\x18\x0f:\rRouter Client\x12\xb3\x01\n\x08REPEATER\x10\x04\x1a\xa4\x01\x08\x01\xca\xf3\x18\x9d\x01:\x08RepeaterB\x90\x01\x44\x65precated infrastructure role that creates gaps in the mesh rebroadcast chain. Switch this node to a Router-based role (Router or Router Late).\x12H\n\x07TRACKER\x10\x05\x1a;\xca\xf3\x18\x37:\x07TrackerB,Broadcasts GPS position packets as priority.\x12\x43\n\x06SENSOR\x10\x06\x1a\x37\xca\xf3\x18\x33:\x06SensorB)Broadcasts telemetry packets as priority.\x12X\n\x03TAK\x10\x07\x1aO\xca\xf3\x18K:\x03TAKBDOptimized for ATAK system communication, reduces routine broadcasts.\x12k\n\rCLIENT_HIDDEN\x10\x08\x1aX\xca\xf3\x18T:\rClient HiddenBCDevice that only broadcasts as needed for stealth or power savings.\x12\x85\x01\n\x0eLOST_AND_FOUND\x10\t\x1aq\xca\xf3\x18m:\x0eLost and FoundB[Broadcasts location as message to default channel regularly to assist with device recovery.\x12h\n\x0bTAK_TRACKER\x10\n\x1aW\xca\xf3\x18S:\x0bTAK TrackerBDEnables automatic TAK PLI broadcasts and reduces routine broadcasts.\x12\xbc\x01\n\x0bROUTER_LATE\x10\x0b\x1a\xaa\x01\xca\xf3\x18\xa5\x01:\x0bRouter LateB\x95\x01Infrastructure node that always rebroadcasts packets once but only after all other modes. Visible in Nodes list. Not a good choice for rooftop nodes.\x12\xa7\x01\n\x0b\x43LIENT_BASE\x10\x0c\x1a\x95\x01\xca\xf3\x18\x90\x01:\x0b\x43lient BaseB\x80\x01Rooftop or attic node that rebroadcasts like Router Late for packets from or to favorited nodes, and like Client for all others.\"\xf6\x08\n\x0fRebroadcastMode\x12\x8c\x01\n\x03\x41LL\x10\x00\x1a\x82\x01\xca\xf3\x18~:\x03\x41llBwRebroadcast any observed message, if it was on our private channel or from another channel with the same LoRa settings.\x12\x9a\x01\n\x11\x41LL_SKIP_DECODING\x10\x01\x1a\x82\x01\xca\xf3\x18~:\x11\x41ll Skip DecodingBiBehaves as All. Skipping packet decoding applied only to the Repeater role, which is no longer supported.\x12\xcf\x01\n\nLOCAL_ONLY\x10\x02\x1a\xbe\x01\xca\xf3\x18\xb9\x01:\nLocal OnlyB\xaa\x01Ignores observed messages from foreign meshes that are open or those which it cannot decrypt. Only rebroadcasts messages on the node\'s local primary / secondary channels.\x12\xca\x01\n\nKNOWN_ONLY\x10\x03\x1a\xb9\x01\xca\xf3\x18\xb4\x01:\nKnown OnlyB\xa5\x01Ignores observed messages from foreign meshes like Local Only, but takes it a step further by also ignoring messages from nodes not already in the node\'s known list.\x12|\n\x04NONE\x10\x04\x1ar\xca\xf3\x18n:\x04NoneBfInhibits all rebroadcasts, like the Client Mute role. Not allowed on the Router and Router Late roles.\x12\x99\x02\n\x12\x43ORE_PORTNUMS_ONLY\x10\x05\x1a\x80\x02\xca\xf3\x18\xfb\x01:\x12\x43ore Portnums OnlyB\xe4\x01Ignores packets on non-core portnums such as Range Test, PAX Counter and ATAK, and does not rebroadcast them. Core portnums include Text, Position, NodeInfo, Telemetry, Routing, Admin, Waypoint, Traceroute and Store and Forward.\"i\n\nBuzzerMode\x12\x0f\n\x0b\x41LL_ENABLED\x10\x00\x12\x0c\n\x08\x44ISABLED\x10\x01\x12\x16\n\x12NOTIFICATIONS_ONLY\x10\x02\x12\x0f\n\x0bSYSTEM_ONLY\x10\x03\x12\x13\n\x0f\x44IRECT_MSG_ONLY\x10\x04\x1a\xa3\x0f\n\x0ePositionConfig\x12y\n\x17position_broadcast_secs\x18\x01 \x01(\rBX\xca\xf3\x18T*\x01s:\x12\x42roadcast IntervalB;The longest a node will go without broadcasting a position.\x12>\n position_broadcast_smart_enabled\x18\x02 \x01(\x08\x42\x14\xca\xf3\x18\x10:\x0eSmart Position\x12\xb2\x01\n\x0e\x66ixed_position\x18\x03 \x01(\x08\x42\x99\x01\xca\xf3\x18\x94\x01:\x0e\x46ixed PositionB\x81\x01The last known latitude, longitude and altitude are broadcast over the mesh on the position interval, rather than a live GPS fix.\x12\x17\n\x0bgps_enabled\x18\x04 \x01(\x08\x42\x02\x18\x01\x12^\n\x13gps_update_interval\x18\x05 \x01(\rBA\xca\xf3\x18=*\x01s:\x0fUpdate IntervalB\'How often to try to get a GPS position.\x12\x1c\n\x10gps_attempt_time\x18\x06 \x01(\rB\x02\x18\x01\x12j\n\x0eposition_flags\x18\x07 \x01(\rBR\xca\xf3\x18N:\x0ePosition FlagsB<Optional fields to include when assembling position messages\x12>\n\x07rx_gpio\x18\x08 \x01(\rB-\xca\xf3\x18)\x08\x01:\x10GPS Receive GPIOB\x13GPIO pin for GPS RX\x12?\n\x07tx_gpio\x18\t \x01(\rB.\xca\xf3\x18*\x08\x01:\x11GPS Transmit GPIOB\x13GPIO pin for GPS TX\x12\x94\x01\n broadcast_smart_minimum_distance\x18\n \x01(\rBj\xca\xf3\x18\x66*\x01m:\x10Minimum DistanceBOThe minimum change in distance before a smart position broadcast is considered.\x12\xa0\x01\n%broadcast_smart_minimum_interval_secs\x18\x0b \x01(\rBq\xca\xf3\x18m*\x01s:\x10Minimum IntervalBVThe shortest interval between position updates once the minimum distance has been met.\x12\x45\n\x0bgps_en_gpio\x18\x0c \x01(\rB0\xca\xf3\x18,\x08\x01:\x0fGPS Enable GPIOB\x17GPIO pin for GPS enable\x12T\n\x08gps_mode\x18\r \x01(\x0e\x32\x32.meshtastic.protobuf.Config.PositionConfig.GpsModeB\x0e\xca\xf3\x18\n:\x08GPS Mode\"\xdc\x04\n\rPositionFlags\x12\t\n\x05UNSET\x10\x00\x12\x63\n\x08\x41LTITUDE\x10\x01\x1aU\xca\xf3\x18Q:\x08\x41ltitudeBEInclude an altitude value in position reports, when one is available.\x12\x32\n\x0c\x41LTITUDE_MSL\x10\x02\x1a \xca\xf3\x18\x1c:\x1a\x41ltitude is Mean Sea Level\x12\x39\n\x12GEOIDAL_SEPARATION\x10\x04\x1a!\xca\xf3\x18\x1d:\x1b\x41ltitude Geoidal Separation\x12U\n\x03\x44OP\x10\x08\x1aL\xca\xf3\x18H:\x03\x44OPBAInclude the dilution of precision value. PDOP is used by default.\x12`\n\x05HVDOP\x10\x10\x1aU\xca\xf3\x18Q:\x0bHDOP / VDOPBBIf DOP is set, send separate HDOP and VDOP values instead of PDOP.\x12)\n\tSATINVIEW\x10 \x1a\x1a\xca\xf3\x18\x16:\x14Number of satellites\x12!\n\x06SEQ_NO\x10@\x1a\x15\xca\xf3\x18\x11:\x0fSequence number\x12\x1f\n\tTIMESTAMP\x10\x80\x01\x1a\x0f\xca\xf3\x18\x0b:\tTimestamp\x12#\n\x07HEADING\x10\x80\x02\x1a\x15\xca\xf3\x18\x11:\x0fVehicle heading\x12\x1f\n\x05SPEED\x10\x80\x04\x1a\x13\xca\xf3\x18\x0f:\rVehicle speed\"g\n\x07GpsMode\x12\x1c\n\x08\x44ISABLED\x10\x00\x1a\x0e\xca\xf3\x18\n:\x08\x44isabled\x12\x1a\n\x07\x45NABLED\x10\x01\x1a\r\xca\xf3\x18\t:\x07\x45nabled\x12\"\n\x0bNOT_PRESENT\x10\x02\x1a\x11\xca\xf3\x18\r:\x0bNot Present\x1a\xe5\x05\n\x0bPowerConfig\x12\x95\x02\n\x0fis_power_saving\x18\x01 \x01(\x08\x42\xfb\x01\xca\xf3\x18\xf6\x01:\x0cPower SavingB\xe5\x01Will sleep everything as much as possible, for the Tracker and Sensor roles this also includes the LoRa radio. Don\'t use this setting if you want to use your device with the phone apps or are using a device without a user button.\x12\xcd\x01\n\x1eon_battery_shutdown_after_secs\x18\x02 \x01(\rB\xa4\x01\xca\xf3\x18\x9f\x01*\x01s:\x16Shutdown on Power LossB\x81\x01How long after external power is removed before the device powers off. Zero to disable; values under 30 seconds are raised to 30.\x12\x33\n\x17\x61\x64\x63_multiplier_override\x18\x03 \x01(\x02\x42\x12\xca\xf3\x18\x0e:\x0c\x41\x44\x43 Override\x12\x41\n\x13wait_bluetooth_secs\x18\x04 \x01(\rB$\xca\xf3\x18 *\x01s:\x1bWait for Bluetooth Duration\x12\x10\n\x08sds_secs\x18\x06 \x01(\r\x12\x0f\n\x07ls_secs\x18\x07 \x01(\r\x12\x15\n\rmin_wake_secs\x18\x08 \x01(\r\x12\"\n\x1a\x64\x65vice_battery_ina_address\x18\t \x01(\r\x12\x18\n\x10powermon_enables\x18 \x01(\x04\x1a\xe7\x08\n\rNetworkConfig\x12i\n\x0cwifi_enabled\x18\x01 \x01(\x08\x42S\xca\xf3\x18O:\x0cWiFi EnabledB?Enabling WiFi will disable the Bluetooth connection to the app.\x12>\n\twifi_ssid\x18\x03 \x01(\tB+\xca\xf3\x18\':\x04SSIDB\x1fWiFi network name to connect to\x12\x42\n\x08wifi_psk\x18\x04 \x01(\tB0\xca\xf3\x18,:\x08PasswordB WiFi password for authentication\x12]\n\nntp_server\x18\x05 \x01(\tBI\xca\xf3\x18\x45:\nNTP ServerB7NTP server address. Defaults to meshtastic.pool.ntp.org\x12\x81\x01\n\x0b\x65th_enabled\x18\x06 \x01(\x08\x42l\xca\xf3\x18h:\x10\x45thernet EnabledBTOn ESP32 boards, enabling Ethernet will disable the Bluetooth connection to the app.\x12_\n\x0c\x61\x64\x64ress_mode\x18\x07 \x01(\x0e\x32\x35.meshtastic.protobuf.Config.NetworkConfig.AddressModeB\x12\xca\xf3\x18\x0e:\x0c\x41\x64\x64ress Mode\x12I\n\x0bipv4_config\x18\x08 \x01(\x0b\x32\x34.meshtastic.protobuf.Config.NetworkConfig.IpV4Config\x12,\n\x0ersyslog_server\x18\t \x01(\tB\x14\xca\xf3\x18\x10:\x0eRsyslog Server\x12v\n\x11\x65nabled_protocols\x18\n \x01(\rB[\xca\xf3\x18W:\x11\x45nabled ProtocolsB;Enable broadcasting packets via UDP over the local network.R\x05\x32.6.0\x12\"\n\x0cipv6_enabled\x18\x0b \x01(\x08\x42\x0c\xca\xf3\x18\x08R\x06\x32.7.16\x1ax\n\nIpV4Config\x12\x14\n\x02ip\x18\x01 \x01(\x07\x42\x08\xca\xf3\x18\x04:\x02IP\x12\x1e\n\x07gateway\x18\x02 \x01(\x07\x42\r\xca\xf3\x18\t:\x07Gateway\x12\x1c\n\x06subnet\x18\x03 \x01(\x07\x42\x0c\xca\xf3\x18\x08:\x06Subnet\x12\x16\n\x03\x64ns\x18\x04 \x01(\x07\x42\t\xca\xf3\x18\x05:\x03\x44NS\"=\n\x0b\x41\x64\x64ressMode\x12\x14\n\x04\x44HCP\x10\x00\x1a\n\xca\xf3\x18\x06:\x04\x44HCP\x12\x18\n\x06STATIC\x10\x01\x1a\x0c\xca\xf3\x18\x08:\x06Static\"U\n\rProtocolFlags\x12\x1c\n\x0cNO_BROADCAST\x10\x00\x1a\n\xca\xf3\x18\x06:\x04None\x12&\n\rUDP_BROADCAST\x10\x01\x1a\x13\xca\xf3\x18\x0f:\rUDP Broadcast\x1a\xb4\x13\n\rDisplayConfig\x12\x89\x01\n\x0escreen_on_secs\x18\x01 \x01(\rBq\xca\xf3\x18m*\x01s:\rScreen on forBYHow long the screen remains on after the user button is pressed or messages are received.\x12k\n\ngps_format\x18\x02 \x01(\x0e\x32G.meshtastic.protobuf.Config.DisplayConfig.DeprecatedGpsCoordinateFormatB\x0e\x18\x01\xca\xf3\x18\x08Z\x06\x32.7.10\x12\x8e\x01\n\x19\x61uto_screen_carousel_secs\x18\x03 \x01(\rBk\xca\xf3\x18g*\x01s:\x11\x43\x61rousel IntervalBOAutomatically moves to the next screen page, like a carousel, on this interval.\x12\x8e\x01\n\x11\x63ompass_north_top\x18\x04 \x01(\x08\x42s\x18\x01\xca\xf3\x18m:\x12\x41lways point northBPThe compass heading on the screen outside of the circle will always point north.Z\x05\x32.7.1\x12>\n\x0b\x66lip_screen\x18\x05 \x01(\x08\x42)\xca\xf3\x18%:\x0b\x46lip ScreenB\x16\x46lip screen vertically\x12}\n\x05units\x18\x06 \x01(\x0e\x32\x36.meshtastic.protobuf.Config.DisplayConfig.DisplayUnitsB6\xca\xf3\x18\x32:\rDisplay UnitsB!Units shown on the device screen.\x12|\n\x04oled\x18\x07 \x01(\x0e\x32\x32.meshtastic.protobuf.Config.DisplayConfig.OledTypeB:\xca\xf3\x18\x36:\tOLED TypeB)Override automatic OLED screen detection.\x12\x7f\n\x0b\x64isplaymode\x18\x08 \x01(\x0e\x32\x35.meshtastic.protobuf.Config.DisplayConfig.DisplayModeB3\xca\xf3\x18/:\x0c\x44isplay ModeB\x1fOverride default screen layout.\x12N\n\x0cheading_bold\x18\t \x01(\x08\x42\x38\xca\xf3\x18\x34:\x0c\x42old HeadingB$Bold the heading text on the screen.\x12z\n\x15wake_on_tap_or_motion\x18\n \x01(\x08\x42[\xca\xf3\x18W:\x1cWake Screen on tap or motionB7Requires that there be an accelerometer on your device.\x12\xc0\x01\n\x13\x63ompass_orientation\x18\x0b \x01(\x0e\x32<.meshtastic.protobuf.Config.DisplayConfig.CompassOrientationBe\xca\xf3\x18\x61:\x13\x43ompass OrientationBJIndicates how to rotate or invert the compass output for accurate display.\x12\\\n\ruse_12h_clock\x18\x0c \x01(\x08\x42\x45\xca\xf3\x18\x41:\r12 Hour ClockB(Sets the screen clock format to 12-hour.R\x06\x32.5.22\x12(\n\x12use_long_node_name\x18\r \x01(\x08\x42\x0c\xca\xf3\x18\x08R\x06\x32.7.13\x12,\n\x16\x65nable_message_bubbles\x18\x0e \x01(\x08\x42\x0c\xca\xf3\x18\x08R\x06\x32.7.19\"+\n\x1d\x44\x65precatedGpsCoordinateFormat\x12\n\n\x06UNUSED\x10\x00\"F\n\x0c\x44isplayUnits\x12\x18\n\x06METRIC\x10\x00\x1a\x0c\xca\xf3\x18\x08:\x06Metric\x12\x1c\n\x08IMPERIAL\x10\x01\x1a\x0e\xca\xf3\x18\n:\x08Imperial\"\xf2\x01\n\x08OledType\x12)\n\tOLED_AUTO\x10\x00\x1a\x1a\xca\xf3\x18\x16:\x14\x44\x65tect Automatically\x12\x1f\n\x0cOLED_SSD1306\x10\x01\x1a\r\xca\xf3\x18\t:\x07SSD1306\x12\x1d\n\x0bOLED_SH1106\x10\x02\x1a\x0c\xca\xf3\x18\x08:\x06SH1106\x12\x1d\n\x0bOLED_SH1107\x10\x03\x1a\x0c\xca\xf3\x18\x08:\x06SH1107\x12-\n\x13OLED_SH1107_128_128\x10\x04\x1a\x14\xca\xf3\x18\x10:\x0eSH1107 128x128\x12-\n\x13OLED_SH1107_ROTATED\x10\x05\x1a\x14\xca\xf3\x18\x10:\x0eSH1107 Rotated\"\xd7\x01\n\x0b\x44isplayMode\x12/\n\x07\x44\x45\x46\x41ULT\x10\x00\x1a\"\xca\xf3\x18\x1e:\x1c\x44\x65\x66\x61ult 128x64 screen layout\x12\x32\n\x08TWOCOLOR\x10\x01\x1a$\xca\xf3\x18 :\x1eOptimized for 2 color displays\x12\x39\n\x08INVERTED\x10\x02\x1a+\xca\xf3\x18\':%Inverted top bar for 2 color displays\x12(\n\x05\x43OLOR\x10\x03\x1a\x1d\xca\xf3\x18\x19:\x17TFT Full Color Displays\"\xc0\x02\n\x12\x43ompassOrientation\x12\x18\n\tDEGREES_0\x10\x00\x1a\t\xca\xf3\x18\x05:\x03\x30\xc2\xb0\x12\x1a\n\nDEGREES_90\x10\x01\x1a\n\xca\xf3\x18\x06:\x04\x39\x30\xc2\xb0\x12\x1c\n\x0b\x44\x45GREES_180\x10\x02\x1a\x0b\xca\xf3\x18\x07:\x05\x31\x38\x30\xc2\xb0\x12\x1c\n\x0b\x44\x45GREES_270\x10\x03\x1a\x0b\xca\xf3\x18\x07:\x05\x32\x37\x30\xc2\xb0\x12*\n\x12\x44\x45GREES_0_INVERTED\x10\x04\x1a\x12\xca\xf3\x18\x0e:\x0c\x30\xc2\xb0 Inverted\x12,\n\x13\x44\x45GREES_90_INVERTED\x10\x05\x1a\x13\xca\xf3\x18\x0f:\r90\xc2\xb0 Inverted\x12.\n\x14\x44\x45GREES_180_INVERTED\x10\x06\x1a\x14\xca\xf3\x18\x10:\x0e\x31\x38\x30\xc2\xb0 Inverted\x12.\n\x14\x44\x45GREES_270_INVERTED\x10\x07\x1a\x14\xca\xf3\x18\x10:\x0e\x32\x37\x30\xc2\xb0 Inverted\x1a\x98!\n\nLoRaConfig\x12\x80\x01\n\nuse_preset\x18\x01 \x01(\x08\x42l\xca\xf3\x18h:\nUse PresetBZUse the modem preset settings instead of a manual bandwidth, spread factor and coding rate\x12W\n\x0cmodem_preset\x18\x02 \x01(\x0e\x32\x32.meshtastic.protobuf.Config.LoRaConfig.ModemPresetB\r\xca\xf3\x18\t:\x07Presets\x12\'\n\tbandwidth\x18\x03 \x01(\rB\x14\xca\xf3\x18\x10*\x03kHz:\tBandwidth\x12u\n\rspread_factor\x18\x04 \x01(\rB^\xca\xf3\x18Z\x19\x00\x00\x00\x00\x00\x00\x14@!\x00\x00\x00\x00\x00\x00(@:\rSpread FactorB7Number of chirps per symbol, as 2 raised to this value.\x12\xa3\x01\n\x0b\x63oding_rate\x18\x05 \x01(\rB\x8d\x01\xca\xf3\x18\x88\x01:\x0b\x43oding RateByError-correction redundancy, as the denominator of 4/n. Higher values survive noisier links but make every packet longer.\x12\x18\n\x10\x66requency_offset\x18\x06 \x01(\x02\x12\x80\x01\n\x06region\x18\x07 \x01(\x0e\x32\x31.meshtastic.protobuf.Config.LoRaConfig.RegionCodeB=\xca\xf3\x18\x39:\x06RegionB/The region where you will be using your radios.\x12\x9d\x01\n\thop_limit\x18\x08 \x01(\rB\x89\x01\xca\xf3\x18\x84\x01\x19\x00\x00\x00\x00\x00\x00\x00\x00!\x00\x00\x00\x00\x00\x00\x1c@:\tHop LimitBIHow many times a message may be repeated before it stops being forwarded.J\x1ahops|ttl|range|rebroadcast\x12\x84\x01\n\ntx_enabled\x18\t \x01(\x08\x42p\xca\xf3\x18l:\x10Transmit EnabledBXAllow the LoRa radio to transmit. Turn off while hot-swapping antennas or bench testing.\x12\xce\x01\n\x08tx_power\x18\n \x01(\x05\x42\xbb\x01\xca\xf3\x18\xb6\x01\x19\x00\x00\x00\x00\x00\x00\x00\x00!\x00\x00\x00\x00\x00\x00\x42@*\x03\x64\x42m:\x0eTransmit PowerBxRadio transmit power. Leave at zero to use the highest level legal for the region, which is what most radios should use.J\x13tx|power|dbm|output\x12\xd8\x01\n\x0b\x63hannel_num\x18\x0b \x01(\rB\xc2\x01\xca\xf3\x18\xbd\x01:\x0e\x46requency SlotB\xaa\x01Your node\'s operating frequency is calculated based on the region, modem preset, and this field. When 0, the region picks the slot, usually from the primary channel name.\x12\x36\n\x13override_duty_cycle\x18\x0c \x01(\x08\x42\x19\xca\xf3\x18\x15:\x13Override Duty Cycle\x12j\n\x16sx126x_rx_boosted_gain\x18\r \x01(\x08\x42J\xca\xf3\x18\x46:\x0fRX Boosted GainB3Enable RX boosted gain mode on SX126x-based radios.\x12\x39\n\x12override_frequency\x18\x0e \x01(\x02\x42\x1d\xca\xf3\x18\x19*\x03MHz:\x12\x46requency Override\x12.\n\x0fpa_fan_disabled\x18\x0f \x01(\x08\x42\x15\xca\xf3\x18\x11:\x0fPA Fan Disabled\x12.\n\x0fignore_incoming\x18g \x03(\rB\x15\xca\xf3\x18\x11:\x0fIgnore Incoming\x12y\n\x0bignore_mqtt\x18h \x01(\x08\x42\x64\xca\xf3\x18`:\x0bIgnore MQTTBQIgnore packets received over LoRa that travelled via MQTT anywhere on their path.\x12+\n\x11\x63onfig_ok_to_mqtt\x18i \x01(\x08\x42\x10\xca\xf3\x18\x0c:\nOK to MQTT\x12W\n\x0c\x66\x65m_lna_mode\x18j \x01(\x0e\x32\x33.meshtastic.protobuf.Config.LoRaConfig.FEM_LNA_ModeB\x0c\xca\xf3\x18\x08R\x06\x32.7.20\x12\x17\n\x0fserial_hal_only\x18k \x01(\x08\"\x86\x0b\n\nRegionCode\x12$\n\x05UNSET\x10\x00\x1a\x19\xca\xf3\x18\x15:\x13Please set a region\x12\x1b\n\x02US\x10\x01\x1a\x13\xca\xf3\x18\x0f:\rUnited States\x12\'\n\x06\x45U_433\x10\x02\x1a\x1b\xca\xf3\x18\x17:\x15\x45uropean Union 433MHz\x12\'\n\x06\x45U_868\x10\x03\x1a\x1b\xca\xf3\x18\x17:\x15\x45uropean Union 868MHz\x12\x13\n\x02\x43N\x10\x04\x1a\x0b\xca\xf3\x18\x07:\x05\x43hina\x12\x13\n\x02JP\x10\x05\x1a\x0b\xca\xf3\x18\x07:\x05Japan\x12&\n\x03\x41NZ\x10\x06\x1a\x1d\xca\xf3\x18\x19:\x17\x41ustralia / New Zealand\x12\x13\n\x02KR\x10\x07\x1a\x0b\xca\xf3\x18\x07:\x05Korea\x12\x14\n\x02TW\x10\x08\x1a\x0c\xca\xf3\x18\x08:\x06Taiwan\x12\x14\n\x02RU\x10\t\x1a\x0c\xca\xf3\x18\x08:\x06Russia\x12\x13\n\x02IN\x10\n\x1a\x0b\xca\xf3\x18\x07:\x05India\x12$\n\x06NZ_865\x10\x0b\x1a\x18\xca\xf3\x18\x14:\x12New Zealand 865MHz\x12\x16\n\x02TH\x10\x0c\x1a\x0e\xca\xf3\x18\n:\x08Thailand\x12\x1a\n\x07LORA_24\x10\r\x1a\r\xca\xf3\x18\t:\x07\x32.4 GHz\x12 \n\x06UA_433\x10\x0e\x1a\x14\xca\xf3\x18\x10:\x0eUkraine 433MHz\x12\"\n\x06UA_868\x10\x0f\x1a\x16\x08\x01\xca\xf3\x18\x10:\x0eUkraine 868MHz\x12!\n\x06MY_433\x10\x10\x1a\x15\xca\xf3\x18\x11:\x0fMalaysia 433MHz\x12!\n\x06MY_919\x10\x11\x1a\x15\xca\xf3\x18\x11:\x0fMalaysia 919MHz\x12\"\n\x06SG_923\x10\x12\x1a\x16\xca\xf3\x18\x12:\x10Singapore 923MHz\x12$\n\x06PH_433\x10\x13\x1a\x18\xca\xf3\x18\x14:\x12Philippines 433MHz\x12$\n\x06PH_868\x10\x14\x1a\x18\xca\xf3\x18\x14:\x12Philippines 868MHz\x12$\n\x06PH_915\x10\x15\x1a\x18\xca\xf3\x18\x14:\x12Philippines 915MHz\x12\x31\n\x07\x41NZ_433\x10\x16\x1a$\xca\xf3\x18 :\x1e\x41ustralia / New Zealand 433MHz\x12#\n\x06KZ_433\x10\x17\x1a\x17\xca\xf3\x18\x13:\x11Kazakhstan 433MHz\x12#\n\x06KZ_863\x10\x18\x1a\x17\xca\xf3\x18\x13:\x11Kazakhstan 863MHz\x12\x1e\n\x06NP_865\x10\x19\x1a\x12\xca\xf3\x18\x0e:\x0cNepal 865MHz\x12\x1f\n\x06\x42R_902\x10\x1a\x1a\x13\xca\xf3\x18\x0f:\rBrazil 902MHz\x12,\n\x07ITU1_2M\x10\x1b\x1a\x1f\xca\xf3\x18\x1b:\x19ITU Region 1 / Amateur 2m\x12,\n\x07ITU2_2M\x10\x1c\x1a\x1f\xca\xf3\x18\x1b:\x19ITU Region 2 / Amateur 2m\x12\'\n\x06\x45U_866\x10\x1d\x1a\x1b\xca\xf3\x18\x17:\x15\x45uropean Union 866MHz\x12\'\n\x06\x45U_874\x10\x1e\x1a\x1b\xca\xf3\x18\x17:\x15\x45uropean Union 874MHz\x12\'\n\x06\x45U_917\x10\x1f\x1a\x1b\xca\xf3\x18\x17:\x15\x45uropean Union 917MHz\x12\x32\n\x08\x45U_N_868\x10 \x1a$\xca\xf3\x18 :\x1e\x45uropean Union 868MHz (Narrow)\x12,\n\x07ITU3_2M\x10!\x1a\x1f\xca\xf3\x18\x1b:\x19ITU Region 3 / Amateur 2m\x12\x30\n\tITU1_70CM\x10\"\x1a!\xca\xf3\x18\x1d:\x1bITU Region 1 / Amateur 70cm\x12\x30\n\tITU2_70CM\x10#\x1a!\xca\xf3\x18\x1d:\x1bITU Region 2 / Amateur 70cm\x12\x30\n\tITU3_70CM\x10$\x1a!\xca\xf3\x18\x1d:\x1bITU Region 3 / Amateur 70cm\x12\x32\n\nITU2_125CM\x10%\x1a\"\xca\xf3\x18\x1e:\x1cITU Region 2 / Amateur 1.25m\"\xd9\x05\n\x0bModemPreset\x12\x38\n\tLONG_FAST\x10\x00\x1a)\xca\xf3\x18%:\x11Long Range - FastJ\x10longfast|default\x12(\n\tLONG_SLOW\x10\x01\x1a\x19\x08\x01\xca\xf3\x18\x13:\x11Long Range - Slow\x12\x32\n\x0eVERY_LONG_SLOW\x10\x02\x1a\x1e\x08\x01\xca\xf3\x18\x18:\x16Very Long Range - Slow\x12*\n\x0bMEDIUM_SLOW\x10\x03\x1a\x19\xca\xf3\x18\x15:\x13Medium Range - Slow\x12*\n\x0bMEDIUM_FAST\x10\x04\x1a\x19\xca\xf3\x18\x15:\x13Medium Range - Fast\x12(\n\nSHORT_SLOW\x10\x05\x1a\x18\xca\xf3\x18\x14:\x12Short Range - Slow\x12(\n\nSHORT_FAST\x10\x06\x1a\x18\xca\xf3\x18\x14:\x12Short Range - Fast\x12.\n\rLONG_MODERATE\x10\x07\x1a\x1b\xca\xf3\x18\x17:\x15Long Range - Moderate\x12*\n\x0bSHORT_TURBO\x10\x08\x1a\x19\xca\xf3\x18\x15:\x13Short Range - Turbo\x12(\n\nLONG_TURBO\x10\t\x1a\x18\xca\xf3\x18\x14:\x12Long Range - Turbo\x12 \n\tLITE_FAST\x10\n\x1a\x11\xca\xf3\x18\r:\x0bLite - Fast\x12 \n\tLITE_SLOW\x10\x0b\x1a\x11\xca\xf3\x18\r:\x0bLite - Slow\x12$\n\x0bNARROW_FAST\x10\x0c\x1a\x13\xca\xf3\x18\x0f:\rNarrow - Fast\x12$\n\x0bNARROW_SLOW\x10\r\x1a\x13\xca\xf3\x18\x0f:\rNarrow - Slow\x12 \n\tTINY_FAST\x10\x0e\x1a\x11\xca\xf3\x18\r:\x0bTiny - Fast\x12 \n\tTINY_SLOW\x10\x0f\x1a\x11\xca\xf3\x18\r:\x0bTiny - Slow\x12,\n\x0cMEDIUM_TURBO\x10\x10\x1a\x1a\xca\xf3\x18\x16:\x14Medium Range - Turbo\":\n\x0c\x46\x45M_LNA_Mode\x12\x0c\n\x08\x44ISABLED\x10\x00\x12\x0b\n\x07\x45NABLED\x10\x01\x12\x0f\n\x0bNOT_PRESENT\x10\x02\x1a\xbb\x03\n\x0f\x42luetoothConfig\x12H\n\x07\x65nabled\x18\x01 \x01(\x08\x42\x37\xca\xf3\x18\x33:\x11\x42luetooth EnabledB\x1e\x45nable Bluetooth on the device\x12u\n\x04mode\x18\x02 \x01(\x0e\x32\x37.meshtastic.protobuf.Config.BluetoothConfig.PairingModeB.\xca\xf3\x18*:\x0cPairing ModeB\x1a\x42luetooth pairing strategy\x12o\n\tfixed_pin\x18\x03 \x01(\rB\\\xca\xf3\x18X:\tFixed PinBKFixed PIN for Bluetooth pairing. Used when pairing mode is set to fixed PIN\"v\n\x0bPairingMode\x12 \n\nRANDOM_PIN\x10\x00\x1a\x10\xca\xf3\x18\x0c:\nRandom PIN\x12\x1e\n\tFIXED_PIN\x10\x01\x1a\x0f\xca\xf3\x18\x0b:\tFixed PIN\x12%\n\x06NO_PIN\x10\x02\x1a\x19\xca\xf3\x18\x15:\x13No PIN (Just Works)\x1a\xec\x0b\n\x0eSecurityConfig\x12\x9c\x01\n\npublic_key\x18\x01 \x01(\x0c\x42\x87\x01\xca\xf3\x18\x82\x01:\nPublic KeyBtGenerated from your private key and sent out to other nodes on the mesh to allow them to compute a shared secret key\x12X\n\x0bprivate_key\x18\x02 \x01(\x0c\x42\x43\xca\xf3\x18?:\x0bPrivate KeyB0Used to create a shared key with a remote device\x12m\n\tadmin_key\x18\x03 \x03(\x0c\x42Z\xca\xf3\x18V:\tAdmin KeyBIPublic keys (up to three) authorized to send admin messages to this node.\x12\xa2\x01\n\nis_managed\x18\x04 \x01(\x08\x42\x8d\x01\xca\xf3\x18\x88\x01:\x0eManaged DeviceBvSettings are changed by a mesh administrator using an admin key, not from the local app. Needs at least one admin key.\x12Q\n\x0eserial_enabled\x18\x05 \x01(\x08\x42\x39\xca\xf3\x18\x35:\x0eSerial ConsoleB#Serial Console over the Stream API.\x12\x95\x01\n\x15\x64\x65\x62ug_log_api_enabled\x18\x06 \x01(\x08\x42v\xca\xf3\x18r:\nDebug LogsBdOutput live debug logging over serial, view and export position-redacted device logs over Bluetooth.\x12\x1d\n\x15\x61\x64min_channel_enabled\x18\x08 \x01(\x08\x12n\n\x17packet_signature_policy\x18\t \x01(\x0e\x32@.meshtastic.protobuf.Config.SecurityConfig.PacketSignaturePolicyB\x0b\xca\xf3\x18\x07R\x05\x32.8.0\"\xd2\x04\n\x15PacketSignaturePolicy\x12\xc5\x01\n\"PACKET_SIGNATURE_POLICY_COMPATIBLE\x10\x00\x1a\x9c\x01\xca\xf3\x18\x97\x01:\x1c\x43ompatible - Accept UnsignedBwAccept unsigned traffic for maximum compatibility. A signature that can be checked and is wrong still drops the packet.\x12\xac\x01\n PACKET_SIGNATURE_POLICY_BALANCED\x10\x01\x1a\x85\x01\xca\xf3\x18\x80\x01:\x1f\x42\x61lanced - Prefer AuthenticatedB]Prefer authenticated packets, but still accept unsigned traffic from nodes not known to sign.\x12\xc1\x01\n\x1ePACKET_SIGNATURE_POLICY_STRICT\x10\x02\x1a\x9c\x01\xca\xf3\x18\x97\x01:\x1fStrict - Require AuthenticationBtAccept only packets with a verified signature or successful PKI decryption. Packets from older nodes may be ignored.\x1a\x12\n\x10SessionkeyConfigB\x11\n\x0fpayload_variantBb\n\x14org.meshtastic.protoB\x0c\x43onfigProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00\x62\x06proto3')
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'meshtastic.protobuf.config_pb2', globals())
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\024org.meshtastic.protoB\014ConfigProtosZ\"github.com/meshtastic/go/generated\252\002\024Meshtastic.Protobufs\272\002\000'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["CLIENT"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["CLIENT"]._serialized_options = b'\312\363\0307:\006ClientB-App connected or standalone messaging device.'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["CLIENT_MUTE"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["CLIENT_MUTE"]._serialized_options = b'\312\363\030G:\013Client MuteB8Device that does not forward packets from other devices.'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["ROUTER"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["ROUTER"]._serialized_options = b'\312\363\030\234\001:\006RouterB\221\001Infrastructure node on a tower or mountain top only. Not to be used for roofs or mobile nodes. Needs exceptional coverage. Visible in Nodes list.'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["ROUTER_CLIENT"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["ROUTER_CLIENT"]._serialized_options = b'\010\001\312\363\030\017:\rRouter Client'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["REPEATER"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["REPEATER"]._serialized_options = b'\010\001\312\363\030\235\001:\010RepeaterB\220\001Deprecated infrastructure role that creates gaps in the mesh rebroadcast chain. Switch this node to a Router-based role (Router or Router Late).'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["TRACKER"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["TRACKER"]._serialized_options = b'\312\363\0307:\007TrackerB,Broadcasts GPS position packets as priority.'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["SENSOR"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["SENSOR"]._serialized_options = b'\312\363\0303:\006SensorB)Broadcasts telemetry packets as priority.'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["TAK"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["TAK"]._serialized_options = b'\312\363\030K:\003TAKBDOptimized for ATAK system communication, reduces routine broadcasts.'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["CLIENT_HIDDEN"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["CLIENT_HIDDEN"]._serialized_options = b'\312\363\030T:\rClient HiddenBCDevice that only broadcasts as needed for stealth or power savings.'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["LOST_AND_FOUND"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["LOST_AND_FOUND"]._serialized_options = b'\312\363\030m:\016Lost and FoundB[Broadcasts location as message to default channel regularly to assist with device recovery.'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["TAK_TRACKER"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["TAK_TRACKER"]._serialized_options = b'\312\363\030S:\013TAK TrackerBDEnables automatic TAK PLI broadcasts and reduces routine broadcasts.'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["ROUTER_LATE"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["ROUTER_LATE"]._serialized_options = b'\312\363\030\245\001:\013Router LateB\225\001Infrastructure node that always rebroadcasts packets once but only after all other modes. Visible in Nodes list. Not a good choice for rooftop nodes.'
_CONFIG_DEVICECONFIG_ROLE.values_by_name["CLIENT_BASE"]._options = None
_CONFIG_DEVICECONFIG_ROLE.values_by_name["CLIENT_BASE"]._serialized_options = b'\312\363\030\220\001:\013Client BaseB\200\001Rooftop or attic node that rebroadcasts like Router Late for packets from or to favorited nodes, and like Client for all others.'
_CONFIG_DEVICECONFIG_REBROADCASTMODE.values_by_name["ALL"]._options = None
_CONFIG_DEVICECONFIG_REBROADCASTMODE.values_by_name["ALL"]._serialized_options = b'\312\363\030~:\003AllBwRebroadcast any observed message, if it was on our private channel or from another channel with the same LoRa settings.'
_CONFIG_DEVICECONFIG_REBROADCASTMODE.values_by_name["ALL_SKIP_DECODING"]._options = None
_CONFIG_DEVICECONFIG_REBROADCASTMODE.values_by_name["ALL_SKIP_DECODING"]._serialized_options = b'\312\363\030~:\021All Skip DecodingBiBehaves as All. Skipping packet decoding applied only to the Repeater role, which is no longer supported.'
_CONFIG_DEVICECONFIG_REBROADCASTMODE.values_by_name["LOCAL_ONLY"]._options = None
_CONFIG_DEVICECONFIG_REBROADCASTMODE.values_by_name["LOCAL_ONLY"]._serialized_options = b'\312\363\030\271\001:\nLocal OnlyB\252\001Ignores observed messages from foreign meshes that are open or those which it cannot decrypt. Only rebroadcasts messages on the node\'s local primary / secondary channels.'
_CONFIG_DEVICECONFIG_REBROADCASTMODE.values_by_name["KNOWN_ONLY"]._options = None
_CONFIG_DEVICECONFIG_REBROADCASTMODE.values_by_name["KNOWN_ONLY"]._serialized_options = b'\312\363\030\264\001:\nKnown OnlyB\245\001Ignores observed messages from foreign meshes like Local Only, but takes it a step further by also ignoring messages from nodes not already in the node\'s known list.'
_CONFIG_DEVICECONFIG_REBROADCASTMODE.values_by_name["NONE"]._options = None
_CONFIG_DEVICECONFIG_REBROADCASTMODE.values_by_name["NONE"]._serialized_options = b'\312\363\030n:\004NoneBfInhibits all rebroadcasts, like the Client Mute role. Not allowed on the Router and Router Late roles.'
_CONFIG_DEVICECONFIG_REBROADCASTMODE.values_by_name["CORE_PORTNUMS_ONLY"]._options = None
_CONFIG_DEVICECONFIG_REBROADCASTMODE.values_by_name["CORE_PORTNUMS_ONLY"]._serialized_options = b'\312\363\030\373\001:\022Core Portnums OnlyB\344\001Ignores packets on non-core portnums such as Range Test, PAX Counter and ATAK, and does not rebroadcast them. Core portnums include Text, Position, NodeInfo, Telemetry, Routing, Admin, Waypoint, Traceroute and Store and Forward.'
_CONFIG_DEVICECONFIG.fields_by_name['role']._options = None
_CONFIG_DEVICECONFIG.fields_by_name['role']._serialized_options = b'\312\363\030\r:\013Device Role'
_CONFIG_DEVICECONFIG.fields_by_name['serial_enabled']._options = None
_CONFIG_DEVICECONFIG.fields_by_name['serial_enabled']._serialized_options = b'\030\001'
_CONFIG_DEVICECONFIG.fields_by_name['button_gpio']._options = None
_CONFIG_DEVICECONFIG.fields_by_name['button_gpio']._serialized_options = b'\312\363\030\\:\013Button GPIOBMGPIO pin for the user button, can be remapped on boards with multiple buttons'
_CONFIG_DEVICECONFIG.fields_by_name['buzzer_gpio']._options = None
_CONFIG_DEVICECONFIG.fields_by_name['buzzer_gpio']._serialized_options = b'\312\363\030*:\013Buzzer GPIOB\033GPIO pin for the PWM buzzer'
_CONFIG_DEVICECONFIG.fields_by_name['rebroadcast_mode']._options = None
_CONFIG_DEVICECONFIG.fields_by_name['rebroadcast_mode']._serialized_options = b'\312\363\030\022:\020Rebroadcast Mode'
_CONFIG_DEVICECONFIG.fields_by_name['node_info_broadcast_secs']._options = None
_CONFIG_DEVICECONFIG.fields_by_name['node_info_broadcast_secs']._serialized_options = b'\312\363\030t\031\000\000\000\000\000 \254@*\001s:\034Node Info Broadcast IntervalBHHow often node information is sent. Defaults to 3 hours, minimum 1 hour.'
_CONFIG_DEVICECONFIG.fields_by_name['double_tap_as_button_press']._options = None
_CONFIG_DEVICECONFIG.fields_by_name['double_tap_as_button_press']._serialized_options = b'\312\363\030\\:\024Double Tap as ButtonBDTreat double tap on supported accelerometers as a user button press.'
_CONFIG_DEVICECONFIG.fields_by_name['is_managed']._options = None
_CONFIG_DEVICECONFIG.fields_by_name['is_managed']._serialized_options = b'\030\001'
_CONFIG_DEVICECONFIG.fields_by_name['disable_triple_click']._options = None
_CONFIG_DEVICECONFIG.fields_by_name['disable_triple_click']._serialized_options = b'\312\363\030G:\024Disable Triple ClickB/Disables the user button triple-press shortcut.'
_CONFIG_DEVICECONFIG.fields_by_name['tzdef']._options = None
_CONFIG_DEVICECONFIG.fields_by_name['tzdef']._serialized_options = b'\312\363\030-:\tTime ZoneB POSIX timezone definition string'
_CONFIG_DEVICECONFIG.fields_by_name['led_heartbeat_disabled']._options = None
_CONFIG_DEVICECONFIG.fields_by_name['led_heartbeat_disabled']._serialized_options = b'\312\363\030\237\001:\025Disable LED HeartbeatB\205\001Turns off the blinking LED on the device. On most devices this is one of up to 4 LEDs; the charger and GPS LEDs are not controllable.'
_CONFIG_DEVICECONFIG.fields_by_name['buzzer_mode']._options = None
_CONFIG_DEVICECONFIG.fields_by_name['buzzer_mode']._serialized_options = b'\312\363\030\007R\0052.7.0'
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["ALTITUDE"]._options = None
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["ALTITUDE"]._serialized_options = b'\312\363\030Q:\010AltitudeBEInclude an altitude value in position reports, when one is available.'
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["ALTITUDE_MSL"]._options = None
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["ALTITUDE_MSL"]._serialized_options = b'\312\363\030\034:\032Altitude is Mean Sea Level'
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["GEOIDAL_SEPARATION"]._options = None
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["GEOIDAL_SEPARATION"]._serialized_options = b'\312\363\030\035:\033Altitude Geoidal Separation'
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["DOP"]._options = None
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["DOP"]._serialized_options = b'\312\363\030H:\003DOPBAInclude the dilution of precision value. PDOP is used by default.'
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["HVDOP"]._options = None
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["HVDOP"]._serialized_options = b'\312\363\030Q:\013HDOP / VDOPBBIf DOP is set, send separate HDOP and VDOP values instead of PDOP.'
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["SATINVIEW"]._options = None
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["SATINVIEW"]._serialized_options = b'\312\363\030\026:\024Number of satellites'
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["SEQ_NO"]._options = None
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["SEQ_NO"]._serialized_options = b'\312\363\030\021:\017Sequence number'
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["TIMESTAMP"]._options = None
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["TIMESTAMP"]._serialized_options = b'\312\363\030\013:\tTimestamp'
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["HEADING"]._options = None
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["HEADING"]._serialized_options = b'\312\363\030\021:\017Vehicle heading'
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["SPEED"]._options = None
_CONFIG_POSITIONCONFIG_POSITIONFLAGS.values_by_name["SPEED"]._serialized_options = b'\312\363\030\017:\rVehicle speed'
_CONFIG_POSITIONCONFIG_GPSMODE.values_by_name["DISABLED"]._options = None
_CONFIG_POSITIONCONFIG_GPSMODE.values_by_name["DISABLED"]._serialized_options = b'\312\363\030\n:\010Disabled'
_CONFIG_POSITIONCONFIG_GPSMODE.values_by_name["ENABLED"]._options = None
_CONFIG_POSITIONCONFIG_GPSMODE.values_by_name["ENABLED"]._serialized_options = b'\312\363\030\t:\007Enabled'
_CONFIG_POSITIONCONFIG_GPSMODE.values_by_name["NOT_PRESENT"]._options = None
_CONFIG_POSITIONCONFIG_GPSMODE.values_by_name["NOT_PRESENT"]._serialized_options = b'\312\363\030\r:\013Not Present'
_CONFIG_POSITIONCONFIG.fields_by_name['position_broadcast_secs']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['position_broadcast_secs']._serialized_options = b'\312\363\030T*\001s:\022Broadcast IntervalB;The longest a node will go without broadcasting a position.'
_CONFIG_POSITIONCONFIG.fields_by_name['position_broadcast_smart_enabled']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['position_broadcast_smart_enabled']._serialized_options = b'\312\363\030\020:\016Smart Position'
_CONFIG_POSITIONCONFIG.fields_by_name['fixed_position']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['fixed_position']._serialized_options = b'\312\363\030\224\001:\016Fixed PositionB\201\001The last known latitude, longitude and altitude are broadcast over the mesh on the position interval, rather than a live GPS fix.'
_CONFIG_POSITIONCONFIG.fields_by_name['gps_enabled']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['gps_enabled']._serialized_options = b'\030\001'
_CONFIG_POSITIONCONFIG.fields_by_name['gps_update_interval']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['gps_update_interval']._serialized_options = b'\312\363\030=*\001s:\017Update IntervalB\'How often to try to get a GPS position.'
_CONFIG_POSITIONCONFIG.fields_by_name['gps_attempt_time']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['gps_attempt_time']._serialized_options = b'\030\001'
_CONFIG_POSITIONCONFIG.fields_by_name['position_flags']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['position_flags']._serialized_options = b'\312\363\030N:\016Position FlagsB<Optional fields to include when assembling position messages'
_CONFIG_POSITIONCONFIG.fields_by_name['rx_gpio']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['rx_gpio']._serialized_options = b'\312\363\030)\010\001:\020GPS Receive GPIOB\023GPIO pin for GPS RX'
_CONFIG_POSITIONCONFIG.fields_by_name['tx_gpio']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['tx_gpio']._serialized_options = b'\312\363\030*\010\001:\021GPS Transmit GPIOB\023GPIO pin for GPS TX'
_CONFIG_POSITIONCONFIG.fields_by_name['broadcast_smart_minimum_distance']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['broadcast_smart_minimum_distance']._serialized_options = b'\312\363\030f*\001m:\020Minimum DistanceBOThe minimum change in distance before a smart position broadcast is considered.'
_CONFIG_POSITIONCONFIG.fields_by_name['broadcast_smart_minimum_interval_secs']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['broadcast_smart_minimum_interval_secs']._serialized_options = b'\312\363\030m*\001s:\020Minimum IntervalBVThe shortest interval between position updates once the minimum distance has been met.'
_CONFIG_POSITIONCONFIG.fields_by_name['gps_en_gpio']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['gps_en_gpio']._serialized_options = b'\312\363\030,\010\001:\017GPS Enable GPIOB\027GPIO pin for GPS enable'
_CONFIG_POSITIONCONFIG.fields_by_name['gps_mode']._options = None
_CONFIG_POSITIONCONFIG.fields_by_name['gps_mode']._serialized_options = b'\312\363\030\n:\010GPS Mode'
_CONFIG_POWERCONFIG.fields_by_name['is_power_saving']._options = None
_CONFIG_POWERCONFIG.fields_by_name['is_power_saving']._serialized_options = b'\312\363\030\366\001:\014Power SavingB\345\001Will sleep everything as much as possible, for the Tracker and Sensor roles this also includes the LoRa radio. Don\'t use this setting if you want to use your device with the phone apps or are using a device without a user button.'
_CONFIG_POWERCONFIG.fields_by_name['on_battery_shutdown_after_secs']._options = None
_CONFIG_POWERCONFIG.fields_by_name['on_battery_shutdown_after_secs']._serialized_options = b'\312\363\030\237\001*\001s:\026Shutdown on Power LossB\201\001How long after external power is removed before the device powers off. Zero to disable; values under 30 seconds are raised to 30.'
_CONFIG_POWERCONFIG.fields_by_name['adc_multiplier_override']._options = None
_CONFIG_POWERCONFIG.fields_by_name['adc_multiplier_override']._serialized_options = b'\312\363\030\016:\014ADC Override'
_CONFIG_POWERCONFIG.fields_by_name['wait_bluetooth_secs']._options = None
_CONFIG_POWERCONFIG.fields_by_name['wait_bluetooth_secs']._serialized_options = b'\312\363\030 *\001s:\033Wait for Bluetooth Duration'
_CONFIG_NETWORKCONFIG_IPV4CONFIG.fields_by_name['ip']._options = None
_CONFIG_NETWORKCONFIG_IPV4CONFIG.fields_by_name['ip']._serialized_options = b'\312\363\030\004:\002IP'
_CONFIG_NETWORKCONFIG_IPV4CONFIG.fields_by_name['gateway']._options = None
_CONFIG_NETWORKCONFIG_IPV4CONFIG.fields_by_name['gateway']._serialized_options = b'\312\363\030\t:\007Gateway'
_CONFIG_NETWORKCONFIG_IPV4CONFIG.fields_by_name['subnet']._options = None
_CONFIG_NETWORKCONFIG_IPV4CONFIG.fields_by_name['subnet']._serialized_options = b'\312\363\030\010:\006Subnet'
_CONFIG_NETWORKCONFIG_IPV4CONFIG.fields_by_name['dns']._options = None
_CONFIG_NETWORKCONFIG_IPV4CONFIG.fields_by_name['dns']._serialized_options = b'\312\363\030\005:\003DNS'
_CONFIG_NETWORKCONFIG_ADDRESSMODE.values_by_name["DHCP"]._options = None
_CONFIG_NETWORKCONFIG_ADDRESSMODE.values_by_name["DHCP"]._serialized_options = b'\312\363\030\006:\004DHCP'
_CONFIG_NETWORKCONFIG_ADDRESSMODE.values_by_name["STATIC"]._options = None
_CONFIG_NETWORKCONFIG_ADDRESSMODE.values_by_name["STATIC"]._serialized_options = b'\312\363\030\010:\006Static'
_CONFIG_NETWORKCONFIG_PROTOCOLFLAGS.values_by_name["NO_BROADCAST"]._options = None
_CONFIG_NETWORKCONFIG_PROTOCOLFLAGS.values_by_name["NO_BROADCAST"]._serialized_options = b'\312\363\030\006:\004None'
_CONFIG_NETWORKCONFIG_PROTOCOLFLAGS.values_by_name["UDP_BROADCAST"]._options = None
_CONFIG_NETWORKCONFIG_PROTOCOLFLAGS.values_by_name["UDP_BROADCAST"]._serialized_options = b'\312\363\030\017:\rUDP Broadcast'
_CONFIG_NETWORKCONFIG.fields_by_name['wifi_enabled']._options = None
_CONFIG_NETWORKCONFIG.fields_by_name['wifi_enabled']._serialized_options = b'\312\363\030O:\014WiFi EnabledB?Enabling WiFi will disable the Bluetooth connection to the app.'
_CONFIG_NETWORKCONFIG.fields_by_name['wifi_ssid']._options = None
_CONFIG_NETWORKCONFIG.fields_by_name['wifi_ssid']._serialized_options = b'\312\363\030\':\004SSIDB\037WiFi network name to connect to'
_CONFIG_NETWORKCONFIG.fields_by_name['wifi_psk']._options = None
_CONFIG_NETWORKCONFIG.fields_by_name['wifi_psk']._serialized_options = b'\312\363\030,:\010PasswordB WiFi password for authentication'
_CONFIG_NETWORKCONFIG.fields_by_name['ntp_server']._options = None
_CONFIG_NETWORKCONFIG.fields_by_name['ntp_server']._serialized_options = b'\312\363\030E:\nNTP ServerB7NTP server address. Defaults to meshtastic.pool.ntp.org'
_CONFIG_NETWORKCONFIG.fields_by_name['eth_enabled']._options = None
_CONFIG_NETWORKCONFIG.fields_by_name['eth_enabled']._serialized_options = b'\312\363\030h:\020Ethernet EnabledBTOn ESP32 boards, enabling Ethernet will disable the Bluetooth connection to the app.'
_CONFIG_NETWORKCONFIG.fields_by_name['address_mode']._options = None
_CONFIG_NETWORKCONFIG.fields_by_name['address_mode']._serialized_options = b'\312\363\030\016:\014Address Mode'
_CONFIG_NETWORKCONFIG.fields_by_name['rsyslog_server']._options = None
_CONFIG_NETWORKCONFIG.fields_by_name['rsyslog_server']._serialized_options = b'\312\363\030\020:\016Rsyslog Server'
_CONFIG_NETWORKCONFIG.fields_by_name['enabled_protocols']._options = None
_CONFIG_NETWORKCONFIG.fields_by_name['enabled_protocols']._serialized_options = b'\312\363\030W:\021Enabled ProtocolsB;Enable broadcasting packets via UDP over the local network.R\0052.6.0'
_CONFIG_NETWORKCONFIG.fields_by_name['ipv6_enabled']._options = None
_CONFIG_NETWORKCONFIG.fields_by_name['ipv6_enabled']._serialized_options = b'\312\363\030\010R\0062.7.16'
_CONFIG_DISPLAYCONFIG_DISPLAYUNITS.values_by_name["METRIC"]._options = None
_CONFIG_DISPLAYCONFIG_DISPLAYUNITS.values_by_name["METRIC"]._serialized_options = b'\312\363\030\010:\006Metric'
_CONFIG_DISPLAYCONFIG_DISPLAYUNITS.values_by_name["IMPERIAL"]._options = None
_CONFIG_DISPLAYCONFIG_DISPLAYUNITS.values_by_name["IMPERIAL"]._serialized_options = b'\312\363\030\n:\010Imperial'
_CONFIG_DISPLAYCONFIG_OLEDTYPE.values_by_name["OLED_AUTO"]._options = None
_CONFIG_DISPLAYCONFIG_OLEDTYPE.values_by_name["OLED_AUTO"]._serialized_options = b'\312\363\030\026:\024Detect Automatically'
_CONFIG_DISPLAYCONFIG_OLEDTYPE.values_by_name["OLED_SSD1306"]._options = None
_CONFIG_DISPLAYCONFIG_OLEDTYPE.values_by_name["OLED_SSD1306"]._serialized_options = b'\312\363\030\t:\007SSD1306'
_CONFIG_DISPLAYCONFIG_OLEDTYPE.values_by_name["OLED_SH1106"]._options = None
_CONFIG_DISPLAYCONFIG_OLEDTYPE.values_by_name["OLED_SH1106"]._serialized_options = b'\312\363\030\010:\006SH1106'
_CONFIG_DISPLAYCONFIG_OLEDTYPE.values_by_name["OLED_SH1107"]._options = None
_CONFIG_DISPLAYCONFIG_OLEDTYPE.values_by_name["OLED_SH1107"]._serialized_options = b'\312\363\030\010:\006SH1107'
_CONFIG_DISPLAYCONFIG_OLEDTYPE.values_by_name["OLED_SH1107_128_128"]._options = None
_CONFIG_DISPLAYCONFIG_OLEDTYPE.values_by_name["OLED_SH1107_128_128"]._serialized_options = b'\312\363\030\020:\016SH1107 128x128'
_CONFIG_DISPLAYCONFIG_OLEDTYPE.values_by_name["OLED_SH1107_ROTATED"]._options = None
_CONFIG_DISPLAYCONFIG_OLEDTYPE.values_by_name["OLED_SH1107_ROTATED"]._serialized_options = b'\312\363\030\020:\016SH1107 Rotated'
_CONFIG_DISPLAYCONFIG_DISPLAYMODE.values_by_name["DEFAULT"]._options = None
_CONFIG_DISPLAYCONFIG_DISPLAYMODE.values_by_name["DEFAULT"]._serialized_options = b'\312\363\030\036:\034Default 128x64 screen layout'
_CONFIG_DISPLAYCONFIG_DISPLAYMODE.values_by_name["TWOCOLOR"]._options = None
_CONFIG_DISPLAYCONFIG_DISPLAYMODE.values_by_name["TWOCOLOR"]._serialized_options = b'\312\363\030 :\036Optimized for 2 color displays'
_CONFIG_DISPLAYCONFIG_DISPLAYMODE.values_by_name["INVERTED"]._options = None
_CONFIG_DISPLAYCONFIG_DISPLAYMODE.values_by_name["INVERTED"]._serialized_options = b'\312\363\030\':%Inverted top bar for 2 color displays'
_CONFIG_DISPLAYCONFIG_DISPLAYMODE.values_by_name["COLOR"]._options = None
_CONFIG_DISPLAYCONFIG_DISPLAYMODE.values_by_name["COLOR"]._serialized_options = b'\312\363\030\031:\027TFT Full Color Displays'
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_0"]._options = None
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_0"]._serialized_options = b'\312\363\030\005:\0030\302\260'
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_90"]._options = None
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_90"]._serialized_options = b'\312\363\030\006:\00490\302\260'
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_180"]._options = None
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_180"]._serialized_options = b'\312\363\030\007:\005180\302\260'
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_270"]._options = None
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_270"]._serialized_options = b'\312\363\030\007:\005270\302\260'
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_0_INVERTED"]._options = None
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_0_INVERTED"]._serialized_options = b'\312\363\030\016:\0140\302\260 Inverted'
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_90_INVERTED"]._options = None
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_90_INVERTED"]._serialized_options = b'\312\363\030\017:\r90\302\260 Inverted'
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_180_INVERTED"]._options = None
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_180_INVERTED"]._serialized_options = b'\312\363\030\020:\016180\302\260 Inverted'
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_270_INVERTED"]._options = None
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION.values_by_name["DEGREES_270_INVERTED"]._serialized_options = b'\312\363\030\020:\016270\302\260 Inverted'
_CONFIG_DISPLAYCONFIG.fields_by_name['screen_on_secs']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['screen_on_secs']._serialized_options = b'\312\363\030m*\001s:\rScreen on forBYHow long the screen remains on after the user button is pressed or messages are received.'
_CONFIG_DISPLAYCONFIG.fields_by_name['gps_format']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['gps_format']._serialized_options = b'\030\001\312\363\030\010Z\0062.7.10'
_CONFIG_DISPLAYCONFIG.fields_by_name['auto_screen_carousel_secs']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['auto_screen_carousel_secs']._serialized_options = b'\312\363\030g*\001s:\021Carousel IntervalBOAutomatically moves to the next screen page, like a carousel, on this interval.'
_CONFIG_DISPLAYCONFIG.fields_by_name['compass_north_top']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['compass_north_top']._serialized_options = b'\030\001\312\363\030m:\022Always point northBPThe compass heading on the screen outside of the circle will always point north.Z\0052.7.1'
_CONFIG_DISPLAYCONFIG.fields_by_name['flip_screen']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['flip_screen']._serialized_options = b'\312\363\030%:\013Flip ScreenB\026Flip screen vertically'
_CONFIG_DISPLAYCONFIG.fields_by_name['units']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['units']._serialized_options = b'\312\363\0302:\rDisplay UnitsB!Units shown on the device screen.'
_CONFIG_DISPLAYCONFIG.fields_by_name['oled']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['oled']._serialized_options = b'\312\363\0306:\tOLED TypeB)Override automatic OLED screen detection.'
_CONFIG_DISPLAYCONFIG.fields_by_name['displaymode']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['displaymode']._serialized_options = b'\312\363\030/:\014Display ModeB\037Override default screen layout.'
_CONFIG_DISPLAYCONFIG.fields_by_name['heading_bold']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['heading_bold']._serialized_options = b'\312\363\0304:\014Bold HeadingB$Bold the heading text on the screen.'
_CONFIG_DISPLAYCONFIG.fields_by_name['wake_on_tap_or_motion']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['wake_on_tap_or_motion']._serialized_options = b'\312\363\030W:\034Wake Screen on tap or motionB7Requires that there be an accelerometer on your device.'
_CONFIG_DISPLAYCONFIG.fields_by_name['compass_orientation']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['compass_orientation']._serialized_options = b'\312\363\030a:\023Compass OrientationBJIndicates how to rotate or invert the compass output for accurate display.'
_CONFIG_DISPLAYCONFIG.fields_by_name['use_12h_clock']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['use_12h_clock']._serialized_options = b'\312\363\030A:\r12 Hour ClockB(Sets the screen clock format to 12-hour.R\0062.5.22'
_CONFIG_DISPLAYCONFIG.fields_by_name['use_long_node_name']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['use_long_node_name']._serialized_options = b'\312\363\030\010R\0062.7.13'
_CONFIG_DISPLAYCONFIG.fields_by_name['enable_message_bubbles']._options = None
_CONFIG_DISPLAYCONFIG.fields_by_name['enable_message_bubbles']._serialized_options = b'\312\363\030\010R\0062.7.19'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["UNSET"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["UNSET"]._serialized_options = b'\312\363\030\025:\023Please set a region'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["US"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["US"]._serialized_options = b'\312\363\030\017:\rUnited States'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["EU_433"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["EU_433"]._serialized_options = b'\312\363\030\027:\025European Union 433MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["EU_868"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["EU_868"]._serialized_options = b'\312\363\030\027:\025European Union 868MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["CN"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["CN"]._serialized_options = b'\312\363\030\007:\005China'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["JP"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["JP"]._serialized_options = b'\312\363\030\007:\005Japan'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ANZ"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ANZ"]._serialized_options = b'\312\363\030\031:\027Australia / New Zealand'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["KR"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["KR"]._serialized_options = b'\312\363\030\007:\005Korea'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["TW"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["TW"]._serialized_options = b'\312\363\030\010:\006Taiwan'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["RU"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["RU"]._serialized_options = b'\312\363\030\010:\006Russia'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["IN"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["IN"]._serialized_options = b'\312\363\030\007:\005India'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["NZ_865"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["NZ_865"]._serialized_options = b'\312\363\030\024:\022New Zealand 865MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["TH"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["TH"]._serialized_options = b'\312\363\030\n:\010Thailand'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["LORA_24"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["LORA_24"]._serialized_options = b'\312\363\030\t:\0072.4 GHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["UA_433"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["UA_433"]._serialized_options = b'\312\363\030\020:\016Ukraine 433MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["UA_868"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["UA_868"]._serialized_options = b'\010\001\312\363\030\020:\016Ukraine 868MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["MY_433"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["MY_433"]._serialized_options = b'\312\363\030\021:\017Malaysia 433MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["MY_919"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["MY_919"]._serialized_options = b'\312\363\030\021:\017Malaysia 919MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["SG_923"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["SG_923"]._serialized_options = b'\312\363\030\022:\020Singapore 923MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["PH_433"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["PH_433"]._serialized_options = b'\312\363\030\024:\022Philippines 433MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["PH_868"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["PH_868"]._serialized_options = b'\312\363\030\024:\022Philippines 868MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["PH_915"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["PH_915"]._serialized_options = b'\312\363\030\024:\022Philippines 915MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ANZ_433"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ANZ_433"]._serialized_options = b'\312\363\030 :\036Australia / New Zealand 433MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["KZ_433"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["KZ_433"]._serialized_options = b'\312\363\030\023:\021Kazakhstan 433MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["KZ_863"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["KZ_863"]._serialized_options = b'\312\363\030\023:\021Kazakhstan 863MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["NP_865"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["NP_865"]._serialized_options = b'\312\363\030\016:\014Nepal 865MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["BR_902"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["BR_902"]._serialized_options = b'\312\363\030\017:\rBrazil 902MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU1_2M"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU1_2M"]._serialized_options = b'\312\363\030\033:\031ITU Region 1 / Amateur 2m'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU2_2M"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU2_2M"]._serialized_options = b'\312\363\030\033:\031ITU Region 2 / Amateur 2m'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["EU_866"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["EU_866"]._serialized_options = b'\312\363\030\027:\025European Union 866MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["EU_874"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["EU_874"]._serialized_options = b'\312\363\030\027:\025European Union 874MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["EU_917"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["EU_917"]._serialized_options = b'\312\363\030\027:\025European Union 917MHz'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["EU_N_868"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["EU_N_868"]._serialized_options = b'\312\363\030 :\036European Union 868MHz (Narrow)'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU3_2M"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU3_2M"]._serialized_options = b'\312\363\030\033:\031ITU Region 3 / Amateur 2m'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU1_70CM"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU1_70CM"]._serialized_options = b'\312\363\030\035:\033ITU Region 1 / Amateur 70cm'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU2_70CM"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU2_70CM"]._serialized_options = b'\312\363\030\035:\033ITU Region 2 / Amateur 70cm'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU3_70CM"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU3_70CM"]._serialized_options = b'\312\363\030\035:\033ITU Region 3 / Amateur 70cm'
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU2_125CM"]._options = None
_CONFIG_LORACONFIG_REGIONCODE.values_by_name["ITU2_125CM"]._serialized_options = b'\312\363\030\036:\034ITU Region 2 / Amateur 1.25m'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["LONG_FAST"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["LONG_FAST"]._serialized_options = b'\312\363\030%:\021Long Range - FastJ\020longfast|default'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["LONG_SLOW"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["LONG_SLOW"]._serialized_options = b'\010\001\312\363\030\023:\021Long Range - Slow'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["VERY_LONG_SLOW"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["VERY_LONG_SLOW"]._serialized_options = b'\010\001\312\363\030\030:\026Very Long Range - Slow'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["MEDIUM_SLOW"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["MEDIUM_SLOW"]._serialized_options = b'\312\363\030\025:\023Medium Range - Slow'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["MEDIUM_FAST"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["MEDIUM_FAST"]._serialized_options = b'\312\363\030\025:\023Medium Range - Fast'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["SHORT_SLOW"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["SHORT_SLOW"]._serialized_options = b'\312\363\030\024:\022Short Range - Slow'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["SHORT_FAST"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["SHORT_FAST"]._serialized_options = b'\312\363\030\024:\022Short Range - Fast'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["LONG_MODERATE"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["LONG_MODERATE"]._serialized_options = b'\312\363\030\027:\025Long Range - Moderate'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["SHORT_TURBO"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["SHORT_TURBO"]._serialized_options = b'\312\363\030\025:\023Short Range - Turbo'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["LONG_TURBO"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["LONG_TURBO"]._serialized_options = b'\312\363\030\024:\022Long Range - Turbo'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["LITE_FAST"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["LITE_FAST"]._serialized_options = b'\312\363\030\r:\013Lite - Fast'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["LITE_SLOW"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["LITE_SLOW"]._serialized_options = b'\312\363\030\r:\013Lite - Slow'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["NARROW_FAST"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["NARROW_FAST"]._serialized_options = b'\312\363\030\017:\rNarrow - Fast'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["NARROW_SLOW"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["NARROW_SLOW"]._serialized_options = b'\312\363\030\017:\rNarrow - Slow'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["TINY_FAST"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["TINY_FAST"]._serialized_options = b'\312\363\030\r:\013Tiny - Fast'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["TINY_SLOW"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["TINY_SLOW"]._serialized_options = b'\312\363\030\r:\013Tiny - Slow'
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["MEDIUM_TURBO"]._options = None
_CONFIG_LORACONFIG_MODEMPRESET.values_by_name["MEDIUM_TURBO"]._serialized_options = b'\312\363\030\026:\024Medium Range - Turbo'
_CONFIG_LORACONFIG.fields_by_name['use_preset']._options = None
_CONFIG_LORACONFIG.fields_by_name['use_preset']._serialized_options = b'\312\363\030h:\nUse PresetBZUse the modem preset settings instead of a manual bandwidth, spread factor and coding rate'
_CONFIG_LORACONFIG.fields_by_name['modem_preset']._options = None
_CONFIG_LORACONFIG.fields_by_name['modem_preset']._serialized_options = b'\312\363\030\t:\007Presets'
_CONFIG_LORACONFIG.fields_by_name['bandwidth']._options = None
_CONFIG_LORACONFIG.fields_by_name['bandwidth']._serialized_options = b'\312\363\030\020*\003kHz:\tBandwidth'
_CONFIG_LORACONFIG.fields_by_name['spread_factor']._options = None
_CONFIG_LORACONFIG.fields_by_name['spread_factor']._serialized_options = b'\312\363\030Z\031\000\000\000\000\000\000\024@!\000\000\000\000\000\000(@:\rSpread FactorB7Number of chirps per symbol, as 2 raised to this value.'
_CONFIG_LORACONFIG.fields_by_name['coding_rate']._options = None
_CONFIG_LORACONFIG.fields_by_name['coding_rate']._serialized_options = b'\312\363\030\210\001:\013Coding RateByError-correction redundancy, as the denominator of 4/n. Higher values survive noisier links but make every packet longer.'
_CONFIG_LORACONFIG.fields_by_name['region']._options = None
_CONFIG_LORACONFIG.fields_by_name['region']._serialized_options = b'\312\363\0309:\006RegionB/The region where you will be using your radios.'
_CONFIG_LORACONFIG.fields_by_name['hop_limit']._options = None
_CONFIG_LORACONFIG.fields_by_name['hop_limit']._serialized_options = b'\312\363\030\204\001\031\000\000\000\000\000\000\000\000!\000\000\000\000\000\000\034@:\tHop LimitBIHow many times a message may be repeated before it stops being forwarded.J\032hops|ttl|range|rebroadcast'
_CONFIG_LORACONFIG.fields_by_name['tx_enabled']._options = None
_CONFIG_LORACONFIG.fields_by_name['tx_enabled']._serialized_options = b'\312\363\030l:\020Transmit EnabledBXAllow the LoRa radio to transmit. Turn off while hot-swapping antennas or bench testing.'
_CONFIG_LORACONFIG.fields_by_name['tx_power']._options = None
_CONFIG_LORACONFIG.fields_by_name['tx_power']._serialized_options = b'\312\363\030\266\001\031\000\000\000\000\000\000\000\000!\000\000\000\000\000\000B@*\003dBm:\016Transmit PowerBxRadio transmit power. Leave at zero to use the highest level legal for the region, which is what most radios should use.J\023tx|power|dbm|output'
_CONFIG_LORACONFIG.fields_by_name['channel_num']._options = None
_CONFIG_LORACONFIG.fields_by_name['channel_num']._serialized_options = b'\312\363\030\275\001:\016Frequency SlotB\252\001Your node\'s operating frequency is calculated based on the region, modem preset, and this field. When 0, the region picks the slot, usually from the primary channel name.'
_CONFIG_LORACONFIG.fields_by_name['override_duty_cycle']._options = None
_CONFIG_LORACONFIG.fields_by_name['override_duty_cycle']._serialized_options = b'\312\363\030\025:\023Override Duty Cycle'
_CONFIG_LORACONFIG.fields_by_name['sx126x_rx_boosted_gain']._options = None
_CONFIG_LORACONFIG.fields_by_name['sx126x_rx_boosted_gain']._serialized_options = b'\312\363\030F:\017RX Boosted GainB3Enable RX boosted gain mode on SX126x-based radios.'
_CONFIG_LORACONFIG.fields_by_name['override_frequency']._options = None
_CONFIG_LORACONFIG.fields_by_name['override_frequency']._serialized_options = b'\312\363\030\031*\003MHz:\022Frequency Override'
_CONFIG_LORACONFIG.fields_by_name['pa_fan_disabled']._options = None
_CONFIG_LORACONFIG.fields_by_name['pa_fan_disabled']._serialized_options = b'\312\363\030\021:\017PA Fan Disabled'
_CONFIG_LORACONFIG.fields_by_name['ignore_incoming']._options = None
_CONFIG_LORACONFIG.fields_by_name['ignore_incoming']._serialized_options = b'\312\363\030\021:\017Ignore Incoming'
_CONFIG_LORACONFIG.fields_by_name['ignore_mqtt']._options = None
_CONFIG_LORACONFIG.fields_by_name['ignore_mqtt']._serialized_options = b'\312\363\030`:\013Ignore MQTTBQIgnore packets received over LoRa that travelled via MQTT anywhere on their path.'
_CONFIG_LORACONFIG.fields_by_name['config_ok_to_mqtt']._options = None
_CONFIG_LORACONFIG.fields_by_name['config_ok_to_mqtt']._serialized_options = b'\312\363\030\014:\nOK to MQTT'
_CONFIG_LORACONFIG.fields_by_name['fem_lna_mode']._options = None
_CONFIG_LORACONFIG.fields_by_name['fem_lna_mode']._serialized_options = b'\312\363\030\010R\0062.7.20'
_CONFIG_BLUETOOTHCONFIG_PAIRINGMODE.values_by_name["RANDOM_PIN"]._options = None
_CONFIG_BLUETOOTHCONFIG_PAIRINGMODE.values_by_name["RANDOM_PIN"]._serialized_options = b'\312\363\030\014:\nRandom PIN'
_CONFIG_BLUETOOTHCONFIG_PAIRINGMODE.values_by_name["FIXED_PIN"]._options = None
_CONFIG_BLUETOOTHCONFIG_PAIRINGMODE.values_by_name["FIXED_PIN"]._serialized_options = b'\312\363\030\013:\tFixed PIN'
_CONFIG_BLUETOOTHCONFIG_PAIRINGMODE.values_by_name["NO_PIN"]._options = None
_CONFIG_BLUETOOTHCONFIG_PAIRINGMODE.values_by_name["NO_PIN"]._serialized_options = b'\312\363\030\025:\023No PIN (Just Works)'
_CONFIG_BLUETOOTHCONFIG.fields_by_name['enabled']._options = None
_CONFIG_BLUETOOTHCONFIG.fields_by_name['enabled']._serialized_options = b'\312\363\0303:\021Bluetooth EnabledB\036Enable Bluetooth on the device'
_CONFIG_BLUETOOTHCONFIG.fields_by_name['mode']._options = None
_CONFIG_BLUETOOTHCONFIG.fields_by_name['mode']._serialized_options = b'\312\363\030*:\014Pairing ModeB\032Bluetooth pairing strategy'
_CONFIG_BLUETOOTHCONFIG.fields_by_name['fixed_pin']._options = None
_CONFIG_BLUETOOTHCONFIG.fields_by_name['fixed_pin']._serialized_options = b'\312\363\030X:\tFixed PinBKFixed PIN for Bluetooth pairing. Used when pairing mode is set to fixed PIN'
_CONFIG_SECURITYCONFIG_PACKETSIGNATUREPOLICY.values_by_name["PACKET_SIGNATURE_POLICY_COMPATIBLE"]._options = None
_CONFIG_SECURITYCONFIG_PACKETSIGNATUREPOLICY.values_by_name["PACKET_SIGNATURE_POLICY_COMPATIBLE"]._serialized_options = b'\312\363\030\227\001:\034Compatible - Accept UnsignedBwAccept unsigned traffic for maximum compatibility. A signature that can be checked and is wrong still drops the packet.'
_CONFIG_SECURITYCONFIG_PACKETSIGNATUREPOLICY.values_by_name["PACKET_SIGNATURE_POLICY_BALANCED"]._options = None
_CONFIG_SECURITYCONFIG_PACKETSIGNATUREPOLICY.values_by_name["PACKET_SIGNATURE_POLICY_BALANCED"]._serialized_options = b'\312\363\030\200\001:\037Balanced - Prefer AuthenticatedB]Prefer authenticated packets, but still accept unsigned traffic from nodes not known to sign.'
_CONFIG_SECURITYCONFIG_PACKETSIGNATUREPOLICY.values_by_name["PACKET_SIGNATURE_POLICY_STRICT"]._options = None
_CONFIG_SECURITYCONFIG_PACKETSIGNATUREPOLICY.values_by_name["PACKET_SIGNATURE_POLICY_STRICT"]._serialized_options = b'\312\363\030\227\001:\037Strict - Require AuthenticationBtAccept only packets with a verified signature or successful PKI decryption. Packets from older nodes may be ignored.'
_CONFIG_SECURITYCONFIG.fields_by_name['public_key']._options = None
_CONFIG_SECURITYCONFIG.fields_by_name['public_key']._serialized_options = b'\312\363\030\202\001:\nPublic KeyBtGenerated from your private key and sent out to other nodes on the mesh to allow them to compute a shared secret key'
_CONFIG_SECURITYCONFIG.fields_by_name['private_key']._options = None
_CONFIG_SECURITYCONFIG.fields_by_name['private_key']._serialized_options = b'\312\363\030?:\013Private KeyB0Used to create a shared key with a remote device'
_CONFIG_SECURITYCONFIG.fields_by_name['admin_key']._options = None
_CONFIG_SECURITYCONFIG.fields_by_name['admin_key']._serialized_options = b'\312\363\030V:\tAdmin KeyBIPublic keys (up to three) authorized to send admin messages to this node.'
_CONFIG_SECURITYCONFIG.fields_by_name['is_managed']._options = None
_CONFIG_SECURITYCONFIG.fields_by_name['is_managed']._serialized_options = b'\312\363\030\210\001:\016Managed DeviceBvSettings are changed by a mesh administrator using an admin key, not from the local app. Needs at least one admin key.'
_CONFIG_SECURITYCONFIG.fields_by_name['serial_enabled']._options = None
_CONFIG_SECURITYCONFIG.fields_by_name['serial_enabled']._serialized_options = b'\312\363\0305:\016Serial ConsoleB#Serial Console over the Stream API.'
_CONFIG_SECURITYCONFIG.fields_by_name['debug_log_api_enabled']._options = None
_CONFIG_SECURITYCONFIG.fields_by_name['debug_log_api_enabled']._serialized_options = b'\312\363\030r:\nDebug LogsBdOutput live debug logging over serial, view and export position-redacted device logs over Bluetooth.'
_CONFIG_SECURITYCONFIG.fields_by_name['packet_signature_policy']._options = None
_CONFIG_SECURITYCONFIG.fields_by_name['packet_signature_policy']._serialized_options = b'\312\363\030\007R\0052.8.0'
_CONFIG._serialized_start=138
_CONFIG._serialized_end=17309
_CONFIG_DEVICECONFIG._serialized_start=767
_CONFIG_DEVICECONFIG._serialized_end=4735
_CONFIG_DEVICECONFIG_ROLE._serialized_start=1964
_CONFIG_DEVICECONFIG_ROLE._serialized_end=3483
_CONFIG_DEVICECONFIG_REBROADCASTMODE._serialized_start=3486
_CONFIG_DEVICECONFIG_REBROADCASTMODE._serialized_end=4628
_CONFIG_DEVICECONFIG_BUZZERMODE._serialized_start=4630
_CONFIG_DEVICECONFIG_BUZZERMODE._serialized_end=4735
_CONFIG_POSITIONCONFIG._serialized_start=4738
_CONFIG_POSITIONCONFIG._serialized_end=6693
_CONFIG_POSITIONCONFIG_POSITIONFLAGS._serialized_start=5984
_CONFIG_POSITIONCONFIG_POSITIONFLAGS._serialized_end=6588
_CONFIG_POSITIONCONFIG_GPSMODE._serialized_start=6590
_CONFIG_POSITIONCONFIG_GPSMODE._serialized_end=6693
_CONFIG_POWERCONFIG._serialized_start=6696
_CONFIG_POWERCONFIG._serialized_end=7437
_CONFIG_NETWORKCONFIG._serialized_start=7440
_CONFIG_NETWORKCONFIG._serialized_end=8567
_CONFIG_NETWORKCONFIG_IPV4CONFIG._serialized_start=8297
_CONFIG_NETWORKCONFIG_IPV4CONFIG._serialized_end=8417
_CONFIG_NETWORKCONFIG_ADDRESSMODE._serialized_start=8419
_CONFIG_NETWORKCONFIG_ADDRESSMODE._serialized_end=8480
_CONFIG_NETWORKCONFIG_PROTOCOLFLAGS._serialized_start=8482
_CONFIG_NETWORKCONFIG_PROTOCOLFLAGS._serialized_end=8567
_CONFIG_DISPLAYCONFIG._serialized_start=8570
_CONFIG_DISPLAYCONFIG._serialized_end=11054
_CONFIG_DISPLAYCONFIG_DEPRECATEDGPSCOORDINATEFORMAT._serialized_start=10153
_CONFIG_DISPLAYCONFIG_DEPRECATEDGPSCOORDINATEFORMAT._serialized_end=10196
_CONFIG_DISPLAYCONFIG_DISPLAYUNITS._serialized_start=10198
_CONFIG_DISPLAYCONFIG_DISPLAYUNITS._serialized_end=10268
_CONFIG_DISPLAYCONFIG_OLEDTYPE._serialized_start=10271
_CONFIG_DISPLAYCONFIG_OLEDTYPE._serialized_end=10513
_CONFIG_DISPLAYCONFIG_DISPLAYMODE._serialized_start=10516
_CONFIG_DISPLAYCONFIG_DISPLAYMODE._serialized_end=10731
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION._serialized_start=10734
_CONFIG_DISPLAYCONFIG_COMPASSORIENTATION._serialized_end=11054
_CONFIG_LORACONFIG._serialized_start=11057
_CONFIG_LORACONFIG._serialized_end=15305
_CONFIG_LORACONFIG_REGIONCODE._serialized_start=13099
_CONFIG_LORACONFIG_REGIONCODE._serialized_end=14513
_CONFIG_LORACONFIG_MODEMPRESET._serialized_start=14516
_CONFIG_LORACONFIG_MODEMPRESET._serialized_end=15245
_CONFIG_LORACONFIG_FEM_LNA_MODE._serialized_start=15247
_CONFIG_LORACONFIG_FEM_LNA_MODE._serialized_end=15305
_CONFIG_BLUETOOTHCONFIG._serialized_start=15308
_CONFIG_BLUETOOTHCONFIG._serialized_end=15751
_CONFIG_BLUETOOTHCONFIG_PAIRINGMODE._serialized_start=15633
_CONFIG_BLUETOOTHCONFIG_PAIRINGMODE._serialized_end=15751
_CONFIG_SECURITYCONFIG._serialized_start=15754
_CONFIG_SECURITYCONFIG._serialized_end=17270
_CONFIG_SECURITYCONFIG_PACKETSIGNATUREPOLICY._serialized_start=16676
_CONFIG_SECURITYCONFIG_PACKETSIGNATUREPOLICY._serialized_end=17270
_CONFIG_SESSIONKEYCONFIG._serialized_start=17272
_CONFIG_SESSIONKEYCONFIG._serialized_end=17290
# @@protoc_insertion_point(module_scope)