Skip to main content

Protobuffers

Overview

Protobuffers are a type of structured messages that allow us to efficiently pass information between multiple subsystems. They have also been defined in this page of the wiki: Starting with Protobufs.

Structure

The protobuffers are divided into components based on the type of information they reference. Through Starting with Protobufs page you can access a Github Repository called "ERC Protobufs" in which you can see all the protobuffers and their structure, but as an example we can focus on "components/basestation/detected_object.proto". Since it is a protobuffer that will mostly be passed from Jonny Boi into the basestation, then it wouldn't make much sense to place it in the driving_board component, for instance. The protobuffer documentation covers how to begin writing a custom message for anything you may see fit.

Microcontroller Protobuffers

Jonny Boy will receive periodic updates from the microcontrollers in the form of diagnostic messages. They will be sent and received over UDP on the comms node that doubles as a UDP Server.