Meshtastic Protobuf Definitions
Go to file
Jm Casler ba3459579c
Merge branch 'meshtastic:master' into master
2021-12-09 11:22:24 -08:00
.github/workflows
.vscode
notused
.protolint.yml
LICENSE
README.md
admin.options
admin.proto Add get_owner_request & get_owner_respons variants 2021-12-09 19:21:30 +11:00
apponly.proto
channel.options
channel.proto Add additional channel configs 2021-12-06 14:34:11 -08:00
deviceonly.options
deviceonly.proto
environmental_measurement.proto
mesh.options Reduce size of airtime repeated struct in mynodeinfo 2021-12-07 11:46:21 -08:00
mesh.proto Add has_wifi for sacha 2021-12-09 11:19:11 -08:00
mqtt.options
mqtt.proto
portnums.proto
radioconfig.options
radioconfig.proto
remote_hardware.proto
storeforward.proto Update storeforward.proto 2021-12-08 23:14:03 -08:00

README.md

Meshtastic-protobufs

Open in Visual Studio Code

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