Skip to content

Commit 6587a25

Browse files
committed
Merge branch 'master' of github.com:meshtastic/Meshtastic-protobufs
2 parents a6d380f + 854bb24 commit 6587a25

20 files changed

+676
-66
lines changed

.github/pull_request_template.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,21 @@
1010

1111
- [ ] All top level messages commented
1212
- [ ] All enum members have unique descriptions
13+
14+
15+
### New Hardware Model Acceptance Policy
16+
17+
Due to limited availability and ongoing support, new Hardware Models will only be accepted from [Meshtastic Backers and Partners](https://meshtastic.com/). The Meshtastic team reserves the right to make exceptions to this policy.
18+
19+
#### Alternative for Community Contributors
20+
21+
You are welcome to use one of the existing DIY hardware models in your PlatformIO environment and create a pull request in the firmware project. Please note the following conditions:
22+
23+
- The device will **not** be officially supported by the core Meshtastic team.
24+
- The device will **not** appear in the [Web Flasher](https://flasher.meshtastic.org/) or Github release assets.
25+
- You will be responsible for ongoing maintenance and support.
26+
- Community-contributed / DIY hardware models are considered experimental and will likely have limited or no testing.
27+
28+
#### Getting Official Support
29+
30+
To have your hardware model officially supported and included in the Meshtastic ecosystem, consider becoming a Meshtastic Backer or Partner. Visit [meshtastic.com](https://meshtastic.com/) for more information about partnership opportunities.

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.DS_Store

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,4 @@ The [Protobuf](https://developers.google.com/protocol-buffers) message definitio
1414
## Stats
1515

1616
![Alt](https://repobeats.axiom.co/api/embed/47e9ee1d81d9c0fdd2b4b5b4c673adb1756f6db5.svg "Repobeats analytics image")
17+

meshtastic/admin.options

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22

33
*AdminMessage.session_passkey max_size:8
44

5+
*AdminMessage.InputEvent.event_code int_size:8
6+
*AdminMessage.InputEvent.kb_char int_size:8
7+
*AdminMessage.InputEvent.touch_x int_size:16
8+
*AdminMessage.InputEvent.touch_y int_size:16
9+
510
*AdminMessage.set_canned_message_module_messages max_size:201
611
*AdminMessage.get_canned_message_module_messages_response max_size:201
712
*AdminMessage.delete_file_request max_size:201

meshtastic/admin.proto

Lines changed: 107 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ message AdminMessage {
7474
SECURITY_CONFIG = 7;
7575

7676
/*
77-
*
77+
* Session key config
7878
*/
7979
SESSIONKEY_CONFIG = 8;
8080

@@ -166,6 +166,28 @@ message AdminMessage {
166166
SD = 1;
167167
}
168168

169+
/*
170+
* Input event message to be sent to the node.
171+
*/
172+
message InputEvent {
173+
/*
174+
* The input event code
175+
*/
176+
uint32 event_code = 1;
177+
/*
178+
* Keyboard character code
179+
*/
180+
uint32 kb_char = 2;
181+
/*
182+
* The touch X coordinate
183+
*/
184+
uint32 touch_x = 3;
185+
/*
186+
* The touch Y coordinate
187+
*/
188+
uint32 touch_y = 4;
189+
}
190+
169191
/*
170192
* TODO: REPLACE
171193
*/
@@ -296,6 +318,13 @@ message AdminMessage {
296318
* Remove backups of the node's preferences
297319
*/
298320
BackupLocation remove_backup_preferences = 26;
321+
322+
/*
323+
* Send an input event to the node.
324+
* This is used to trigger physical input events like button presses, touch events, etc.
325+
*/
326+
InputEvent send_input_event = 27;
327+
299328
/*
300329
* Set the owner for this node
301330
*/
@@ -397,6 +426,16 @@ message AdminMessage {
397426
*/
398427
bool commit_edit_settings = 65;
399428

429+
/*
430+
* Add a contact (User) to the nodedb
431+
*/
432+
SharedContact add_contact = 66;
433+
434+
/*
435+
* Initiate or respond to a key verification request
436+
*/
437+
KeyVerificationAdmin key_verification = 67;
438+
400439
/*
401440
* Tell the node to factory reset config everything; all device state and configuration will be returned to factory defaults and BLE bonds will be cleared.
402441
*/
@@ -472,3 +511,70 @@ message NodeRemoteHardwarePinsResponse {
472511
*/
473512
repeated NodeRemoteHardwarePin node_remote_hardware_pins = 1;
474513
}
514+
515+
message SharedContact {
516+
/*
517+
* The node number of the contact
518+
*/
519+
uint32 node_num = 1;
520+
521+
/*
522+
* The User of the contact
523+
*/
524+
User user = 2;
525+
526+
/*
527+
* Add this contact to the blocked / ignored list
528+
*/
529+
bool should_ignore = 3;
530+
}
531+
532+
/*
533+
* This message is used by a client to initiate or complete a key verification
534+
*/
535+
message KeyVerificationAdmin {
536+
/*
537+
* Three stages of this request.
538+
*/
539+
enum MessageType {
540+
541+
/*
542+
* This is the first stage, where a client initiates
543+
*/
544+
INITIATE_VERIFICATION = 0;
545+
546+
/*
547+
* After the nonce has been returned over the mesh, the client prompts for the security number
548+
* And uses this message to provide it to the node.
549+
*/
550+
PROVIDE_SECURITY_NUMBER = 1;
551+
552+
/*
553+
* Once the user has compared the verification message, this message notifies the node.
554+
*/
555+
DO_VERIFY = 2;
556+
557+
/*
558+
* This is the cancel path, can be taken at any point
559+
*/
560+
DO_NOT_VERIFY = 3;
561+
562+
}
563+
564+
MessageType message_type = 1;
565+
566+
/*
567+
* The nodenum we're requesting
568+
*/
569+
uint32 remote_nodenum = 2;
570+
571+
/*
572+
* The nonce is used to track the connection
573+
*/
574+
uint64 nonce = 3;
575+
576+
/*
577+
* The 4 digit code generated by the remote node, and communicated outside the mesh
578+
*/
579+
optional uint32 security_number = 4;
580+
}

meshtastic/config.options

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# longest current is 45 chars, plan with a bit of buffer
22
*DeviceConfig.tzdef max_size:65
3+
*DeviceConfig.buzzer_mode int_size:8
4+
35

46
*NetworkConfig.wifi_ssid max_size:33
57
*NetworkConfig.wifi_psk max_size:65

meshtastic/config.proto

Lines changed: 63 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ message Config {
4141
* Description: Combination of both ROUTER and CLIENT. Not for mobile devices.
4242
* Deprecated in v2.3.15 because improper usage is impacting public meshes: Use ROUTER or CLIENT instead.
4343
*/
44-
44+
4545
ROUTER_CLIENT = 3 [deprecated = true];
4646

4747
/*
@@ -150,6 +150,36 @@ message Config {
150150
CORE_PORTNUMS_ONLY = 5;
151151
}
152152

153+
/*
154+
* Defines buzzer behavior for audio feedback
155+
*/
156+
enum BuzzerMode {
157+
/*
158+
* Default behavior.
159+
* Buzzer is enabled for all audio feedback including button presses and alerts.
160+
*/
161+
ALL_ENABLED = 0;
162+
163+
/*
164+
* Disabled.
165+
* All buzzer audio feedback is disabled.
166+
*/
167+
DISABLED = 1;
168+
169+
/*
170+
* Notifications Only.
171+
* Buzzer is enabled only for notifications and alerts, but not for button presses.
172+
* External notification config determines the specifics of the notification behavior.
173+
*/
174+
NOTIFICATIONS_ONLY = 2;
175+
176+
/*
177+
* Non-notification system buzzer tones only.
178+
* Buzzer is enabled only for non-notification tones such as button presses, startup, shutdown, but not for alerts.
179+
*/
180+
SYSTEM_ONLY = 3;
181+
}
182+
153183
/*
154184
* Sets the role of node
155185
*/
@@ -207,9 +237,15 @@ message Config {
207237
string tzdef = 11;
208238

209239
/*
210-
* If true, disable the default blinking LED (LED_PIN) behavior on the device
240+
* If true, disable the default blinking LED (LED_PIN) behavior on the device
211241
*/
212242
bool led_heartbeat_disabled = 12;
243+
244+
/*
245+
* Controls buzzer behavior for audio feedback
246+
* Defaults to ENABLED
247+
*/
248+
BuzzerMode buzzer_mode = 13;
213249
}
214250

215251
/*
@@ -380,7 +416,7 @@ message Config {
380416
*/
381417
message PowerConfig {
382418
/*
383-
* Description: Will sleep everything as much as possible, for the tracker and sensor role this will also include the lora radio.
419+
* Description: Will sleep everything as much as possible, for the tracker and sensor role this will also include the lora radio.
384420
* 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.
385421
* Technical Details: Works for ESP32 devices and NRF52 devices in the Sensor or Tracker roles
386422
*/
@@ -434,7 +470,7 @@ message Config {
434470
* If non-zero, we want powermon log outputs. With the particular (bitfield) sources enabled.
435471
* Note: we picked an ID of 32 so that lower more efficient IDs can be used for more frequently used options.
436472
*/
437-
uint64 powermon_enables = 32;
473+
uint64 powermon_enables = 32;
438474
}
439475

440476
/*
@@ -492,7 +528,7 @@ message Config {
492528
string wifi_psk = 4;
493529

494530
/*
495-
* NTP server to use if WiFi is conneced, defaults to `0.pool.ntp.org`
531+
* NTP server to use if WiFi is conneced, defaults to `meshtastic.pool.ntp.org`
496532
*/
497533
string ntp_server = 5;
498534

@@ -521,6 +557,11 @@ message Config {
521557
*/
522558
uint32 enabled_protocols = 10;
523559

560+
/*
561+
* Enable/Disable ipv6 support
562+
*/
563+
bool ipv6_enabled = 11;
564+
524565
/*
525566
* Available flags auxiliary network protocols
526567
*/
@@ -603,24 +644,29 @@ message Config {
603644
*/
604645
enum OledType {
605646
/*
606-
* Default / Auto
647+
* Default / Autodetect
607648
*/
608649
OLED_AUTO = 0;
609650

610651
/*
611-
* Default / Auto
652+
* Default / Autodetect
612653
*/
613654
OLED_SSD1306 = 1;
614655

615656
/*
616-
* Default / Auto
657+
* Default / Autodetect
617658
*/
618659
OLED_SH1106 = 2;
619660

620661
/*
621662
* Can not be auto detected but set by proto. Used for 128x128 screens
622663
*/
623664
OLED_SH1107 = 3;
665+
666+
/*
667+
* Can not be auto detected but set by proto. Used for 128x64 screens
668+
*/
669+
OLED_SH1107_128_64 = 4;
624670
}
625671

626672
/*
@@ -850,21 +896,26 @@ message Config {
850896
* Singapore 923mhz
851897
*/
852898
SG_923 = 18;
853-
899+
854900
/*
855901
* Philippines 433mhz
856902
*/
857903
PH_433 = 19;
858-
904+
859905
/*
860906
* Philippines 868mhz
861907
*/
862908
PH_868 = 20;
863-
909+
864910
/*
865911
* Philippines 915mhz
866912
*/
867913
PH_915 = 21;
914+
/*
915+
* Australia / New Zealand 433MHz
916+
*/
917+
ANZ_433 = 22;
918+
868919
}
869920

870921
/*
@@ -1139,4 +1190,4 @@ message Config {
11391190
SessionkeyConfig sessionkey = 9;
11401191
DeviceUIConfig device_ui = 10;
11411192
}
1142-
}
1193+
}

meshtastic/device_ui.options

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,10 @@
22
*DeviceUIConfig.screen_timeout int_size:16
33
*DeviceUIConfig.ring_tone_id int_size:8
44
*DeviceUIConfig.calibration_data max_size:16
5+
*DeviceUIConfig.compass_mode int_size:8
56
*NodeFilter.node_name max_size:16
67
*NodeFilter.hops_away int_size:8
78
*NodeFilter.channel int_size:8
89
*NodeHighlight.node_name max_size:16
910
*GeoPoint.zoom int_size:8
10-
*Map.style max_size:20
11+
*Map.style max_size:20

0 commit comments

Comments
 (0)