generated/mesh.pbenum
library
Classes
-
Constants
-
Shared constants between device and phone
-
CriticalErrorCode
-
Error codes for critical errors
The device might report these fault codes on the screen.
If you encounter a fault code, please post on the meshtastic.discourse.group
and we'll try to help.
-
ExcludedModules
-
Enum for modules excluded from a device's configuration.
Each value represents a ModuleConfigType that can be toggled as excluded
by setting its corresponding bit in the
excluded_modules
bitmask field.
-
FirmwareEdition
-
Enum to indicate to clients whether this firmware is a special firmware build, like an event.
The first 16 values are reserved for non-event special firmwares, like the Smart Citizen use case.
-
HardwareModel
-
Note: these enum names must EXACTLY match the string used in the device
bin/build-all.sh script.
Because they will be used to find firmware filenames in the android app for OTA updates.
To match the old style filenames, _ is converted to -, p is converted to .
-
LogRecord_Level
-
Log levels, chosen to match python logging conventions.
-
MeshPacket_Delayed
-
Identify if this is a delayed packet
-
MeshPacket_Priority
-
The priority of this message for sending.
Higher priorities are sent first (when managing the transmit queue).
This field is never sent over the air, it is only used internally inside of a local device node.
API clients (either on the local node or connected directly to the node)
can set this parameter if necessary.
(values must be <= 127 to keep protobuf field to one byte in size.
Detailed background on this field:
I noticed a funny side effect of lora being so slow: Usually when making
a protocol there isn’t much need to use message priority to change the order
of transmission (because interfaces are fairly fast).
But for lora where packets can take a few seconds each, it is very important
to make sure that critical packets are sent ASAP.
In the case of meshtastic that means we want to send protocol acks as soon as possible
(to prevent unneeded retransmissions), we want routing messages to be sent next,
then messages marked as reliable and finally 'background' packets like periodic position updates.
So I bit the bullet and implemented a new (internal - not sent over the air)
field in MeshPacket called 'priority'.
And the transmission queue in the router object is now a priority queue.
-
MeshPacket_TransportMechanism
-
Enum to identify which transport mechanism this packet arrived over
-
Position_AltSource
-
How the altitude was acquired: manual, GPS int/ext, etc
Default: same as location_source if present
-
Position_LocSource
-
How the location was acquired: manual, onboard GPS, external (EUD) GPS
-
Routing_Error
-
A failure in delivering a message (usually used for routing control messages, but might be provided in addition to ack.fail_id to provide
details on the type of failure).