Protobuf definitions for the Meshtastic project
Find a file
mkinney 9f9d770a3a
Update ci.yml
change branch
2021-12-30 10:01:24 -08:00
.github/workflows Update ci.yml 2021-12-30 10:01:24 -08:00
.vscode Add vscode-proto3 extension recommendation 2021-02-10 10:43:25 +11:00
notused add protolint; make all files indentation consistent with 2 spaces 2021-11-30 11:45:01 -08:00
.protolint.yml add protolint; make all files indentation consistent with 2 spaces 2021-11-30 11:45:01 -08:00
admin.options pull admin plugin out of core proto 2021-02-25 20:35:51 +08:00
admin.proto fix some spacing warning; leaving other warnings to see if ci will fail 2021-12-30 09:57:14 -08:00
apponly.proto add protolint; make all files indentation consistent with 2 spaces 2021-11-30 11:45:01 -08:00
channel.options move channel and settings to their own proto files 2021-02-27 13:16:43 +08:00
channel.proto Add additional channel configs 2021-12-06 14:34:11 -08:00
deviceonly.options move radioconfig and channels out of deviicestate 2021-03-11 13:01:22 +08:00
deviceonly.proto add protolint; make all files indentation consistent with 2 spaces 2021-11-30 11:45:01 -08:00
environmental_measurement.proto add protolint; make all files indentation consistent with 2 spaces 2021-11-30 11:45:01 -08:00
LICENSE Initial commit 2020-03-02 09:44:55 -08:00
mesh.options Reduce size of airtime repeated struct in mynodeinfo 2021-12-07 11:46:21 -08:00
mesh.proto Build tapback support into the meshpacket 2021-12-29 09:12:10 -08:00
mqtt.options move ServiceEnvelope (MQTT) into the device code 2021-04-03 12:13:13 +08:00
mqtt.proto fix caps and initial spacing on comments 2021-11-30 12:02:16 -08:00
portnums.proto add protolint; make all files indentation consistent with 2 spaces 2021-11-30 11:45:01 -08:00
radioconfig.options Add mqtt username and password to user preferences 2021-12-20 19:54:03 +13:00
radioconfig.proto Update radioconfig.proto with better documentation 2021-12-29 06:29:03 +13:00
README.md add protolint; make all files indentation consistent with 2 spaces 2021-11-30 11:45:01 -08:00
remote_hardware.proto add protolint; make all files indentation consistent with 2 spaces 2021-11-30 11:45:01 -08:00
storeforward.proto Update storeforward.proto 2021-12-08 23:14:03 -08:00

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