@helium/proto
v2.2.0
Published
Helium protobuf definitions compiled to JS with TypeScript types
Downloads
3,455
Keywords
Readme
Using this repository requires protobuf
's protoc
to be installed. The
package to be installed differs per host platform.
Contributing
- Protobuf
message
definitions live in either:src/service/*.proto
if only used in gRPC service definitions, orsrc/*.proto
if used by service-free code or shared across gRPC services
- Avoid
float
in Protobufs because representations differ across hardware architectures- There are many floating point representations from IEEE, plus others
- i.e., some range of interior digits are random per float spec
- Frequency should use
uint32
and should be in Hz - rssi or signal is always negative, thus use
sint32
and is in deci-dbm (akaddbm
) which isdbm * 10
- snr is signal-to-noise ratio and should be
uint32
- Fetch and share time in nanos, then truncate to appropriate granularity as needed
- e.g., get from OS in nanos
- Reject any PR unless units are documented inline within Protobuf definition
- Document units of fields
- When exceptions to the above occur, please explain why within comments