forked from meshtastic/protobufs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdeviceonly.proto
100 lines (82 loc) · 2.34 KB
/
deviceonly.proto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
syntax = "proto3";
option java_package = "com.geeksville.mesh";
option optimize_for = LITE_RUNTIME;
option go_package = "github.com/meshtastic/gomeshproto";
import "channel.proto";
import "mesh.proto";
import "radioconfig.proto";
option java_outer_classname = "DeviceOnly";
/*
* This is a stub version of the old 1.1 representation of RadioConfig.
* But only keeping the region info.
* The device firmware uses this stub while migrating old nodes to the new preferences system.
*/
message LegacyRadioConfig {
message LegacyPreferences {
/*
* The region code for my radio (US, CN, EU433, etc...)
*/
RegionCode region = 15;
}
LegacyPreferences preferences = 1;
}
/*
* This message is never sent over the wire, but it is used for serializing DB
* state to flash in the device code
* FIXME, since we write this each time we enter deep sleep (and have infinite
* flash) it would be better to use some sort of append only data structure for
* the receive queue and use the preferences store for the other stuff
*/
message DeviceState {
/*
* Was secondary_channels before 1.2
*/
reserved 12;
/*
* Moved to its own file, but we keep this here so we can automatically migrate old radio.region settings
*/
LegacyRadioConfig legacyRadio = 1;
/*
* Read only settings/info about this node
*/
MyNodeInfo my_node = 2;
/*
* My owner info
*/
User owner = 3;
repeated NodeInfo node_db = 4;
/*
* Received packets saved for delivery to the phone
*/
repeated MeshPacket receive_queue = 5;
/*
* 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 = 8;
/*
* We keep the last received text message (only) stored in the device flash,
* so we can show it on the screen.
* Might be null
*/
MeshPacket rx_text_message = 7;
/*
* Used only during development.
* Indicates developer is testing and changes should never be saved to flash.
*/
bool no_save = 9;
/*
* Some GPSes seem to have bogus settings from the factory, so we always do one factory reset.
*/
bool did_gps_reset = 11;
}
/*
* The on-disk saved channels
*/
message ChannelFile {
/*
* The channels our node knows about
*/
repeated Channel channels = 1;
}