Hi, I’d like to propose using google protobuf for a communication protocol. I would be happy to help implement the same and look forward to all your views on the subject.
When I read the documentation for the communication protocol, it seems very opaque and obscure to me. I also do not quite get the reason for using the JSON files in the protocol. For every release, the protocol should be fixed, not something that keeps changing. I have not gotten into too much detail in the current communication protocol. Could someone give the thought process behind the current implementation?
It also looks like there would be decent overhead for the current method of communication. In some places, I’m seeing that it takes around 7s to download the file, initially?
What if we define all the fields and the data it should contain, perhaps make a table of “registers” in the odrive board that store the data and we read/write from it? Using protobuf, we should be able to access classes in the form of
Lets use a fixed, stream-based simple communication algorithm? Put this in a protobuf file, it supports python and c++ so making a library should be easy.
Protobuf also seems to have features for working with earlier versions of protocol and implementation on embedded devices.