Meshtastic Protobuf Definitions
Go to file
Jm Casler 5f98af3261 Add group_id to Data 2022-02-19 22:32:11 -08:00
.github/workflows Revert "Create blank.yml" 2022-01-31 12:48:49 -07:00
.vscode
notused
.protolint.yaml
LICENSE
README.md Update README.md 2022-01-20 10:03:25 -08:00
admin.options
admin.proto Shutdown admin message 2022-01-20 18:45:47 -06:00
apponly.proto
cannedmessages.options broke out canned messages 2022-01-19 10:54:26 -08:00
cannedmessages.proto broke out canned messages 2022-01-19 10:54:26 -08:00
channel.options
channel.proto Update with new default modem configurations 2022-02-14 17:56:17 -08:00
deviceonly.options
deviceonly.proto Removed legacy LegacyRadioConfig and LegacyPreferences 2022-02-14 19:54:21 -08:00
environmental_measurement.proto Add voltage and current for upcoming sensors 2022-01-27 07:14:54 -06:00
mesh.options Remove deprecated protos. 2022-02-14 20:07:33 -08:00
mesh.proto Add group_id to Data 2022-02-19 22:32:11 -08:00
mqtt.options
mqtt.proto
portnums.proto
radioconfig.options need size eventho deprecated 2022-01-19 16:57:45 -08:00
radioconfig.proto Add canned_message_plugin_messages back 2022-02-14 20:34:10 -08:00
remote_hardware.proto
storeforward.proto

README.md

Meshtastic-protobufs

Open in Visual Studio Code CI

The protobuf definitions for the Meshtastic project (used by apps and the device code)

For questions on using these protobufs please post in our forum. We are friendly and we love people building/extending this work.

For documentation please visit:

For more information on protobufs (and tools to use them with the language of your choice) see

We are not placing any of these defs inside a package, because if you do the resulting nanopb version is super verbose package mesh.

Protobuf build instructions:

  • To build java classes for reading writing:
  • protoc -I=. --java_out /tmp mesh.proto

To generate Nanopb c code:

  • /home/kevinh/packages/nanopb-0.4.4-linux-x86/generator-bin/protoc --nanopb_out=/tmp -I=app/src/main/proto mesh.proto

Nanopb binaries available here:

To lint:

  • Install protolint: brew tap yoheimuta/protolint; brew install protolint
  • Run it from the main directory: protolint lint .
  • (optional) Have it fix the mundane warnings: protolint lint -fix .
  • See https://github.com/yoheimuta/protolint for more info