Add optional keywords to stuff that can be "truly zero" within mesh packet payloads

This commit is contained in:
Ian McEwen 2024-08-06 17:37:33 -07:00 committed by Jonathan Bennett
parent eed2033cc3
commit a3242bd0b4
3 changed files with 50 additions and 49 deletions

View file

@ -23,17 +23,17 @@ message Position {
* The new preferred location encoding, multiply by 1e-7 to get degrees
* in floating point
*/
sfixed32 latitude_i = 1;
optional sfixed32 latitude_i = 1;
/*
* TODO: REPLACE
*/
sfixed32 longitude_i = 2;
optional sfixed32 longitude_i = 2;
/*
* In meters above MSL (but see issue #359)
*/
int32 altitude = 3;
optional int32 altitude = 3;
/*
* This is usually not sent over the mesh (to save space), but it is sent
@ -122,12 +122,12 @@ message Position {
/*
* HAE altitude in meters - can be used instead of MSL altitude
*/
sint32 altitude_hae = 9;
optional sint32 altitude_hae = 9;
/*
* Geoidal separation in meters
*/
sint32 altitude_geoidal_separation = 10;
optional sint32 altitude_geoidal_separation = 10;
/*
* Horizontal, Vertical and Position Dilution of Precision, in 1/100 units
@ -163,12 +163,12 @@ message Position {
* - "yaw" indicates a relative rotation about the vertical axis
* TODO: REMOVE/INTEGRATE
*/
uint32 ground_speed = 15;
optional uint32 ground_speed = 15;
/*
* TODO: REPLACE
*/
uint32 ground_track = 16;
optional uint32 ground_track = 16;
/*
* GPS fix quality (from NMEA GxGGA statement or similar)
@ -853,12 +853,12 @@ message Waypoint {
/*
* latitude_i
*/
sfixed32 latitude_i = 2;
optional sfixed32 latitude_i = 2;
/*
* longitude_i
*/
sfixed32 longitude_i = 3;
optional sfixed32 longitude_i = 3;
/*
* Time the waypoint is to expire (epoch)

View file

@ -153,6 +153,7 @@ message ModuleConfig {
* Works as a sort of status heartbeat for peace of mind
*/
uint32 state_broadcast_secs = 3;
/*
* Send ASCII bell with alert message
* Useful for triggering ext. notification on bell

View file

@ -15,27 +15,27 @@ message DeviceMetrics {
/*
* 0-100 (>100 means powered)
*/
uint32 battery_level = 1;
optional uint32 battery_level = 1;
/*
* Voltage measured
*/
float voltage = 2;
optional float voltage = 2;
/*
* Utilization for the current channel, including well formed TX, RX and malformed RX (aka noise).
*/
float channel_utilization = 3;
optional float channel_utilization = 3;
/*
* Percent of airtime for transmission used within the last hour.
*/
float air_util_tx = 4;
optional float air_util_tx = 4;
/*
* How long the device has been running since the last reboot (in seconds)
*/
uint32 uptime_seconds = 5;
optional uint32 uptime_seconds = 5;
}
/*
@ -45,89 +45,89 @@ message EnvironmentMetrics {
/*
* Temperature measured
*/
float temperature = 1;
optional float temperature = 1;
/*
* Relative humidity percent measured
*/
float relative_humidity = 2;
optional float relative_humidity = 2;
/*
* Barometric pressure in hPA measured
*/
float barometric_pressure = 3;
optional float barometric_pressure = 3;
/*
* Gas resistance in MOhm measured
*/
float gas_resistance = 4;
optional float gas_resistance = 4;
/*
* Voltage measured (To be depreciated in favor of PowerMetrics in Meshtastic 3.x)
*/
float voltage = 5;
optional float voltage = 5;
/*
* Current measured (To be depreciated in favor of PowerMetrics in Meshtastic 3.x)
*/
float current = 6;
optional float current = 6;
/*
* relative scale IAQ value as measured by Bosch BME680 . value 0-500.
* Belongs to Air Quality but is not particle but VOC measurement. Other VOC values can also be put in here.
*/
uint32 iaq = 7;
optional uint32 iaq = 7;
/*
* RCWL9620 Doppler Radar Distance Sensor, used for water level detection. Float value in mm.
*/
float distance = 8;
optional float distance = 8;
/*
* VEML7700 high accuracy ambient light(Lux) digital 16-bit resolution sensor.
*/
float lux = 9;
optional float lux = 9;
/*
* VEML7700 high accuracy white light(irradiance) not calibrated digital 16-bit resolution sensor.
*/
float white_lux = 10;
optional float white_lux = 10;
/*
* Infrared lux
*/
float ir_lux = 11;
optional float ir_lux = 11;
/*
* Ultraviolet lux
*/
float uv_lux = 12;
optional float uv_lux = 12;
/*
* Wind direction in degrees
* 0 degrees = North, 90 = East, etc...
*/
uint32 wind_direction = 13;
optional uint32 wind_direction = 13;
/*
* Wind speed in m/s
*/
float wind_speed = 14;
optional float wind_speed = 14;
/*
* Weight in KG
*/
float weight = 15;
optional float weight = 15;
/*
* Wind gust in m/s
*/
float wind_gust = 16;
optional float wind_gust = 16;
/*
* Wind lull in m/s
*/
float wind_lull = 17;
optional float wind_lull = 17;
}
/*
@ -137,32 +137,32 @@ message PowerMetrics {
/*
* Voltage (Ch1)
*/
float ch1_voltage = 1;
optional float ch1_voltage = 1;
/*
* Current (Ch1)
*/
float ch1_current = 2;
optional float ch1_current = 2;
/*
* Voltage (Ch2)
*/
float ch2_voltage = 3;
optional float ch2_voltage = 3;
/*
* Current (Ch2)
*/
float ch2_current = 4;
optional float ch2_current = 4;
/*
* Voltage (Ch3)
*/
float ch3_voltage = 5;
optional float ch3_voltage = 5;
/*
* Current (Ch3)
*/
float ch3_current = 6;
optional float ch3_current = 6;
}
/*
@ -172,62 +172,62 @@ message AirQualityMetrics {
/*
* Concentration Units Standard PM1.0
*/
uint32 pm10_standard = 1;
optional uint32 pm10_standard = 1;
/*
* Concentration Units Standard PM2.5
*/
uint32 pm25_standard = 2;
optional uint32 pm25_standard = 2;
/*
* Concentration Units Standard PM10.0
*/
uint32 pm100_standard = 3;
optional uint32 pm100_standard = 3;
/*
* Concentration Units Environmental PM1.0
*/
uint32 pm10_environmental = 4;
optional uint32 pm10_environmental = 4;
/*
* Concentration Units Environmental PM2.5
*/
uint32 pm25_environmental = 5;
optional uint32 pm25_environmental = 5;
/*
* Concentration Units Environmental PM10.0
*/
uint32 pm100_environmental = 6;
optional uint32 pm100_environmental = 6;
/*
* 0.3um Particle Count
*/
uint32 particles_03um = 7;
optional uint32 particles_03um = 7;
/*
* 0.5um Particle Count
*/
uint32 particles_05um = 8;
optional uint32 particles_05um = 8;
/*
* 1.0um Particle Count
*/
uint32 particles_10um = 9;
optional uint32 particles_10um = 9;
/*
* 2.5um Particle Count
*/
uint32 particles_25um = 10;
optional uint32 particles_25um = 10;
/*
* 5.0um Particle Count
*/
uint32 particles_50um = 11;
optional uint32 particles_50um = 11;
/*
* 10.0um Particle Count
*/
uint32 particles_100um = 12;
optional uint32 particles_100um = 12;
}
/*