Merge pull request #645 from meshtastic/2.6

2.6 changes
This commit is contained in:
Ben Meadors 2025-02-27 11:02:34 -06:00 committed by GitHub
commit 2a3a67f043
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 114 additions and 2 deletions

View file

@ -154,6 +154,18 @@ message AdminMessage {
PAXCOUNTER_CONFIG = 12;
}
enum BackupLocation {
/*
* Backup to the internal flash
*/
FLASH = 0;
/*
* Backup to the SD card
*/
SD = 1;
}
/*
* TODO: REPLACE
*/
@ -270,6 +282,20 @@ message AdminMessage {
*/
uint32 set_scale = 23;
/*
* Backup the node's preferences
*/
BackupLocation backup_preferences = 24;
/*
* Restore the node's preferences
*/
BackupLocation restore_preferences = 25;
/*
* Remove backups of the node's preferences
*/
BackupLocation remove_backup_preferences = 26;
/*
* Set the owner for this node
*/

View file

@ -6,3 +6,5 @@
*NodeFilter.hops_away int_size:8
*NodeFilter.channel int_size:8
*NodeHighlight.node_name max_size:16
*GeoPoint.zoom int_size:8
*Map.style max_size:20

View file

@ -66,6 +66,11 @@ message DeviceUIConfig {
* 8 integers for screen calibration data
*/
bytes calibration_data = 14;
/*
* Map related data
*/
Map map_data = 15;
}
@ -135,6 +140,40 @@ message NodeHighlight {
}
message GeoPoint {
/*
* Zoom level
*/
int32 zoom = 1;
/*
* Coordinate: latitude
*/
int32 latitude = 2;
/*
* Coordinate: longitude
*/
int32 longitude = 3;
}
message Map {
/*
* Home coordinates
*/
GeoPoint home = 1;
/*
* Map tile style
*/
string style = 2;
/*
* Map scroll follows GPS
*/
bool follow_gps = 3;
}
enum Theme {
/*
* Dark

View file

@ -6,6 +6,7 @@ import "meshtastic/channel.proto";
import "meshtastic/mesh.proto";
import "meshtastic/telemetry.proto";
import "meshtastic/config.proto";
import "meshtastic/localonly.proto";
import "nanopb.proto";
option csharp_namespace = "Meshtastic.Protobufs";
@ -221,11 +222,20 @@ message DeviceState {
* The mesh's nodes with their available gpio pins for RemoteHardware module
*/
repeated NodeRemoteHardwarePin node_remote_hardware_pins = 13;
}
message NodeDatabase {
/*
* A version integer used to invalidate old save files when we make
* incompatible changes This integer is set at build time and is private to
* NodeDB.cpp in the device code.
*/
uint32 version = 1;
/*
* New lite version of NodeDB to decrease memory footprint
*/
repeated NodeInfoLite node_db_lite = 14 [(nanopb).callback_datatype = "std::vector<meshtastic_NodeInfoLite>"];
repeated NodeInfoLite nodes = 2 [(nanopb).callback_datatype = "std::vector<meshtastic_NodeInfoLite>"];
}
/*
@ -244,3 +254,38 @@ message ChannelFile {
*/
uint32 version = 2;
}
/*
* The on-disk backup of the node's preferences
*/
message BackupPreferences {
/*
* The version of the backup
*/
uint32 version = 1;
/*
* The timestamp of the backup (if node has time)
*/
fixed32 timestamp = 2;
/*
* The node's configuration
*/
LocalConfig config = 3;
/*
* The node's module configuration
*/
LocalModuleConfig module_config = 4;
/*
* The node's channels
*/
ChannelFile channels = 5;
/*
* The node's user (owner) information
*/
User owner = 6;
}

View file

@ -2,7 +2,7 @@
*MQTTConfig.address max_size:64
*MQTTConfig.username max_size:64
*MQTTConfig.password max_size:64
*MQTTConfig.password max_size:32
*MQTTConfig.root max_size:32
*AudioConfig.ptt_pin int_size:8