Meshtastic Protobuf Definitions
Go to file
Jm Casler 692e62870f
Merge branch 'meshtastic:master' into router
2022-02-27 00:59:32 -08:00
.github
.vscode
notused
.protolint.yaml
LICENSE
README.md
admin.options More update plugin to module, mostly cannedmessages 2022-02-27 00:58:46 -08:00
admin.proto More update plugin to module, mostly cannedmessages 2022-02-27 00:58:46 -08:00
apponly.proto
cannedmessages.options More update plugin to module, mostly cannedmessages 2022-02-27 00:58:46 -08:00
cannedmessages.proto More update plugin to module, mostly cannedmessages 2022-02-27 00:58:46 -08:00
channel.options
channel.proto
deviceonly.options
deviceonly.proto
mesh.options More update plugin to module, mostly cannedmessages 2022-02-27 00:58:46 -08:00
mesh.proto More update plugin to module, mostly cannedmessages 2022-02-27 00:58:46 -08:00
mqtt.options
mqtt.proto
portnums.proto More update plugin to module, mostly cannedmessages 2022-02-27 00:58:46 -08:00
radioconfig.options
radioconfig.proto More update plugin to module, mostly cannedmessages 2022-02-27 00:58:46 -08:00
remote_hardware.proto More update plugin to module, mostly cannedmessages 2022-02-27 00:58:46 -08:00
storeforward.proto
telemetry.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