Protocol Documentation
Table of Contents
Top
frequenz/api/microgrid/meter.proto
Data
Meter data.
Error
Error message.
The meter metadata.
| Field |
Type |
Label |
Description |
| type |
Type |
|
The meter type. |
Meter
Meter details
| Field |
Type |
Label |
Description |
| properties |
Properties |
|
The component properties |
| state |
State |
|
The meter's state. |
| errors |
Error |
repeated |
A list of errors encountered the component. An empty list implies no error. |
| data |
Data |
|
A meter data object. |
Properties
Meter properties.
| Field |
Type |
Label |
Description |
| firmware_ver |
string |
|
The firmware version of the component. |
State
State message.
| Field |
Type |
Label |
Description |
| component_state |
ComponentState |
|
The state of the overall component. |
ComponentState
Enumerated meter states.
| Name |
Number |
Description |
| COMPONENT_STATE_UNSPECIFIED |
0 |
Unspecified state. |
| COMPONENT_STATE_OK |
1 |
The meter is behaving as expected. |
| COMPONENT_STATE_ERROR |
2 |
The meter is in an error state. |
ErrorCode
Enumerated meter error codes.
| Name |
Number |
Description |
| ERROR_CODE_UNSPECIFIED |
0 |
Unspecified. |
Type
Enumerated meter types.
| Name |
Number |
Description |
| TYPE_UNSPECIFIED |
0 |
|
| TYPE_PRODUCTION |
1 |
AC production power meter / inverter production AC power (fallback) |
| TYPE_CONSUMPTION |
2 |
Consumption meter |
| TYPE_FEED_IN |
3 |
Exported to grid meter |
| TYPE_PURCHASED |
4 |
Imported power from grid meter |
Scalar Value Types
| .proto Type |
Notes |
C++ |
Java |
Python |
Go |
C# |
PHP |
Ruby |
| double |
|
double |
double |
float |
float64 |
double |
float |
Float |
| float |
|
float |
float |
float |
float32 |
float |
float |
Float |
| int32 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
| int64 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
| uint32 |
Uses variable-length encoding. |
uint32 |
int |
int/long |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
| uint64 |
Uses variable-length encoding. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum or Fixnum (as required) |
| sint32 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
| sint64 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
| fixed32 |
Always four bytes. More efficient than uint32 if values are often greater than 2^28. |
uint32 |
int |
int |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
| fixed64 |
Always eight bytes. More efficient than uint64 if values are often greater than 2^56. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum |
| sfixed32 |
Always four bytes. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
| sfixed64 |
Always eight bytes. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
| bool |
|
bool |
boolean |
boolean |
bool |
bool |
boolean |
TrueClass/FalseClass |
| string |
A string must always contain UTF-8 encoded or 7-bit ASCII text. |
string |
String |
str/unicode |
string |
string |
string |
String (UTF-8) |
| bytes |
May contain any arbitrary sequence of bytes. |
string |
ByteString |
str |
[]byte |
ByteString |
string |
String (ASCII-8BIT) |