From 9f108cdfa591d21ddbf98c1cb929db83e4e38163 Mon Sep 17 00:00:00 2001 From: Bob Steers Date: Tue, 9 Apr 2024 16:51:19 +0200 Subject: [PATCH] use ReadMode in requests and codec --- brewblox-proto | 2 +- brewblox_devcon_spark/broadcast.py | 3 +- brewblox_devcon_spark/codec/__init__.py | 31 ++- brewblox_devcon_spark/codec/opts.py | 14 -- brewblox_devcon_spark/codec/pb2.py | 2 - brewblox_devcon_spark/codec/processor.py | 58 +++-- .../proto-compiled/ActuatorAnalogMock_pb2.py | 20 +- .../codec/proto-compiled/ActuatorLogic_pb2.py | 46 ++-- .../proto-compiled/ActuatorOffset_pb2.py | 22 +- .../codec/proto-compiled/ActuatorPwm_pb2.py | 16 +- .../codec/proto-compiled/Constraints_pb2.py | 74 ++++-- .../codec/proto-compiled/DS2408_pb2.py | 16 +- .../codec/proto-compiled/DS2413_pb2.py | 10 +- .../proto-compiled/DigitalActuator_pb2.py | 20 +- .../codec/proto-compiled/DigitalInput_pb2.py | 18 +- .../proto-compiled/DisplaySettings_pb2.py | 26 +- .../codec/proto-compiled/EdgeCase_pb2.py | 14 +- .../codec/proto-compiled/FastPwm_pb2.py | 24 +- .../codec/proto-compiled/GpioModule_pb2.py | 75 ++++++ .../codec/proto-compiled/IoArray_pb2.py | 22 +- .../codec/proto-compiled/MotorValve_pb2.py | 18 +- .../proto-compiled/OneWireGpioModule_pb2.py | 61 +---- .../codec/proto-compiled/Pid_pb2.py | 22 +- .../PrecisionAnalogModule_pb2.py | 62 +++++ .../codec/proto-compiled/Screen_pb2.py | 63 +++-- .../codec/proto-compiled/Sequence_pb2.py | 230 +++++++++++------- .../proto-compiled/SetpointProfile_pb2.py | 20 +- .../proto-compiled/SetpointSensorPair_pb2.py | 20 +- .../codec/proto-compiled/Spark3Pins_pb2.py | 12 +- .../codec/proto-compiled/SysInfo_pb2.py | 18 +- .../proto-compiled/TempSensorAnalog_pb2.py | 48 ++++ .../proto-compiled/TempSensorCombi_pb2.py | 12 +- .../proto-compiled/TempSensorExternal_pb2.py | 10 +- .../proto-compiled/TempSensorMock_pb2.py | 18 +- .../proto-compiled/TempSensorOneWire_pb2.py | 8 +- .../codec/proto-compiled/TouchSettings_pb2.py | 39 --- .../codec/proto-compiled/Variables_pb2.py | 30 ++- .../codec/proto-compiled/brewblox_pb2.py | 12 +- .../codec/proto-compiled/command_pb2.py | 22 +- brewblox_devcon_spark/command.py | 161 ++++-------- .../connection/mock_connection.py | 28 +-- brewblox_devcon_spark/const.py | 2 - brewblox_devcon_spark/models.py | 21 +- brewblox_devcon_spark/spark_api.py | 28 +-- brewblox_devcon_spark/utils.py | 4 +- firmware.ini | 12 +- tasks.py | 4 +- test/test_broadcast.py | 10 +- test/test_codec.py | 19 +- test/test_codec_processor.py | 31 ++- test/test_codec_time_utils.py | 3 +- 51 files changed, 890 insertions(+), 671 deletions(-) create mode 100644 brewblox_devcon_spark/codec/proto-compiled/GpioModule_pb2.py create mode 100644 brewblox_devcon_spark/codec/proto-compiled/PrecisionAnalogModule_pb2.py create mode 100644 brewblox_devcon_spark/codec/proto-compiled/TempSensorAnalog_pb2.py delete mode 100644 brewblox_devcon_spark/codec/proto-compiled/TouchSettings_pb2.py diff --git a/brewblox-proto b/brewblox-proto index 041bfba2..619d55b2 160000 --- a/brewblox-proto +++ b/brewblox-proto @@ -1 +1 @@ -Subproject commit 041bfba27b044b143cfc907c152cf25509c3274a +Subproject commit 619d55b27b4b79728f73e74c417c288bda5f03cf diff --git a/brewblox_devcon_spark/broadcast.py b/brewblox_devcon_spark/broadcast.py index 034c0ca2..fc362c6e 100644 --- a/brewblox_devcon_spark/broadcast.py +++ b/brewblox_devcon_spark/broadcast.py @@ -31,7 +31,8 @@ async def run(self): try: if state.is_synchronized(): - blocks, logged_blocks = await self.api.read_all_broadcast_blocks() + blocks = await self.api.read_all_blocks() + logged_blocks = await self.api.read_all_logged_blocks() # Convert list to key/value format suitable for history history_data = { diff --git a/brewblox_devcon_spark/codec/__init__.py b/brewblox_devcon_spark/codec/__init__.py index 18f8c7e4..21bdc003 100644 --- a/brewblox_devcon_spark/codec/__init__.py +++ b/brewblox_devcon_spark/codec/__init__.py @@ -11,10 +11,8 @@ from .. import exceptions, utils from ..models import (DecodedPayload, EncodedPayload, IntermediateRequest, - IntermediateResponse) + IntermediateResponse, ReadMode) from . import lookup, pb2, time_utils, unit_conversion -from .opts import (DateFormatOpt, DecodeOpts, FilterOpt, MetadataOpt, - ProtoEnumOpt) from .processor import ProtobufProcessor DEPRECATED_TYPE_INT = 65533 @@ -41,8 +39,8 @@ def join_type(blockType: str, subtype: Optional[str]) -> str: class Codec: - def __init__(self, strip_readonly=True): - self._processor = ProtobufProcessor(strip_readonly) + def __init__(self, filter_values=True): + self._processor = ProtobufProcessor(filter_values) def encode_request(self, request: IntermediateRequest) -> str: try: @@ -106,7 +104,9 @@ def decode_response(self, b64_encoded: str) -> IntermediateResponse: LOGGER.debug(msg, exc_info=True) raise exceptions.DecodeException(msg) - def encode_payload(self, payload: DecodedPayload) -> EncodedPayload: + def encode_payload(self, + payload: DecodedPayload, + filter_values: bool | None = None) -> EncodedPayload: try: # No encoding required if payload.blockType is None: @@ -139,7 +139,8 @@ def encode_payload(self, payload: DecodedPayload) -> EncodedPayload: message = impl.message_cls() payload = self._processor.pre_encode(message.DESCRIPTOR, - payload.model_copy(deep=True)) + payload.model_copy(deep=True), + filter_values=filter_values) json_format.ParseDict(payload.content, message) content: str = b64encode(message.SerializeToString()).decode() @@ -164,7 +165,8 @@ def encode_payload(self, payload: DecodedPayload) -> EncodedPayload: def decode_payload(self, payload: EncodedPayload, /, - opts: DecodeOpts = DecodeOpts(), + mode: ReadMode = ReadMode.DEFAULT, + filter_values: bool | None = None, ) -> DecodedPayload: try: if payload.blockType == DEPRECATED_TYPE_INT: @@ -183,14 +185,13 @@ def decode_payload(self, if impl: # We have an object lookup, and can decode the content - int_enum = opts.enums == ProtoEnumOpt.INT message = impl.message_cls() message.ParseFromString(b64decode(payload.content)) content: dict = json_format.MessageToDict( message=message, preserving_proto_field_name=True, including_default_value_fields=True, - use_integers_for_enums=int_enum, + use_integers_for_enums=(mode in (ReadMode.STORED, ReadMode.LOGGED)), ) decoded = DecodedPayload( blockId=payload.blockId, @@ -200,7 +201,10 @@ def decode_payload(self, maskMode=payload.maskMode, maskFields=payload.maskFields ) - return self._processor.post_decode(message.DESCRIPTOR, decoded, opts) + return self._processor.post_decode(message.DESCRIPTOR, + decoded, + mode=mode, + filter_values=filter_values) # No object lookup found. Try the interfaces. intf_impl = next((v for v in lookup.CV_INTERFACES.get() @@ -252,11 +256,6 @@ def setup(): 'setup', 'CV', - 'DecodeOpts', - 'ProtoEnumOpt', - 'FilterOpt', - 'MetadataOpt', - 'DateFormatOpt', 'ProtobufProcessor' # utils diff --git a/brewblox_devcon_spark/codec/opts.py b/brewblox_devcon_spark/codec/opts.py index 3764283a..1a7bbb05 100644 --- a/brewblox_devcon_spark/codec/opts.py +++ b/brewblox_devcon_spark/codec/opts.py @@ -2,15 +2,9 @@ Codec options """ -from dataclasses import dataclass from enum import Enum, auto -class FilterOpt(Enum): - ALL = auto() - LOGGED = auto() - - class MetadataOpt(Enum): POSTFIX = auto() TYPED = auto() @@ -25,11 +19,3 @@ class DateFormatOpt(Enum): MILLISECONDS = auto() SECONDS = auto() ISO8601 = auto() - - -@dataclass(frozen=True) -class DecodeOpts(): - filter: FilterOpt = FilterOpt.ALL - metadata: MetadataOpt = MetadataOpt.TYPED - enums: ProtoEnumOpt = ProtoEnumOpt.STR - dates: DateFormatOpt = DateFormatOpt.ISO8601 diff --git a/brewblox_devcon_spark/codec/pb2.py b/brewblox_devcon_spark/codec/pb2.py index fbc58c33..be16e328 100644 --- a/brewblox_devcon_spark/codec/pb2.py +++ b/brewblox_devcon_spark/codec/pb2.py @@ -42,7 +42,6 @@ import TempSensorExternal_pb2 import TempSensorMock_pb2 import TempSensorOneWire_pb2 - import TouchSettings_pb2 import Variables_pb2 import WiFiSettings_pb2 @@ -78,7 +77,6 @@ 'TempSensorExternal_pb2', 'TempSensorMock_pb2', 'TempSensorOneWire_pb2', - 'TouchSettings_pb2', 'Variables_pb2', 'WiFiSettings_pb2', ] diff --git a/brewblox_devcon_spark/codec/processor.py b/brewblox_devcon_spark/codec/processor.py index 02644601..c899638a 100644 --- a/brewblox_devcon_spark/codec/processor.py +++ b/brewblox_devcon_spark/codec/processor.py @@ -15,10 +15,11 @@ from google.protobuf import json_format from google.protobuf.descriptor import Descriptor, FieldDescriptor -from brewblox_devcon_spark.models import DecodedPayload, MaskField, MaskMode +from brewblox_devcon_spark.models import (DecodedPayload, MaskField, MaskMode, + ReadMode) from . import unit_conversion -from .opts import DateFormatOpt, DecodeOpts, FilterOpt, MetadataOpt +from .opts import DateFormatOpt, MetadataOpt from .pb2 import brewblox_pb2 from .time_utils import serialize_datetime @@ -87,9 +88,9 @@ class OptionElement(): class ProtobufProcessor(): _BREWBLOX_PROVIDER: FieldDescriptor = brewblox_pb2.field - def __init__(self, strip_readonly=True): + def __init__(self, filter_values=True): self._converter = unit_conversion.CV.get() - self._strip_readonly = strip_readonly + self._filter_values = filter_values symbols = re.escape('[]<>') self._postfix_pattern = re.compile(''.join([ @@ -227,7 +228,8 @@ def _encode_unit(self, value: float | dict, unit_type: str, postfix: str | None) def pre_encode(self, desc: Descriptor, - payload: DecodedPayload, + payload: DecodedPayload, /, + filter_values: bool | None = None ) -> DecodedPayload: """ Modifies `payload` based on Protobuf options and dict key postfixes. @@ -290,6 +292,9 @@ def pre_encode(self, } } """ + if filter_values is None: + filter_values = self._filter_values + for element in self._walk_elements(desc, payload.content): options = self._field_options(element.field) @@ -297,7 +302,7 @@ def pre_encode(self, del element.obj[element.key] continue - if options.readonly and self._strip_readonly: + if filter_values and options.readonly: del element.obj[element.key] continue @@ -360,8 +365,9 @@ def _convert_value(value: Any) -> str | int | float: def post_decode(self, desc: Descriptor, - payload: DecodedPayload, - opts: DecodeOpts, + payload: DecodedPayload, /, + mode: ReadMode = ReadMode.DEFAULT, + filter_values: bool | None = None, ) -> DecodedPayload: """ Post-processes protobuf data based on protobuf / codec options. @@ -376,14 +382,10 @@ def post_decode(self, * ipv4address: Converts integer IP address to dot string notation. * readonly: Ignored: decoding means reading from controller. * ignored: Strip value from output. - * logged: Tag for filtering output data. + * logged: Tag for filtering output data when using ReadMode.LOGGED. + * stored: Tag for filtering output data when using ReadMode.STORED. * *_invalid_if: Sets value to None if equal to invalid value. - Supported codec options: - * filter: If opts.filter == LOGGED, all values without options.logged are excluded from output. - * metadata: Format used to serialize object metadata. - Determines whether units/links are postfixed or rendered as typed object. - Example: >>> values = { 'settings': { @@ -397,7 +399,7 @@ def post_decode(self, >>> post_decode( ExampleMessage_pb2.ExampleMessage(), values, - DecodeOpts(metadata=MetadataOpt.POSTFIX)) + mode=ReadMode.LOGGED) # ExampleMessage.proto: # @@ -422,6 +424,16 @@ def post_decode(self, } } """ + metadata_opt = MetadataOpt.TYPED + date_fmt_opt = DateFormatOpt.ISO8601 + + if mode == ReadMode.LOGGED: + metadata_opt = MetadataOpt.POSTFIX + date_fmt_opt = DateFormatOpt.SECONDS + + if filter_values is None: + filter_values = self._filter_values + for element in self._walk_elements(desc, payload.content): options = self._field_options(element.field) @@ -438,9 +450,11 @@ def post_decode(self, del element.obj[element.key] continue - if opts.filter == FilterOpt.LOGGED and not options.logged: - del element.obj[element.key] - continue + if filter_values: + if (mode == ReadMode.STORED and not options.stored) \ + or (mode == ReadMode.LOGGED and not options.logged): + del element.obj[element.key] + continue link_type = self.type_name(options.objtype) qty_system_unit = self.unit_name(options.unit) @@ -458,7 +472,7 @@ def _convert_value(value: float | int | str) -> float | int | str | None: else: value = self._converter.to_user_value(value, qty_system_unit) - if opts.metadata == MetadataOpt.TYPED: + if metadata_opt == MetadataOpt.TYPED: value = { '__bloxtype': 'Quantity', 'unit': qty_user_unit, @@ -474,7 +488,7 @@ def _convert_value(value: float | int | str) -> float | int | str | None: if excluded or null_value: value = None - if opts.metadata == MetadataOpt.TYPED: + if metadata_opt == MetadataOpt.TYPED: value = { '__bloxtype': 'Link', 'type': link_type, @@ -496,7 +510,7 @@ def _convert_value(value: float | int | str) -> float | int | str | None: return self.int_to_ipv4(value) if options.datetime: - return serialize_datetime(value, opts.dates) + return serialize_datetime(value, date_fmt_opt) return value @@ -504,7 +518,7 @@ def _convert_value(value: float | int | str) -> float | int | str | None: new_value = element.obj[element.key] # If metadata is postfixed, we may need to update the key - if opts.metadata == MetadataOpt.POSTFIX: + if metadata_opt == MetadataOpt.POSTFIX: if options.objtype: new_key = f'{element.key}<{link_type}>' if options.unit: diff --git a/brewblox_devcon_spark/codec/proto-compiled/ActuatorAnalogMock_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/ActuatorAnalogMock_pb2.py index e66ced65..77936646 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/ActuatorAnalogMock_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/ActuatorAnalogMock_pb2.py @@ -17,15 +17,17 @@ import Claims_pb2 as Claims__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18\x41\x63tuatorAnalogMock.proto\x12\x17\x62lox.ActuatorAnalogMock\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x11\x43onstraints.proto\x1a\x0c\x43laims.proto\"\x93\x04\n\x05\x42lock\x12\x0f\n\x07\x65nabled\x18\r \x01(\x08\x12%\n\rstoredSetting\x18\x0b \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 0\x01\x12(\n\x0e\x64\x65siredSetting\x18\t \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12!\n\x07setting\x18\x01 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x1f\n\x05value\x18\x02 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12 \n\nminSetting\x18\x04 \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 \x12 \n\nmaxSetting\x18\x05 \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 \x12\x1e\n\x08minValue\x18\x06 \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 \x12\x1e\n\x08maxValue\x18\x07 \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 \x12\x44\n\rconstrainedBy\x18\x08 \x01(\x0b\x32-.blox.Constraints.DeprecatedAnalogConstraints\x12\x38\n\x0b\x63onstraints\x18\x0e \x01(\x0b\x32#.blox.Constraints.AnalogConstraints\x12!\n\tclaimedBy\x18\n \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12-\n\x0bsettingMode\x18\x0c \x01(\x0e\x32\x18.blox.Claims.SettingMode:\x0e\x8a\xb5\x18\n\x18\xb1\x02J\x05\x01\x05\x13\x0f\x10\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18\x41\x63tuatorAnalogMock.proto\x12\x17\x62lox.ActuatorAnalogMock\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x11\x43onstraints.proto\x1a\x0c\x43laims.proto\"\xb5\x04\n\x05\x42lock\x12\x17\n\x07\x65nabled\x18\r \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\'\n\rstoredSetting\x18\x0b \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 0\x01x\x01\x12(\n\x0e\x64\x65siredSetting\x18\t \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12!\n\x07setting\x18\x01 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x1f\n\x05value\x18\x02 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\"\n\nminSetting\x18\x04 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 x\x01\x12\"\n\nmaxSetting\x18\x05 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 x\x01\x12 \n\x08minValue\x18\x06 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 x\x01\x12 \n\x08maxValue\x18\x07 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 x\x01\x12\x44\n\rconstrainedBy\x18\x08 \x01(\x0b\x32-.blox.Constraints.DeprecatedAnalogConstraints\x12@\n\x0b\x63onstraints\x18\x0e \x01(\x0b\x32#.blox.Constraints.AnalogConstraintsB\x06\x8a\xb5\x18\x02x\x01\x12!\n\tclaimedBy\x18\n \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12\x35\n\x0bsettingMode\x18\x0c \x01(\x0e\x32\x18.blox.Claims.SettingModeB\x06\x8a\xb5\x18\x02x\x01:\x0e\x8a\xb5\x18\n\x18\xb1\x02J\x05\x01\x05\x13\x0f\x10\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'ActuatorAnalogMock_pb2', _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None + _BLOCK.fields_by_name['enabled']._options = None + _BLOCK.fields_by_name['enabled']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['storedSetting']._options = None - _BLOCK.fields_by_name['storedSetting']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 0\001' + _BLOCK.fields_by_name['storedSetting']._serialized_options = b'\222?\0028 \212\265\030\007\020\200 0\001x\001' _BLOCK.fields_by_name['desiredSetting']._options = None _BLOCK.fields_by_name['desiredSetting']._serialized_options = b'\222?\0028 \212\265\030\007\020\200 (\0010\001' _BLOCK.fields_by_name['setting']._options = None @@ -33,17 +35,21 @@ _BLOCK.fields_by_name['value']._options = None _BLOCK.fields_by_name['value']._serialized_options = b'\222?\0028 \212\265\030\007\020\200 (\0010\001' _BLOCK.fields_by_name['minSetting']._options = None - _BLOCK.fields_by_name['minSetting']._serialized_options = b'\222?\0028 \212\265\030\003\020\200 ' + _BLOCK.fields_by_name['minSetting']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 x\001' _BLOCK.fields_by_name['maxSetting']._options = None - _BLOCK.fields_by_name['maxSetting']._serialized_options = b'\222?\0028 \212\265\030\003\020\200 ' + _BLOCK.fields_by_name['maxSetting']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 x\001' _BLOCK.fields_by_name['minValue']._options = None - _BLOCK.fields_by_name['minValue']._serialized_options = b'\222?\0028 \212\265\030\003\020\200 ' + _BLOCK.fields_by_name['minValue']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 x\001' _BLOCK.fields_by_name['maxValue']._options = None - _BLOCK.fields_by_name['maxValue']._serialized_options = b'\222?\0028 \212\265\030\003\020\200 ' + _BLOCK.fields_by_name['maxValue']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 x\001' + _BLOCK.fields_by_name['constraints']._options = None + _BLOCK.fields_by_name['constraints']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['claimedBy']._options = None _BLOCK.fields_by_name['claimedBy']._serialized_options = b'\222?\0028\020\212\265\030\005\030\377\001(\001' + _BLOCK.fields_by_name['settingMode']._options = None + _BLOCK.fields_by_name['settingMode']._serialized_options = b'\212\265\030\002x\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\n\030\261\002J\005\001\005\023\017\020' _globals['_BLOCK']._serialized_start=117 - _globals['_BLOCK']._serialized_end=648 + _globals['_BLOCK']._serialized_end=682 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/ActuatorLogic_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/ActuatorLogic_pb2.py index b22d47cb..99be1fcb 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/ActuatorLogic_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/ActuatorLogic_pb2.py @@ -16,49 +16,57 @@ import IoArray_pb2 as IoArray__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13\x41\x63tuatorLogic.proto\x12\x12\x62lox.ActuatorLogic\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\xb7\x01\n\x0e\x44igitalCompare\x12/\n\x02op\x18\x01 \x01(\x0e\x32#.blox.ActuatorLogic.DigitalOperator\x12\x32\n\x06result\x18\x02 \x01(\x0e\x32\x1a.blox.ActuatorLogic.ResultB\x06\x8a\xb5\x18\x02(\x01\x12\x17\n\x02id\x18\x03 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x1b\x12\'\n\x03rhs\x18\x04 \x01(\x0e\x32\x1a.blox.IoArray.DigitalState\"\xa7\x01\n\rAnalogCompare\x12.\n\x02op\x18\x01 \x01(\x0e\x32\".blox.ActuatorLogic.AnalogOperator\x12\x32\n\x06result\x18\x02 \x01(\x0e\x32\x1a.blox.ActuatorLogic.ResultB\x06\x8a\xb5\x18\x02(\x01\x12\x17\n\x02id\x18\x03 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x01\x12\x19\n\x03rhs\x18\x04 \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 \"\xce\x02\n\x05\x42lock\x12\x1d\n\x08targetId\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x06\x12\x0f\n\x07\x65nabled\x18\x03 \x01(\x08\x12\x34\n\x06result\x18\x04 \x01(\x0e\x32\x1a.blox.ActuatorLogic.ResultB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x19\n\nexpression\x18\x05 \x01(\tB\x05\x92?\x02p@\x12:\n\x07\x64igital\x18\x06 \x03(\x0b\x32\".blox.ActuatorLogic.DigitalCompareB\x05\x92?\x02\x10\x10\x12\x38\n\x06\x61nalog\x18\x07 \x03(\x0b\x32!.blox.ActuatorLogic.AnalogCompareB\x05\x92?\x02\x10\x10\x12\x1d\n\x08\x65rrorPos\x18\x08 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02(\x01\x12#\n\x0e\x64rivenTargetId\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\n\x8a\xb5\x18\x06\x18\xc2\x02J\x01\x0f*\xcb\x03\n\x06Result\x12\x10\n\x0cRESULT_FALSE\x10\x00\x12\x0f\n\x0bRESULT_TRUE\x10\x01\x12\x10\n\x0cRESULT_EMPTY\x10\x02\x12\x1a\n\x16RESULT_EMPTY_SUBSTRING\x10\x03\x12\x1a\n\x16RESULT_BLOCK_NOT_FOUND\x10\x04\x12\x1d\n\x19RESULT_INVALID_DIGITAL_OP\x10\x05\x12\x1c\n\x18RESULT_INVALID_ANALOG_OP\x10\x06\x12$\n RESULT_UNDEFINED_DIGITAL_COMPARE\x10\x08\x12#\n\x1fRESULT_UNDEFINED_ANALOG_COMPARE\x10\x07\x12\"\n\x1eRESULT_UNEXPECTED_OPEN_BRACKET\x10\x0b\x12#\n\x1fRESULT_UNEXPECTED_CLOSE_BRACKET\x10\t\x12\x1f\n\x1bRESULT_UNEXPECTED_CHARACTER\x10\x0c\x12 \n\x1cRESULT_UNEXPECTED_COMPARISON\x10\r\x12\x1e\n\x1aRESULT_UNEXPECTED_OPERATOR\x10\x0e\x12 \n\x1cRESULT_MISSING_CLOSE_BRACKET\x10\n*a\n\x0f\x44igitalOperator\x12\x0f\n\x0bOP_VALUE_IS\x10\x00\x12\x13\n\x0fOP_VALUE_IS_NOT\x10\x01\x12\x11\n\rOP_DESIRED_IS\x10\n\x12\x15\n\x11OP_DESIRED_IS_NOT\x10\x0b*X\n\x0e\x41nalogOperator\x12\x0f\n\x0bOP_VALUE_LE\x10\x00\x12\x0f\n\x0bOP_VALUE_GE\x10\x01\x12\x11\n\rOP_SETTING_LE\x10\n\x12\x11\n\rOP_SETTING_GE\x10\x0b\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13\x41\x63tuatorLogic.proto\x12\x12\x62lox.ActuatorLogic\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\xc9\x01\n\x0e\x44igitalCompare\x12\x37\n\x02op\x18\x01 \x01(\x0e\x32#.blox.ActuatorLogic.DigitalOperatorB\x06\x8a\xb5\x18\x02x\x01\x12\x32\n\x06result\x18\x02 \x01(\x0e\x32\x1a.blox.ActuatorLogic.ResultB\x06\x8a\xb5\x18\x02(\x01\x12\x19\n\x02id\x18\x03 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x1bx\x01\x12/\n\x03rhs\x18\x04 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x06\x8a\xb5\x18\x02x\x01\"\xb3\x01\n\rAnalogCompare\x12\x36\n\x02op\x18\x01 \x01(\x0e\x32\".blox.ActuatorLogic.AnalogOperatorB\x06\x8a\xb5\x18\x02x\x01\x12\x32\n\x06result\x18\x02 \x01(\x0e\x32\x1a.blox.ActuatorLogic.ResultB\x06\x8a\xb5\x18\x02(\x01\x12\x19\n\x02id\x18\x03 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x01x\x01\x12\x1b\n\x03rhs\x18\x04 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 x\x01\"\xea\x02\n\x05\x42lock\x12\x1f\n\x08targetId\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x06x\x01\x12\x17\n\x07\x65nabled\x18\x03 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x34\n\x06result\x18\x04 \x01(\x0e\x32\x1a.blox.ActuatorLogic.ResultB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x1f\n\nexpression\x18\x05 \x01(\tB\x0b\x92?\x02p@\x8a\xb5\x18\x02x\x01\x12@\n\x07\x64igital\x18\x06 \x03(\x0b\x32\".blox.ActuatorLogic.DigitalCompareB\x0b\x92?\x02\x10\x10\x8a\xb5\x18\x02x\x01\x12>\n\x06\x61nalog\x18\x07 \x03(\x0b\x32!.blox.ActuatorLogic.AnalogCompareB\x0b\x92?\x02\x10\x10\x8a\xb5\x18\x02x\x01\x12\x1d\n\x08\x65rrorPos\x18\x08 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02(\x01\x12#\n\x0e\x64rivenTargetId\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\n\x8a\xb5\x18\x06\x18\xc2\x02J\x01\x0f*\xcb\x03\n\x06Result\x12\x10\n\x0cRESULT_FALSE\x10\x00\x12\x0f\n\x0bRESULT_TRUE\x10\x01\x12\x10\n\x0cRESULT_EMPTY\x10\x02\x12\x1a\n\x16RESULT_EMPTY_SUBSTRING\x10\x03\x12\x1a\n\x16RESULT_BLOCK_NOT_FOUND\x10\x04\x12\x1d\n\x19RESULT_INVALID_DIGITAL_OP\x10\x05\x12\x1c\n\x18RESULT_INVALID_ANALOG_OP\x10\x06\x12$\n RESULT_UNDEFINED_DIGITAL_COMPARE\x10\x08\x12#\n\x1fRESULT_UNDEFINED_ANALOG_COMPARE\x10\x07\x12\"\n\x1eRESULT_UNEXPECTED_OPEN_BRACKET\x10\x0b\x12#\n\x1fRESULT_UNEXPECTED_CLOSE_BRACKET\x10\t\x12\x1f\n\x1bRESULT_UNEXPECTED_CHARACTER\x10\x0c\x12 \n\x1cRESULT_UNEXPECTED_COMPARISON\x10\r\x12\x1e\n\x1aRESULT_UNEXPECTED_OPERATOR\x10\x0e\x12 \n\x1cRESULT_MISSING_CLOSE_BRACKET\x10\n*a\n\x0f\x44igitalOperator\x12\x0f\n\x0bOP_VALUE_IS\x10\x00\x12\x13\n\x0fOP_VALUE_IS_NOT\x10\x01\x12\x11\n\rOP_DESIRED_IS\x10\n\x12\x15\n\x11OP_DESIRED_IS_NOT\x10\x0b*X\n\x0e\x41nalogOperator\x12\x0f\n\x0bOP_VALUE_LE\x10\x00\x12\x0f\n\x0bOP_VALUE_GE\x10\x01\x12\x11\n\rOP_SETTING_LE\x10\n\x12\x11\n\rOP_SETTING_GE\x10\x0b\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'ActuatorLogic_pb2', _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None + _DIGITALCOMPARE.fields_by_name['op']._options = None + _DIGITALCOMPARE.fields_by_name['op']._serialized_options = b'\212\265\030\002x\001' _DIGITALCOMPARE.fields_by_name['result']._options = None _DIGITALCOMPARE.fields_by_name['result']._serialized_options = b'\212\265\030\002(\001' _DIGITALCOMPARE.fields_by_name['id']._options = None - _DIGITALCOMPARE.fields_by_name['id']._serialized_options = b'\222?\0028\020\212\265\030\002\030\033' + _DIGITALCOMPARE.fields_by_name['id']._serialized_options = b'\222?\0028\020\212\265\030\004\030\033x\001' + _DIGITALCOMPARE.fields_by_name['rhs']._options = None + _DIGITALCOMPARE.fields_by_name['rhs']._serialized_options = b'\212\265\030\002x\001' + _ANALOGCOMPARE.fields_by_name['op']._options = None + _ANALOGCOMPARE.fields_by_name['op']._serialized_options = b'\212\265\030\002x\001' _ANALOGCOMPARE.fields_by_name['result']._options = None _ANALOGCOMPARE.fields_by_name['result']._serialized_options = b'\212\265\030\002(\001' _ANALOGCOMPARE.fields_by_name['id']._options = None - _ANALOGCOMPARE.fields_by_name['id']._serialized_options = b'\222?\0028\020\212\265\030\002\030\001' + _ANALOGCOMPARE.fields_by_name['id']._serialized_options = b'\222?\0028\020\212\265\030\004\030\001x\001' _ANALOGCOMPARE.fields_by_name['rhs']._options = None - _ANALOGCOMPARE.fields_by_name['rhs']._serialized_options = b'\222?\0028 \212\265\030\003\020\200 ' + _ANALOGCOMPARE.fields_by_name['rhs']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 x\001' _BLOCK.fields_by_name['targetId']._options = None - _BLOCK.fields_by_name['targetId']._serialized_options = b'\222?\0028\020\212\265\030\002\030\006' + _BLOCK.fields_by_name['targetId']._serialized_options = b'\222?\0028\020\212\265\030\004\030\006x\001' + _BLOCK.fields_by_name['enabled']._options = None + _BLOCK.fields_by_name['enabled']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['result']._options = None _BLOCK.fields_by_name['result']._serialized_options = b'\212\265\030\004(\0010\001' _BLOCK.fields_by_name['expression']._options = None - _BLOCK.fields_by_name['expression']._serialized_options = b'\222?\002p@' + _BLOCK.fields_by_name['expression']._serialized_options = b'\222?\002p@\212\265\030\002x\001' _BLOCK.fields_by_name['digital']._options = None - _BLOCK.fields_by_name['digital']._serialized_options = b'\222?\002\020\020' + _BLOCK.fields_by_name['digital']._serialized_options = b'\222?\002\020\020\212\265\030\002x\001' _BLOCK.fields_by_name['analog']._options = None - _BLOCK.fields_by_name['analog']._serialized_options = b'\222?\002\020\020' + _BLOCK.fields_by_name['analog']._serialized_options = b'\222?\002\020\020\212\265\030\002x\001' _BLOCK.fields_by_name['errorPos']._options = None _BLOCK.fields_by_name['errorPos']._serialized_options = b'\222?\0028\010\212\265\030\002(\001' _BLOCK.fields_by_name['drivenTargetId']._options = None _BLOCK.fields_by_name['drivenTargetId']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\006\030\302\002J\001\017' - _globals['_RESULT']._serialized_start=782 - _globals['_RESULT']._serialized_end=1241 - _globals['_DIGITALOPERATOR']._serialized_start=1243 - _globals['_DIGITALOPERATOR']._serialized_end=1340 - _globals['_ANALOGOPERATOR']._serialized_start=1342 - _globals['_ANALOGOPERATOR']._serialized_end=1430 + _globals['_RESULT']._serialized_start=840 + _globals['_RESULT']._serialized_end=1299 + _globals['_DIGITALOPERATOR']._serialized_start=1301 + _globals['_DIGITALOPERATOR']._serialized_end=1398 + _globals['_ANALOGOPERATOR']._serialized_start=1400 + _globals['_ANALOGOPERATOR']._serialized_end=1488 _globals['_DIGITALCOMPARE']._serialized_start=89 - _globals['_DIGITALCOMPARE']._serialized_end=272 - _globals['_ANALOGCOMPARE']._serialized_start=275 - _globals['_ANALOGCOMPARE']._serialized_end=442 - _globals['_BLOCK']._serialized_start=445 - _globals['_BLOCK']._serialized_end=779 + _globals['_DIGITALCOMPARE']._serialized_end=290 + _globals['_ANALOGCOMPARE']._serialized_start=293 + _globals['_ANALOGCOMPARE']._serialized_end=472 + _globals['_BLOCK']._serialized_start=475 + _globals['_BLOCK']._serialized_end=837 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/ActuatorOffset_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/ActuatorOffset_pb2.py index 6e718728..5acb4be2 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/ActuatorOffset_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/ActuatorOffset_pb2.py @@ -17,33 +17,41 @@ import Claims_pb2 as Claims__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14\x41\x63tuatorOffset.proto\x12\x13\x62lox.ActuatorOffset\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x11\x43onstraints.proto\x1a\x0c\x43laims.proto\"\xc2\x04\n\x05\x42lock\x12\x0f\n\x07\x65nabled\x18\n \x01(\x08\x12\x1d\n\x08targetId\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x04\x12 \n\x0breferenceId\x18\x03 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x04\x12\'\n\rstoredSetting\x18\r \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x06\x10\x80 0\x01\x12*\n\x0e\x64\x65siredSetting\x18\x0b \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x06\x10\x80 (\x01\x30\x01\x12#\n\x07setting\x18\x06 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x06\x10\x80 (\x01\x30\x01\x12!\n\x05value\x18\x07 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x06\x10\x80 (\x01\x30\x01\x12\x43\n\x17referenceSettingOrValue\x18\x04 \x01(\x0e\x32\".blox.ActuatorOffset.ReferenceKind\x12\x44\n\rconstrainedBy\x18\x08 \x01(\x0b\x32-.blox.Constraints.DeprecatedAnalogConstraints\x12\x38\n\x0b\x63onstraints\x18\x0f \x01(\x0b\x32#.blox.Constraints.AnalogConstraints\x12!\n\tclaimedBy\x18\x0c \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12-\n\x0bsettingMode\x18\x0e \x01(\x0e\x32\x18.blox.Claims.SettingMode\x12#\n\x0e\x64rivenTargetId\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x0e\x8a\xb5\x18\n\x18\xb4\x02J\x05\x01\x05\x13\x0f\x10*/\n\rReferenceKind\x12\x0f\n\x0bREF_SETTING\x10\x00\x12\r\n\tREF_VALUE\x10\x01\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14\x41\x63tuatorOffset.proto\x12\x13\x62lox.ActuatorOffset\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x11\x43onstraints.proto\x1a\x0c\x43laims.proto\"\xe8\x04\n\x05\x42lock\x12\x17\n\x07\x65nabled\x18\n \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x1f\n\x08targetId\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x04x\x01\x12\"\n\x0breferenceId\x18\x03 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x04x\x01\x12)\n\rstoredSetting\x18\r \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x06\x10\x80 0\x01x\x01\x12*\n\x0e\x64\x65siredSetting\x18\x0b \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x06\x10\x80 (\x01\x30\x01\x12#\n\x07setting\x18\x06 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x06\x10\x80 (\x01\x30\x01\x12!\n\x05value\x18\x07 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x06\x10\x80 (\x01\x30\x01\x12K\n\x17referenceSettingOrValue\x18\x04 \x01(\x0e\x32\".blox.ActuatorOffset.ReferenceKindB\x06\x8a\xb5\x18\x02x\x01\x12\x44\n\rconstrainedBy\x18\x08 \x01(\x0b\x32-.blox.Constraints.DeprecatedAnalogConstraints\x12@\n\x0b\x63onstraints\x18\x0f \x01(\x0b\x32#.blox.Constraints.AnalogConstraintsB\x06\x8a\xb5\x18\x02x\x01\x12!\n\tclaimedBy\x18\x0c \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12\x35\n\x0bsettingMode\x18\x0e \x01(\x0e\x32\x18.blox.Claims.SettingModeB\x06\x8a\xb5\x18\x02x\x01\x12#\n\x0e\x64rivenTargetId\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x0e\x8a\xb5\x18\n\x18\xb4\x02J\x05\x01\x05\x13\x0f\x10*/\n\rReferenceKind\x12\x0f\n\x0bREF_SETTING\x10\x00\x12\r\n\tREF_VALUE\x10\x01\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'ActuatorOffset_pb2', _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None + _BLOCK.fields_by_name['enabled']._options = None + _BLOCK.fields_by_name['enabled']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['targetId']._options = None - _BLOCK.fields_by_name['targetId']._serialized_options = b'\222?\0028\020\212\265\030\002\030\004' + _BLOCK.fields_by_name['targetId']._serialized_options = b'\222?\0028\020\212\265\030\004\030\004x\001' _BLOCK.fields_by_name['referenceId']._options = None - _BLOCK.fields_by_name['referenceId']._serialized_options = b'\222?\0028\020\212\265\030\002\030\004' + _BLOCK.fields_by_name['referenceId']._serialized_options = b'\222?\0028\020\212\265\030\004\030\004x\001' _BLOCK.fields_by_name['storedSetting']._options = None - _BLOCK.fields_by_name['storedSetting']._serialized_options = b'\222?\0028 \212\265\030\007\010\006\020\200 0\001' + _BLOCK.fields_by_name['storedSetting']._serialized_options = b'\222?\0028 \212\265\030\t\010\006\020\200 0\001x\001' _BLOCK.fields_by_name['desiredSetting']._options = None _BLOCK.fields_by_name['desiredSetting']._serialized_options = b'\222?\0028 \212\265\030\t\010\006\020\200 (\0010\001' _BLOCK.fields_by_name['setting']._options = None _BLOCK.fields_by_name['setting']._serialized_options = b'\222?\0028 \212\265\030\t\010\006\020\200 (\0010\001' _BLOCK.fields_by_name['value']._options = None _BLOCK.fields_by_name['value']._serialized_options = b'\222?\0028 \212\265\030\t\010\006\020\200 (\0010\001' + _BLOCK.fields_by_name['referenceSettingOrValue']._options = None + _BLOCK.fields_by_name['referenceSettingOrValue']._serialized_options = b'\212\265\030\002x\001' + _BLOCK.fields_by_name['constraints']._options = None + _BLOCK.fields_by_name['constraints']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['claimedBy']._options = None _BLOCK.fields_by_name['claimedBy']._serialized_options = b'\222?\0028\020\212\265\030\005\030\377\001(\001' + _BLOCK.fields_by_name['settingMode']._options = None + _BLOCK.fields_by_name['settingMode']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['drivenTargetId']._options = None _BLOCK.fields_by_name['drivenTargetId']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\n\030\264\002J\005\001\005\023\017\020' - _globals['_REFERENCEKIND']._serialized_start=689 - _globals['_REFERENCEKIND']._serialized_end=736 + _globals['_REFERENCEKIND']._serialized_start=727 + _globals['_REFERENCEKIND']._serialized_end=774 _globals['_BLOCK']._serialized_start=109 - _globals['_BLOCK']._serialized_end=687 + _globals['_BLOCK']._serialized_end=725 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/ActuatorPwm_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/ActuatorPwm_pb2.py index ac7a5d89..322566a3 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/ActuatorPwm_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/ActuatorPwm_pb2.py @@ -17,17 +17,19 @@ import Claims_pb2 as Claims__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x11\x41\x63tuatorPwm.proto\x12\x10\x62lox.ActuatorPwm\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x11\x43onstraints.proto\x1a\x0c\x43laims.proto\"\xf2\x03\n\x05\x42lock\x12\x0f\n\x07\x65nabled\x18\x08 \x01(\x08\x12\x1f\n\nactuatorId\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x06\x12%\n\rstoredSetting\x18\x0b \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 0\x01\x12(\n\x0e\x64\x65siredSetting\x18\t \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12!\n\x07setting\x18\x04 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x1f\n\x05value\x18\x05 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x19\n\x06period\x18\x03 \x01(\rB\t\x8a\xb5\x18\x05\x08\x03\x10\xe8\x07\x12\x44\n\rconstrainedBy\x18\x06 \x01(\x0b\x32-.blox.Constraints.DeprecatedAnalogConstraints\x12\x38\n\x0b\x63onstraints\x18\r \x01(\x0b\x32#.blox.Constraints.AnalogConstraints\x12!\n\tclaimedBy\x18\n \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12-\n\x0bsettingMode\x18\x0c \x01(\x0e\x32\x18.blox.Claims.SettingMode\x12%\n\x10\x64rivenActuatorId\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x0e\x8a\xb5\x18\n\x18\xb3\x02J\x05\x01\x05\x13\x0f\x10\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x11\x41\x63tuatorPwm.proto\x12\x10\x62lox.ActuatorPwm\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x11\x43onstraints.proto\x1a\x0c\x43laims.proto\"\x90\x04\n\x05\x42lock\x12\x17\n\x07\x65nabled\x18\x08 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12!\n\nactuatorId\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x06x\x01\x12\'\n\rstoredSetting\x18\x0b \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 0\x01x\x01\x12(\n\x0e\x64\x65siredSetting\x18\t \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12!\n\x07setting\x18\x04 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x1f\n\x05value\x18\x05 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x1b\n\x06period\x18\x03 \x01(\rB\x0b\x8a\xb5\x18\x07\x08\x03\x10\xe8\x07x\x01\x12\x44\n\rconstrainedBy\x18\x06 \x01(\x0b\x32-.blox.Constraints.DeprecatedAnalogConstraints\x12@\n\x0b\x63onstraints\x18\r \x01(\x0b\x32#.blox.Constraints.AnalogConstraintsB\x06\x8a\xb5\x18\x02x\x01\x12!\n\tclaimedBy\x18\n \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12\x35\n\x0bsettingMode\x18\x0c \x01(\x0e\x32\x18.blox.Claims.SettingModeB\x06\x8a\xb5\x18\x02x\x01\x12%\n\x10\x64rivenActuatorId\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x0e\x8a\xb5\x18\n\x18\xb3\x02J\x05\x01\x05\x13\x0f\x10\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'ActuatorPwm_pb2', _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None + _BLOCK.fields_by_name['enabled']._options = None + _BLOCK.fields_by_name['enabled']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['actuatorId']._options = None - _BLOCK.fields_by_name['actuatorId']._serialized_options = b'\222?\0028\020\212\265\030\002\030\006' + _BLOCK.fields_by_name['actuatorId']._serialized_options = b'\222?\0028\020\212\265\030\004\030\006x\001' _BLOCK.fields_by_name['storedSetting']._options = None - _BLOCK.fields_by_name['storedSetting']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 0\001' + _BLOCK.fields_by_name['storedSetting']._serialized_options = b'\222?\0028 \212\265\030\007\020\200 0\001x\001' _BLOCK.fields_by_name['desiredSetting']._options = None _BLOCK.fields_by_name['desiredSetting']._serialized_options = b'\222?\0028 \212\265\030\007\020\200 (\0010\001' _BLOCK.fields_by_name['setting']._options = None @@ -35,13 +37,17 @@ _BLOCK.fields_by_name['value']._options = None _BLOCK.fields_by_name['value']._serialized_options = b'\222?\0028 \212\265\030\007\020\200 (\0010\001' _BLOCK.fields_by_name['period']._options = None - _BLOCK.fields_by_name['period']._serialized_options = b'\212\265\030\005\010\003\020\350\007' + _BLOCK.fields_by_name['period']._serialized_options = b'\212\265\030\007\010\003\020\350\007x\001' + _BLOCK.fields_by_name['constraints']._options = None + _BLOCK.fields_by_name['constraints']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['claimedBy']._options = None _BLOCK.fields_by_name['claimedBy']._serialized_options = b'\222?\0028\020\212\265\030\005\030\377\001(\001' + _BLOCK.fields_by_name['settingMode']._options = None + _BLOCK.fields_by_name['settingMode']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['drivenActuatorId']._options = None _BLOCK.fields_by_name['drivenActuatorId']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\n\030\263\002J\005\001\005\023\017\020' _globals['_BLOCK']._serialized_start=103 - _globals['_BLOCK']._serialized_end=601 + _globals['_BLOCK']._serialized_end=631 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/Constraints_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/Constraints_pb2.py index 6de69ff5..2f54dc19 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/Constraints_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/Constraints_pb2.py @@ -15,7 +15,7 @@ import nanopb_pb2 as nanopb__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x11\x43onstraints.proto\x12\x10\x62lox.Constraints\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"Y\n\x0fValueConstraint\x12\x1b\n\x05value\x18\x01 \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 \x12\x0f\n\x07\x65nabled\x18\x32 \x01(\x08\x12\x18\n\x08limiting\x18\x33 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\"\x95\x01\n\x12\x42\x61lancedConstraint\x12\x1f\n\nbalancerId\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x07\x12\x1a\n\x07granted\x18\x02 \x01(\rB\t\x8a\xb5\x18\x05\x10\x80 (\x01\x12\x0f\n\x07\x65nabled\x18\x32 \x01(\x08\x12\x18\n\x08limiting\x18\x33 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x12\x17\n\x02id\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\"\x86\x01\n\x12\x44urationConstraint\x12 \n\x08\x64uration\x18\x01 \x01(\rB\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x03\x10\xe8\x07\x12\x0f\n\x07\x65nabled\x18\x32 \x01(\x08\x12\x18\n\x08limiting\x18\x33 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x12#\n\tremaining\x18\x34 \x01(\rB\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x03\x10\xe8\x07(\x01\"\xe9\x01\n\x11MutexedConstraint\x12\x1c\n\x07mutexId\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x08\x12%\n\rextraHoldTime\x18\x02 \x01(\rB\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x03\x10\xe8\x07\x12\x17\n\x07hasLock\x18\x04 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x12\x0f\n\x07\x65nabled\x18\x32 \x01(\x08\x12\x18\n\x08limiting\x18\x33 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x12#\n\tremaining\x18\x34 \x01(\rB\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x03\x10\xe8\x07(\x01\x12&\n\x11hasCustomHoldTime\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\"\xab\x01\n\x11\x41nalogConstraints\x12.\n\x03min\x18\x01 \x01(\x0b\x32!.blox.Constraints.ValueConstraint\x12.\n\x03max\x18\x02 \x01(\x0b\x32!.blox.Constraints.ValueConstraint\x12\x36\n\x08\x62\x61lanced\x18\x03 \x01(\x0b\x32$.blox.Constraints.BalancedConstraint\"\xa8\x02\n\x12\x44igitalConstraints\x12\x34\n\x06minOff\x18\x01 \x01(\x0b\x32$.blox.Constraints.DurationConstraint\x12\x33\n\x05minOn\x18\x02 \x01(\x0b\x32$.blox.Constraints.DurationConstraint\x12\x38\n\ndelayedOff\x18\x03 \x01(\x0b\x32$.blox.Constraints.DurationConstraint\x12\x37\n\tdelayedOn\x18\x04 \x01(\x0b\x32$.blox.Constraints.DurationConstraint\x12\x34\n\x07mutexed\x18\x05 \x01(\x0b\x32#.blox.Constraints.MutexedConstraint\"\xb8\x01\n\x1a\x44\x65precatedAnalogConstraint\x12\x1b\n\x03min\x18\x01 \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 H\x00\x12\x1b\n\x03max\x18\x02 \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 H\x00\x12\x38\n\x08\x62\x61lanced\x18\x03 \x01(\x0b\x32$.blox.Constraints.BalancedConstraintH\x00\x12\x18\n\x08limiting\x18\x64 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x42\x0c\n\nconstraint\"g\n\x1b\x44\x65precatedAnalogConstraints\x12H\n\x0b\x63onstraints\x18\x01 \x03(\x0b\x32,.blox.Constraints.DeprecatedAnalogConstraintB\x05\x92?\x02\x10\x08\"\xd3\x02\n\x1b\x44\x65precatedDigitalConstraint\x12 \n\x06minOff\x18\x01 \x01(\rB\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x03\x10\xe8\x07H\x00\x12\x1f\n\x05minOn\x18\x02 \x01(\rB\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x03\x10\xe8\x07H\x00\x12\x36\n\x07mutexed\x18\x04 \x01(\x0b\x32#.blox.Constraints.MutexedConstraintH\x00\x12$\n\ndelayedOff\x18\x05 \x01(\rB\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x03\x10\xe8\x07H\x00\x12#\n\tdelayedOn\x18\x06 \x01(\rB\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x03\x10\xe8\x07H\x00\x12\x1c\n\x05mutex\x18\x03 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x08H\x00\x12\x1d\n\x08limiting\x18\x64 \x01(\rB\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12#\n\tremaining\x18\x65 \x01(\rB\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x03\x10\xe8\x07(\x01\x42\x0c\n\nconstraint\"i\n\x1c\x44\x65precatedDigitalConstraints\x12I\n\x0b\x63onstraints\x18\x01 \x03(\x0b\x32-.blox.Constraints.DeprecatedDigitalConstraintB\x05\x92?\x02\x10\x08\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x11\x43onstraints.proto\x12\x10\x62lox.Constraints\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"c\n\x0fValueConstraint\x12\x1d\n\x05value\x18\x01 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 x\x01\x12\x17\n\x07\x65nabled\x18\x32 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x18\n\x08limiting\x18\x33 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\"\x9f\x01\n\x12\x42\x61lancedConstraint\x12!\n\nbalancerId\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x07x\x01\x12\x1a\n\x07granted\x18\x02 \x01(\rB\t\x8a\xb5\x18\x05\x10\x80 (\x01\x12\x17\n\x07\x65nabled\x18\x32 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x18\n\x08limiting\x18\x33 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x12\x17\n\x02id\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\"\x90\x01\n\x12\x44urationConstraint\x12\"\n\x08\x64uration\x18\x01 \x01(\rB\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x03\x10\xe8\x07x\x01\x12\x17\n\x07\x65nabled\x18\x32 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x18\n\x08limiting\x18\x33 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x12#\n\tremaining\x18\x34 \x01(\rB\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x03\x10\xe8\x07(\x01\"\xf5\x01\n\x11MutexedConstraint\x12\x1e\n\x07mutexId\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x08x\x01\x12\'\n\rextraHoldTime\x18\x02 \x01(\rB\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x03\x10\xe8\x07x\x01\x12\x17\n\x07hasLock\x18\x04 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x12\x17\n\x07\x65nabled\x18\x32 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x18\n\x08limiting\x18\x33 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x12#\n\tremaining\x18\x34 \x01(\rB\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x03\x10\xe8\x07(\x01\x12&\n\x11hasCustomHoldTime\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\"\xc3\x01\n\x11\x41nalogConstraints\x12\x36\n\x03min\x18\x01 \x01(\x0b\x32!.blox.Constraints.ValueConstraintB\x06\x8a\xb5\x18\x02x\x01\x12\x36\n\x03max\x18\x02 \x01(\x0b\x32!.blox.Constraints.ValueConstraintB\x06\x8a\xb5\x18\x02x\x01\x12>\n\x08\x62\x61lanced\x18\x03 \x01(\x0b\x32$.blox.Constraints.BalancedConstraintB\x06\x8a\xb5\x18\x02x\x01\"\xd0\x02\n\x12\x44igitalConstraints\x12<\n\x06minOff\x18\x01 \x01(\x0b\x32$.blox.Constraints.DurationConstraintB\x06\x8a\xb5\x18\x02x\x01\x12;\n\x05minOn\x18\x02 \x01(\x0b\x32$.blox.Constraints.DurationConstraintB\x06\x8a\xb5\x18\x02x\x01\x12@\n\ndelayedOff\x18\x03 \x01(\x0b\x32$.blox.Constraints.DurationConstraintB\x06\x8a\xb5\x18\x02x\x01\x12?\n\tdelayedOn\x18\x04 \x01(\x0b\x32$.blox.Constraints.DurationConstraintB\x06\x8a\xb5\x18\x02x\x01\x12<\n\x07mutexed\x18\x05 \x01(\x0b\x32#.blox.Constraints.MutexedConstraintB\x06\x8a\xb5\x18\x02x\x01\"\xb8\x01\n\x1a\x44\x65precatedAnalogConstraint\x12\x1b\n\x03min\x18\x01 \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 H\x00\x12\x1b\n\x03max\x18\x02 \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 H\x00\x12\x38\n\x08\x62\x61lanced\x18\x03 \x01(\x0b\x32$.blox.Constraints.BalancedConstraintH\x00\x12\x18\n\x08limiting\x18\x64 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x42\x0c\n\nconstraint\"g\n\x1b\x44\x65precatedAnalogConstraints\x12H\n\x0b\x63onstraints\x18\x01 \x03(\x0b\x32,.blox.Constraints.DeprecatedAnalogConstraintB\x05\x92?\x02\x10\x08\"\xd3\x02\n\x1b\x44\x65precatedDigitalConstraint\x12 \n\x06minOff\x18\x01 \x01(\rB\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x03\x10\xe8\x07H\x00\x12\x1f\n\x05minOn\x18\x02 \x01(\rB\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x03\x10\xe8\x07H\x00\x12\x36\n\x07mutexed\x18\x04 \x01(\x0b\x32#.blox.Constraints.MutexedConstraintH\x00\x12$\n\ndelayedOff\x18\x05 \x01(\rB\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x03\x10\xe8\x07H\x00\x12#\n\tdelayedOn\x18\x06 \x01(\rB\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x03\x10\xe8\x07H\x00\x12\x1c\n\x05mutex\x18\x03 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x08H\x00\x12\x1d\n\x08limiting\x18\x64 \x01(\rB\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12#\n\tremaining\x18\x65 \x01(\rB\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x03\x10\xe8\x07(\x01\x42\x0c\n\nconstraint\"i\n\x1c\x44\x65precatedDigitalConstraints\x12I\n\x0b\x63onstraints\x18\x01 \x03(\x0b\x32-.blox.Constraints.DeprecatedDigitalConstraintB\x05\x92?\x02\x10\x08\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -23,35 +23,59 @@ if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None _VALUECONSTRAINT.fields_by_name['value']._options = None - _VALUECONSTRAINT.fields_by_name['value']._serialized_options = b'\222?\0028 \212\265\030\003\020\200 ' + _VALUECONSTRAINT.fields_by_name['value']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 x\001' + _VALUECONSTRAINT.fields_by_name['enabled']._options = None + _VALUECONSTRAINT.fields_by_name['enabled']._serialized_options = b'\212\265\030\002x\001' _VALUECONSTRAINT.fields_by_name['limiting']._options = None _VALUECONSTRAINT.fields_by_name['limiting']._serialized_options = b'\212\265\030\002(\001' _BALANCEDCONSTRAINT.fields_by_name['balancerId']._options = None - _BALANCEDCONSTRAINT.fields_by_name['balancerId']._serialized_options = b'\222?\0028\020\212\265\030\002\030\007' + _BALANCEDCONSTRAINT.fields_by_name['balancerId']._serialized_options = b'\222?\0028\020\212\265\030\004\030\007x\001' _BALANCEDCONSTRAINT.fields_by_name['granted']._options = None _BALANCEDCONSTRAINT.fields_by_name['granted']._serialized_options = b'\212\265\030\005\020\200 (\001' + _BALANCEDCONSTRAINT.fields_by_name['enabled']._options = None + _BALANCEDCONSTRAINT.fields_by_name['enabled']._serialized_options = b'\212\265\030\002x\001' _BALANCEDCONSTRAINT.fields_by_name['limiting']._options = None _BALANCEDCONSTRAINT.fields_by_name['limiting']._serialized_options = b'\212\265\030\002(\001' _BALANCEDCONSTRAINT.fields_by_name['id']._options = None _BALANCEDCONSTRAINT.fields_by_name['id']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _DURATIONCONSTRAINT.fields_by_name['duration']._options = None - _DURATIONCONSTRAINT.fields_by_name['duration']._serialized_options = b'\222?\0028 \212\265\030\005\010\003\020\350\007' + _DURATIONCONSTRAINT.fields_by_name['duration']._serialized_options = b'\222?\0028 \212\265\030\007\010\003\020\350\007x\001' + _DURATIONCONSTRAINT.fields_by_name['enabled']._options = None + _DURATIONCONSTRAINT.fields_by_name['enabled']._serialized_options = b'\212\265\030\002x\001' _DURATIONCONSTRAINT.fields_by_name['limiting']._options = None _DURATIONCONSTRAINT.fields_by_name['limiting']._serialized_options = b'\212\265\030\002(\001' _DURATIONCONSTRAINT.fields_by_name['remaining']._options = None _DURATIONCONSTRAINT.fields_by_name['remaining']._serialized_options = b'\222?\0028 \212\265\030\007\010\003\020\350\007(\001' _MUTEXEDCONSTRAINT.fields_by_name['mutexId']._options = None - _MUTEXEDCONSTRAINT.fields_by_name['mutexId']._serialized_options = b'\222?\0028\020\212\265\030\002\030\010' + _MUTEXEDCONSTRAINT.fields_by_name['mutexId']._serialized_options = b'\222?\0028\020\212\265\030\004\030\010x\001' _MUTEXEDCONSTRAINT.fields_by_name['extraHoldTime']._options = None - _MUTEXEDCONSTRAINT.fields_by_name['extraHoldTime']._serialized_options = b'\222?\0028 \212\265\030\005\010\003\020\350\007' + _MUTEXEDCONSTRAINT.fields_by_name['extraHoldTime']._serialized_options = b'\222?\0028 \212\265\030\007\010\003\020\350\007x\001' _MUTEXEDCONSTRAINT.fields_by_name['hasLock']._options = None _MUTEXEDCONSTRAINT.fields_by_name['hasLock']._serialized_options = b'\212\265\030\002(\001' + _MUTEXEDCONSTRAINT.fields_by_name['enabled']._options = None + _MUTEXEDCONSTRAINT.fields_by_name['enabled']._serialized_options = b'\212\265\030\002x\001' _MUTEXEDCONSTRAINT.fields_by_name['limiting']._options = None _MUTEXEDCONSTRAINT.fields_by_name['limiting']._serialized_options = b'\212\265\030\002(\001' _MUTEXEDCONSTRAINT.fields_by_name['remaining']._options = None _MUTEXEDCONSTRAINT.fields_by_name['remaining']._serialized_options = b'\222?\0028 \212\265\030\007\010\003\020\350\007(\001' _MUTEXEDCONSTRAINT.fields_by_name['hasCustomHoldTime']._options = None _MUTEXEDCONSTRAINT.fields_by_name['hasCustomHoldTime']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' + _ANALOGCONSTRAINTS.fields_by_name['min']._options = None + _ANALOGCONSTRAINTS.fields_by_name['min']._serialized_options = b'\212\265\030\002x\001' + _ANALOGCONSTRAINTS.fields_by_name['max']._options = None + _ANALOGCONSTRAINTS.fields_by_name['max']._serialized_options = b'\212\265\030\002x\001' + _ANALOGCONSTRAINTS.fields_by_name['balanced']._options = None + _ANALOGCONSTRAINTS.fields_by_name['balanced']._serialized_options = b'\212\265\030\002x\001' + _DIGITALCONSTRAINTS.fields_by_name['minOff']._options = None + _DIGITALCONSTRAINTS.fields_by_name['minOff']._serialized_options = b'\212\265\030\002x\001' + _DIGITALCONSTRAINTS.fields_by_name['minOn']._options = None + _DIGITALCONSTRAINTS.fields_by_name['minOn']._serialized_options = b'\212\265\030\002x\001' + _DIGITALCONSTRAINTS.fields_by_name['delayedOff']._options = None + _DIGITALCONSTRAINTS.fields_by_name['delayedOff']._serialized_options = b'\212\265\030\002x\001' + _DIGITALCONSTRAINTS.fields_by_name['delayedOn']._options = None + _DIGITALCONSTRAINTS.fields_by_name['delayedOn']._serialized_options = b'\212\265\030\002x\001' + _DIGITALCONSTRAINTS.fields_by_name['mutexed']._options = None + _DIGITALCONSTRAINTS.fields_by_name['mutexed']._serialized_options = b'\212\265\030\002x\001' _DEPRECATEDANALOGCONSTRAINT.fields_by_name['min']._options = None _DEPRECATEDANALOGCONSTRAINT.fields_by_name['min']._serialized_options = b'\222?\0028 \212\265\030\003\020\200 ' _DEPRECATEDANALOGCONSTRAINT.fields_by_name['max']._options = None @@ -77,23 +101,23 @@ _DEPRECATEDDIGITALCONSTRAINTS.fields_by_name['constraints']._options = None _DEPRECATEDDIGITALCONSTRAINTS.fields_by_name['constraints']._serialized_options = b'\222?\002\020\010' _globals['_VALUECONSTRAINT']._serialized_start=69 - _globals['_VALUECONSTRAINT']._serialized_end=158 - _globals['_BALANCEDCONSTRAINT']._serialized_start=161 - _globals['_BALANCEDCONSTRAINT']._serialized_end=310 - _globals['_DURATIONCONSTRAINT']._serialized_start=313 - _globals['_DURATIONCONSTRAINT']._serialized_end=447 - _globals['_MUTEXEDCONSTRAINT']._serialized_start=450 - _globals['_MUTEXEDCONSTRAINT']._serialized_end=683 - _globals['_ANALOGCONSTRAINTS']._serialized_start=686 - _globals['_ANALOGCONSTRAINTS']._serialized_end=857 - _globals['_DIGITALCONSTRAINTS']._serialized_start=860 - _globals['_DIGITALCONSTRAINTS']._serialized_end=1156 - _globals['_DEPRECATEDANALOGCONSTRAINT']._serialized_start=1159 - _globals['_DEPRECATEDANALOGCONSTRAINT']._serialized_end=1343 - _globals['_DEPRECATEDANALOGCONSTRAINTS']._serialized_start=1345 - _globals['_DEPRECATEDANALOGCONSTRAINTS']._serialized_end=1448 - _globals['_DEPRECATEDDIGITALCONSTRAINT']._serialized_start=1451 - _globals['_DEPRECATEDDIGITALCONSTRAINT']._serialized_end=1790 - _globals['_DEPRECATEDDIGITALCONSTRAINTS']._serialized_start=1792 - _globals['_DEPRECATEDDIGITALCONSTRAINTS']._serialized_end=1897 + _globals['_VALUECONSTRAINT']._serialized_end=168 + _globals['_BALANCEDCONSTRAINT']._serialized_start=171 + _globals['_BALANCEDCONSTRAINT']._serialized_end=330 + _globals['_DURATIONCONSTRAINT']._serialized_start=333 + _globals['_DURATIONCONSTRAINT']._serialized_end=477 + _globals['_MUTEXEDCONSTRAINT']._serialized_start=480 + _globals['_MUTEXEDCONSTRAINT']._serialized_end=725 + _globals['_ANALOGCONSTRAINTS']._serialized_start=728 + _globals['_ANALOGCONSTRAINTS']._serialized_end=923 + _globals['_DIGITALCONSTRAINTS']._serialized_start=926 + _globals['_DIGITALCONSTRAINTS']._serialized_end=1262 + _globals['_DEPRECATEDANALOGCONSTRAINT']._serialized_start=1265 + _globals['_DEPRECATEDANALOGCONSTRAINT']._serialized_end=1449 + _globals['_DEPRECATEDANALOGCONSTRAINTS']._serialized_start=1451 + _globals['_DEPRECATEDANALOGCONSTRAINTS']._serialized_end=1554 + _globals['_DEPRECATEDDIGITALCONSTRAINT']._serialized_start=1557 + _globals['_DEPRECATEDDIGITALCONSTRAINT']._serialized_end=1896 + _globals['_DEPRECATEDDIGITALCONSTRAINTS']._serialized_start=1898 + _globals['_DEPRECATEDDIGITALCONSTRAINTS']._serialized_end=2003 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/DS2408_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/DS2408_pb2.py index 32b0f391..cf8a4373 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/DS2408_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/DS2408_pb2.py @@ -16,7 +16,7 @@ import IoArray_pb2 as IoArray__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0c\x44S2408.proto\x12\x0b\x62lox.DS2408\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\xf4\x01\n\x05\x42lock\x12\x17\n\x07\x61\x64\x64ress\x18\x01 \x01(\x06\x42\x06\x8a\xb5\x18\x02 \x01\x12\x19\n\tconnected\x18\x06 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x12\x30\n\x0b\x63onnectMode\x18\t \x01(\x0e\x32\x1b.blox.DS2408.PinConnectMode\x12$\n\x0coneWireBusId\x18\n \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\x82\x02(\x01\x12\x36\n\x08\x63hannels\x18\x0b \x03(\x0b\x32\x17.blox.IoArray.IoChannelB\x0b\x92?\x02\x10\x08\x8a\xb5\x18\x02(\x01\x12\x19\n\x04pins\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x0c\x8a\xb5\x18\x08\x18\xbd\x02J\x03\n\x0b\t*\xfc\x01\n\tChannelId\x12\x14\n\x10\x44S2408_CHAN_NONE\x10\x00\x12\x11\n\rDS2408_CHAN_A\x10\x01\x12\x11\n\rDS2408_CHAN_B\x10\x02\x12\x11\n\rDS2408_CHAN_C\x10\x03\x12\x11\n\rDS2408_CHAN_D\x10\x04\x12\x11\n\rDS2408_CHAN_E\x10\x05\x12\x11\n\rDS2408_CHAN_F\x10\x06\x12\x11\n\rDS2408_CHAN_G\x10\x07\x12\x11\n\rDS2408_CHAN_H\x10\x08\x12\x15\n\x11\x44S2408_VALVE_NONE\x10\x00\x12\x12\n\x0e\x44S2408_VALVE_A\x10\x05\x12\x12\n\x0e\x44S2408_VALVE_B\x10\x01\x1a\x02\x10\x01*9\n\x0ePinConnectMode\x12\x11\n\rCONNECT_VALVE\x10\x00\x12\x14\n\x10\x43ONNECT_ACTUATOR\x10\x01\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0c\x44S2408.proto\x12\x0b\x62lox.DS2408\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\xfe\x01\n\x05\x42lock\x12\x19\n\x07\x61\x64\x64ress\x18\x01 \x01(\x06\x42\x08\x8a\xb5\x18\x04 \x01x\x01\x12\x19\n\tconnected\x18\x06 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x12\x38\n\x0b\x63onnectMode\x18\t \x01(\x0e\x32\x1b.blox.DS2408.PinConnectModeB\x06\x8a\xb5\x18\x02x\x01\x12$\n\x0coneWireBusId\x18\n \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\x82\x02(\x01\x12\x36\n\x08\x63hannels\x18\x0b \x03(\x0b\x32\x17.blox.IoArray.IoChannelB\x0b\x92?\x02\x10\x08\x8a\xb5\x18\x02(\x01\x12\x19\n\x04pins\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x0c\x8a\xb5\x18\x08\x18\xbd\x02J\x03\n\x0b\t*\xfc\x01\n\tChannelId\x12\x14\n\x10\x44S2408_CHAN_NONE\x10\x00\x12\x11\n\rDS2408_CHAN_A\x10\x01\x12\x11\n\rDS2408_CHAN_B\x10\x02\x12\x11\n\rDS2408_CHAN_C\x10\x03\x12\x11\n\rDS2408_CHAN_D\x10\x04\x12\x11\n\rDS2408_CHAN_E\x10\x05\x12\x11\n\rDS2408_CHAN_F\x10\x06\x12\x11\n\rDS2408_CHAN_G\x10\x07\x12\x11\n\rDS2408_CHAN_H\x10\x08\x12\x15\n\x11\x44S2408_VALVE_NONE\x10\x00\x12\x12\n\x0e\x44S2408_VALVE_A\x10\x05\x12\x12\n\x0e\x44S2408_VALVE_B\x10\x01\x1a\x02\x10\x01*9\n\x0ePinConnectMode\x12\x11\n\rCONNECT_VALVE\x10\x00\x12\x14\n\x10\x43ONNECT_ACTUATOR\x10\x01\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -26,9 +26,11 @@ _CHANNELID._options = None _CHANNELID._serialized_options = b'\020\001' _BLOCK.fields_by_name['address']._options = None - _BLOCK.fields_by_name['address']._serialized_options = b'\212\265\030\002 \001' + _BLOCK.fields_by_name['address']._serialized_options = b'\212\265\030\004 \001x\001' _BLOCK.fields_by_name['connected']._options = None _BLOCK.fields_by_name['connected']._serialized_options = b'\212\265\030\002(\001' + _BLOCK.fields_by_name['connectMode']._options = None + _BLOCK.fields_by_name['connectMode']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['oneWireBusId']._options = None _BLOCK.fields_by_name['oneWireBusId']._serialized_options = b'\222?\0028\020\212\265\030\005\030\202\002(\001' _BLOCK.fields_by_name['channels']._options = None @@ -37,10 +39,10 @@ _BLOCK.fields_by_name['pins']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\010\030\275\002J\003\n\013\t' - _globals['_CHANNELID']._serialized_start=322 - _globals['_CHANNELID']._serialized_end=574 - _globals['_PINCONNECTMODE']._serialized_start=576 - _globals['_PINCONNECTMODE']._serialized_end=633 + _globals['_CHANNELID']._serialized_start=332 + _globals['_CHANNELID']._serialized_end=584 + _globals['_PINCONNECTMODE']._serialized_start=586 + _globals['_PINCONNECTMODE']._serialized_end=643 _globals['_BLOCK']._serialized_start=75 - _globals['_BLOCK']._serialized_end=319 + _globals['_BLOCK']._serialized_end=329 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/DS2413_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/DS2413_pb2.py index 228fecbf..1eb0155a 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/DS2413_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/DS2413_pb2.py @@ -16,7 +16,7 @@ import IoArray_pb2 as IoArray__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0c\x44S2413.proto\x12\x0b\x62lox.DS2413\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\xc3\x01\n\x05\x42lock\x12\x17\n\x07\x61\x64\x64ress\x18\x01 \x01(\x06\x42\x06\x8a\xb5\x18\x02 \x01\x12\x19\n\tconnected\x18\x06 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x12$\n\x0coneWireBusId\x18\x08 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\x82\x02(\x01\x12\x38\n\x08\x63hannels\x18\t \x03(\x0b\x32\x17.blox.IoArray.IoChannelB\r\x92?\x04\x10\x02x\x01\x8a\xb5\x18\x02(\x01\x12\x19\n\x04pins\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x0b\x8a\xb5\x18\x07\x18\xbb\x02J\x02\n\t*G\n\tChannelId\x12\x14\n\x10\x44S2413_CHAN_NONE\x10\x00\x12\x11\n\rDS2413_CHAN_A\x10\x01\x12\x11\n\rDS2413_CHAN_B\x10\x02\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0c\x44S2413.proto\x12\x0b\x62lox.DS2413\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\xc5\x01\n\x05\x42lock\x12\x19\n\x07\x61\x64\x64ress\x18\x01 \x01(\x06\x42\x08\x8a\xb5\x18\x04 \x01x\x01\x12\x19\n\tconnected\x18\x06 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\x12$\n\x0coneWireBusId\x18\x08 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\x82\x02(\x01\x12\x38\n\x08\x63hannels\x18\t \x03(\x0b\x32\x17.blox.IoArray.IoChannelB\r\x92?\x04\x10\x02x\x01\x8a\xb5\x18\x02(\x01\x12\x19\n\x04pins\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x0b\x8a\xb5\x18\x07\x18\xbb\x02J\x02\n\t*G\n\tChannelId\x12\x14\n\x10\x44S2413_CHAN_NONE\x10\x00\x12\x11\n\rDS2413_CHAN_A\x10\x01\x12\x11\n\rDS2413_CHAN_B\x10\x02\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -24,7 +24,7 @@ if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None _BLOCK.fields_by_name['address']._options = None - _BLOCK.fields_by_name['address']._serialized_options = b'\212\265\030\002 \001' + _BLOCK.fields_by_name['address']._serialized_options = b'\212\265\030\004 \001x\001' _BLOCK.fields_by_name['connected']._options = None _BLOCK.fields_by_name['connected']._serialized_options = b'\212\265\030\002(\001' _BLOCK.fields_by_name['oneWireBusId']._options = None @@ -35,8 +35,8 @@ _BLOCK.fields_by_name['pins']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\007\030\273\002J\002\n\t' - _globals['_CHANNELID']._serialized_start=272 - _globals['_CHANNELID']._serialized_end=343 + _globals['_CHANNELID']._serialized_start=274 + _globals['_CHANNELID']._serialized_end=345 _globals['_BLOCK']._serialized_start=75 - _globals['_BLOCK']._serialized_end=270 + _globals['_BLOCK']._serialized_end=272 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/DigitalActuator_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/DigitalActuator_pb2.py index c7e78607..4060d412 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/DigitalActuator_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/DigitalActuator_pb2.py @@ -18,7 +18,7 @@ import Claims_pb2 as Claims__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15\x44igitalActuator.proto\x12\x14\x62lox.DigitalActuator\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x11\x43onstraints.proto\x1a\rIoArray.proto\x1a\x0c\x43laims.proto\"\x81\x05\n\x05\x42lock\x12\x1d\n\x08hwDevice\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\n\x12\x16\n\x07\x63hannel\x18\x02 \x01(\rB\x05\x92?\x02\x38\x08\x12\x37\n\x0bstoredState\x18\x0b \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x06\x8a\xb5\x18\x02\x30\x01\x12:\n\x0c\x64\x65siredState\x18\x06 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x33\n\x05state\x18\x03 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x0e\n\x06invert\x18\x04 \x01(\x08\x12\x45\n\rconstrainedBy\x18\x05 \x01(\x0b\x32..blox.Constraints.DeprecatedDigitalConstraints\x12\x39\n\x0b\x63onstraints\x18\r \x01(\x0b\x32$.blox.Constraints.DigitalConstraints\x12H\n\x18transitionDurationPreset\x18\x07 \x01(\x0e\x32&.blox.IoArray.TransitionDurationPreset\x12,\n\x19transitionDurationSetting\x18\x08 \x01(\rB\t\x8a\xb5\x18\x05\x08\x03\x10\xe8\x07\x12,\n\x17transitionDurationValue\x18\t \x01(\rB\x0b\x8a\xb5\x18\x07\x08\x03\x10\xe8\x07(\x01\x12!\n\tclaimedBy\x18\n \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12-\n\x0bsettingMode\x18\x0c \x01(\x0e\x32\x18.blox.Claims.SettingMode:\r\x8a\xb5\x18\t\x18\xbe\x02J\x04\x06\x15\x10\x11\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15\x44igitalActuator.proto\x12\x14\x62lox.DigitalActuator\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x11\x43onstraints.proto\x1a\rIoArray.proto\x1a\x0c\x43laims.proto\"\xad\x05\n\x05\x42lock\x12\x1f\n\x08hwDevice\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\nx\x01\x12\x1c\n\x07\x63hannel\x18\x02 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12\x39\n\x0bstoredState\x18\x0b \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x08\x8a\xb5\x18\x04\x30\x01x\x01\x12:\n\x0c\x64\x65siredState\x18\x06 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x33\n\x05state\x18\x03 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x16\n\x06invert\x18\x04 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x45\n\rconstrainedBy\x18\x05 \x01(\x0b\x32..blox.Constraints.DeprecatedDigitalConstraints\x12\x41\n\x0b\x63onstraints\x18\r \x01(\x0b\x32$.blox.Constraints.DigitalConstraintsB\x06\x8a\xb5\x18\x02x\x01\x12P\n\x18transitionDurationPreset\x18\x07 \x01(\x0e\x32&.blox.IoArray.TransitionDurationPresetB\x06\x8a\xb5\x18\x02x\x01\x12.\n\x19transitionDurationSetting\x18\x08 \x01(\rB\x0b\x8a\xb5\x18\x07\x08\x03\x10\xe8\x07x\x01\x12,\n\x17transitionDurationValue\x18\t \x01(\rB\x0b\x8a\xb5\x18\x07\x08\x03\x10\xe8\x07(\x01\x12!\n\tclaimedBy\x18\n \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12\x35\n\x0bsettingMode\x18\x0c \x01(\x0e\x32\x18.blox.Claims.SettingModeB\x06\x8a\xb5\x18\x02x\x01:\r\x8a\xb5\x18\t\x18\xbe\x02J\x04\x06\x15\x10\x11\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -26,23 +26,31 @@ if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None _BLOCK.fields_by_name['hwDevice']._options = None - _BLOCK.fields_by_name['hwDevice']._serialized_options = b'\222?\0028\020\212\265\030\002\030\n' + _BLOCK.fields_by_name['hwDevice']._serialized_options = b'\222?\0028\020\212\265\030\004\030\nx\001' _BLOCK.fields_by_name['channel']._options = None - _BLOCK.fields_by_name['channel']._serialized_options = b'\222?\0028\010' + _BLOCK.fields_by_name['channel']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' _BLOCK.fields_by_name['storedState']._options = None - _BLOCK.fields_by_name['storedState']._serialized_options = b'\212\265\030\0020\001' + _BLOCK.fields_by_name['storedState']._serialized_options = b'\212\265\030\0040\001x\001' _BLOCK.fields_by_name['desiredState']._options = None _BLOCK.fields_by_name['desiredState']._serialized_options = b'\212\265\030\004(\0010\001' _BLOCK.fields_by_name['state']._options = None _BLOCK.fields_by_name['state']._serialized_options = b'\212\265\030\004(\0010\001' + _BLOCK.fields_by_name['invert']._options = None + _BLOCK.fields_by_name['invert']._serialized_options = b'\212\265\030\002x\001' + _BLOCK.fields_by_name['constraints']._options = None + _BLOCK.fields_by_name['constraints']._serialized_options = b'\212\265\030\002x\001' + _BLOCK.fields_by_name['transitionDurationPreset']._options = None + _BLOCK.fields_by_name['transitionDurationPreset']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['transitionDurationSetting']._options = None - _BLOCK.fields_by_name['transitionDurationSetting']._serialized_options = b'\212\265\030\005\010\003\020\350\007' + _BLOCK.fields_by_name['transitionDurationSetting']._serialized_options = b'\212\265\030\007\010\003\020\350\007x\001' _BLOCK.fields_by_name['transitionDurationValue']._options = None _BLOCK.fields_by_name['transitionDurationValue']._serialized_options = b'\212\265\030\007\010\003\020\350\007(\001' _BLOCK.fields_by_name['claimedBy']._options = None _BLOCK.fields_by_name['claimedBy']._serialized_options = b'\222?\0028\020\212\265\030\005\030\377\001(\001' + _BLOCK.fields_by_name['settingMode']._options = None + _BLOCK.fields_by_name['settingMode']._serialized_options = b'\212\265\030\002x\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\t\030\276\002J\004\006\025\020\021' _globals['_BLOCK']._serialized_start=126 - _globals['_BLOCK']._serialized_end=767 + _globals['_BLOCK']._serialized_end=811 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/DigitalInput_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/DigitalInput_pb2.py index ad61980c..00ce4435 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/DigitalInput_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/DigitalInput_pb2.py @@ -16,7 +16,7 @@ import IoArray_pb2 as IoArray__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x12\x44igitalInput.proto\x12\x11\x62lox.DigitalInput\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\x9c\x02\n\x05\x42lock\x12\x1d\n\x08hwDevice\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\n\x12\x16\n\x07\x63hannel\x18\x02 \x01(\rB\x05\x92?\x02\x38\x08\x12\x33\n\x05state\x18\x03 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x0e\n\x06invert\x18\x04 \x01(\x08\x12\x33\n\x08\x62\x65havior\x18\x05 \x01(\x0e\x32!.blox.DigitalInput.ToggleBehavior\x12 \n\rminActiveTime\x18\x06 \x01(\rB\t\x8a\xb5\x18\x05\x08\x03\x10\xe8\x07\x12\x33\n\x07hwState\x18\x07 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x06\x8a\xb5\x18\x02(\x01:\x0b\x8a\xb5\x18\x07\x18\xca\x02J\x02\x1b\x11*-\n\x0eToggleBehavior\x12\n\n\x06\x44IRECT\x10\x00\x12\x0f\n\x0b\x41LTERNATING\x10\x01\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x12\x44igitalInput.proto\x12\x11\x62lox.DigitalInput\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\xb6\x02\n\x05\x42lock\x12\x1f\n\x08hwDevice\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\nx\x01\x12\x1c\n\x07\x63hannel\x18\x02 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12\x33\n\x05state\x18\x03 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x16\n\x06invert\x18\x04 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12;\n\x08\x62\x65havior\x18\x05 \x01(\x0e\x32!.blox.DigitalInput.ToggleBehaviorB\x06\x8a\xb5\x18\x02x\x01\x12\"\n\rminActiveTime\x18\x06 \x01(\rB\x0b\x8a\xb5\x18\x07\x08\x03\x10\xe8\x07x\x01\x12\x33\n\x07hwState\x18\x07 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x06\x8a\xb5\x18\x02(\x01:\x0b\x8a\xb5\x18\x07\x18\xca\x02J\x02\x1b\x11*-\n\x0eToggleBehavior\x12\n\n\x06\x44IRECT\x10\x00\x12\x0f\n\x0b\x41LTERNATING\x10\x01\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -24,19 +24,23 @@ if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None _BLOCK.fields_by_name['hwDevice']._options = None - _BLOCK.fields_by_name['hwDevice']._serialized_options = b'\222?\0028\020\212\265\030\002\030\n' + _BLOCK.fields_by_name['hwDevice']._serialized_options = b'\222?\0028\020\212\265\030\004\030\nx\001' _BLOCK.fields_by_name['channel']._options = None - _BLOCK.fields_by_name['channel']._serialized_options = b'\222?\0028\010' + _BLOCK.fields_by_name['channel']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' _BLOCK.fields_by_name['state']._options = None _BLOCK.fields_by_name['state']._serialized_options = b'\212\265\030\004(\0010\001' + _BLOCK.fields_by_name['invert']._options = None + _BLOCK.fields_by_name['invert']._serialized_options = b'\212\265\030\002x\001' + _BLOCK.fields_by_name['behavior']._options = None + _BLOCK.fields_by_name['behavior']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['minActiveTime']._options = None - _BLOCK.fields_by_name['minActiveTime']._serialized_options = b'\212\265\030\005\010\003\020\350\007' + _BLOCK.fields_by_name['minActiveTime']._serialized_options = b'\212\265\030\007\010\003\020\350\007x\001' _BLOCK.fields_by_name['hwState']._options = None _BLOCK.fields_by_name['hwState']._serialized_options = b'\212\265\030\002(\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\007\030\312\002J\002\033\021' - _globals['_TOGGLEBEHAVIOR']._serialized_start=373 - _globals['_TOGGLEBEHAVIOR']._serialized_end=418 + _globals['_TOGGLEBEHAVIOR']._serialized_start=399 + _globals['_TOGGLEBEHAVIOR']._serialized_end=444 _globals['_BLOCK']._serialized_start=87 - _globals['_BLOCK']._serialized_end=371 + _globals['_BLOCK']._serialized_end=397 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/DisplaySettings_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/DisplaySettings_pb2.py index 2bef04f8..bf13210f 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/DisplaySettings_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/DisplaySettings_pb2.py @@ -15,7 +15,7 @@ import nanopb_pb2 as nanopb__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15\x44isplaySettings.proto\x12\x14\x62lox.DisplaySettings\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\xef\x01\n\x06Widget\x12\x12\n\x03pos\x18\x01 \x01(\rB\x05\x92?\x02\x38\x08\x12\x1c\n\x05\x63olor\x18\x02 \x01(\x0c\x42\r\x92?\x04\x08\x03x\x01\x8a\xb5\x18\x02\x38\x01\x12\x13\n\x04name\x18\x03 \x01(\tB\x05\x92?\x02\x08\x10\x12!\n\ntempSensor\x18\n \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x02H\x00\x12)\n\x12setpointSensorPair\x18\x0b \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x04H\x00\x12%\n\x0e\x61\x63tuatorAnalog\x18\x0c \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x05H\x00\x12\x1b\n\x03pid\x18\x0e \x01(\rB\x0c\x92?\x02\x38\x10\x8a\xb5\x18\x03\x18\xb0\x02H\x00\x42\x0c\n\nWidgetType\"\xba\x01\n\x05\x42lock\x12\x34\n\x07widgets\x18\x01 \x03(\x0b\x32\x1c.blox.DisplaySettings.WidgetB\x05\x92?\x02\x10\x06\x12\x13\n\x04name\x18\x02 \x01(\tB\x05\x92?\x02\x08(\x12\x1f\n\nbrightness\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12\x1d\n\x08timeZone\x18[ \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12\x1d\n\x08tempUnit\x18\\ \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x07\x8a\xb5\x18\x03\x18\xba\x02\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15\x44isplaySettings.proto\x12\x14\x62lox.DisplaySettings\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\x85\x02\n\x06Widget\x12\x18\n\x03pos\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12\x1e\n\x05\x63olor\x18\x02 \x01(\x0c\x42\x0f\x92?\x04\x08\x03x\x01\x8a\xb5\x18\x04\x38\x01x\x01\x12\x19\n\x04name\x18\x03 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01\x12#\n\ntempSensor\x18\n \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x02x\x01H\x00\x12+\n\x12setpointSensorPair\x18\x0b \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x04x\x01H\x00\x12\'\n\x0e\x61\x63tuatorAnalog\x18\x0c \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x05x\x01H\x00\x12\x1d\n\x03pid\x18\x0e \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xb0\x02x\x01H\x00\x42\x0c\n\nWidgetType\"\xc6\x01\n\x05\x42lock\x12:\n\x07widgets\x18\x01 \x03(\x0b\x32\x1c.blox.DisplaySettings.WidgetB\x0b\x92?\x02\x10\x06\x8a\xb5\x18\x02x\x01\x12\x19\n\x04name\x18\x02 \x01(\tB\x0b\x92?\x02\x08(\x8a\xb5\x18\x02x\x01\x12\x1f\n\nbrightness\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12\x1d\n\x08timeZone\x18[ \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12\x1d\n\x08tempUnit\x18\\ \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x07\x8a\xb5\x18\x03\x18\xba\x02\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -23,23 +23,23 @@ if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None _WIDGET.fields_by_name['pos']._options = None - _WIDGET.fields_by_name['pos']._serialized_options = b'\222?\0028\010' + _WIDGET.fields_by_name['pos']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' _WIDGET.fields_by_name['color']._options = None - _WIDGET.fields_by_name['color']._serialized_options = b'\222?\004\010\003x\001\212\265\030\0028\001' + _WIDGET.fields_by_name['color']._serialized_options = b'\222?\004\010\003x\001\212\265\030\0048\001x\001' _WIDGET.fields_by_name['name']._options = None - _WIDGET.fields_by_name['name']._serialized_options = b'\222?\002\010\020' + _WIDGET.fields_by_name['name']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _WIDGET.fields_by_name['tempSensor']._options = None - _WIDGET.fields_by_name['tempSensor']._serialized_options = b'\222?\0028\020\212\265\030\002\030\002' + _WIDGET.fields_by_name['tempSensor']._serialized_options = b'\222?\0028\020\212\265\030\004\030\002x\001' _WIDGET.fields_by_name['setpointSensorPair']._options = None - _WIDGET.fields_by_name['setpointSensorPair']._serialized_options = b'\222?\0028\020\212\265\030\002\030\004' + _WIDGET.fields_by_name['setpointSensorPair']._serialized_options = b'\222?\0028\020\212\265\030\004\030\004x\001' _WIDGET.fields_by_name['actuatorAnalog']._options = None - _WIDGET.fields_by_name['actuatorAnalog']._serialized_options = b'\222?\0028\020\212\265\030\002\030\005' + _WIDGET.fields_by_name['actuatorAnalog']._serialized_options = b'\222?\0028\020\212\265\030\004\030\005x\001' _WIDGET.fields_by_name['pid']._options = None - _WIDGET.fields_by_name['pid']._serialized_options = b'\222?\0028\020\212\265\030\003\030\260\002' + _WIDGET.fields_by_name['pid']._serialized_options = b'\222?\0028\020\212\265\030\005\030\260\002x\001' _BLOCK.fields_by_name['widgets']._options = None - _BLOCK.fields_by_name['widgets']._serialized_options = b'\222?\002\020\006' + _BLOCK.fields_by_name['widgets']._serialized_options = b'\222?\002\020\006\212\265\030\002x\001' _BLOCK.fields_by_name['name']._options = None - _BLOCK.fields_by_name['name']._serialized_options = b'\222?\002\010(' + _BLOCK.fields_by_name['name']._serialized_options = b'\222?\002\010(\212\265\030\002x\001' _BLOCK.fields_by_name['brightness']._options = None _BLOCK.fields_by_name['brightness']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK.fields_by_name['timeZone']._options = None @@ -49,7 +49,7 @@ _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\003\030\272\002' _globals['_WIDGET']._serialized_start=78 - _globals['_WIDGET']._serialized_end=317 - _globals['_BLOCK']._serialized_start=320 - _globals['_BLOCK']._serialized_end=506 + _globals['_WIDGET']._serialized_end=339 + _globals['_BLOCK']._serialized_start=342 + _globals['_BLOCK']._serialized_end=540 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/EdgeCase_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/EdgeCase_pb2.py index e24bc1d5..0ba254c6 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/EdgeCase_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/EdgeCase_pb2.py @@ -15,7 +15,7 @@ import nanopb_pb2 as nanopb__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0e\x45\x64geCase.proto\x12\rblox.EdgeCase\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\">\n\x08Settings\x12\x17\n\x07\x61\x64\x64ress\x18\x01 \x01(\x06\x42\x06\x8a\xb5\x18\x02 \x01\x12\x19\n\x06offset\x18\x02 \x01(\x11\x42\t\x8a\xb5\x18\x05\x08\x06\x10\x80\x02\"<\n\x05State\x12\x18\n\x05value\x18\x01 \x01(\x11\x42\t\x8a\xb5\x18\x05\x08\x01\x10\x80\x02\x12\x19\n\tconnected\x18\x02 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\"(\n\nNestedLink\x12\x1a\n\nconnection\x18\x01 \x01(\rB\x06\x8a\xb5\x18\x02\x18\x02\"\xa4\x02\n\x05\x42lock\x12)\n\x08settings\x18\x01 \x01(\x0b\x32\x17.blox.EdgeCase.Settings\x12#\n\x05state\x18\x02 \x01(\x0b\x32\x14.blox.EdgeCase.State\x12\x14\n\x04link\x18\x03 \x01(\rB\x06\x8a\xb5\x18\x02\x18\x05\x12\x32\n\x0f\x61\x64\x64itionalLinks\x18\x04 \x03(\x0b\x32\x19.blox.EdgeCase.NestedLink\x12\x1f\n\nlistValues\x18\x05 \x03(\x11\x42\x0b\x8a\xb5\x18\x07\x08\x01\x10\x80\x02h\x01\x12\x1b\n\x06\x64\x65ltaV\x18\x06 \x01(\rB\x0b\x8a\xb5\x18\x07\x08\x07\x10\x80\x02p\x01\x12\x18\n\x06logged\x18\x07 \x01(\rB\x08\x8a\xb5\x18\x04\x30\x01h\x01\x12\x10\n\x08unLogged\x18\x08 \x01(\r\x12\x17\n\x02ip\x18\n \x01(\rB\x0b\x92?\x02\x38 \x8a\xb5\x18\x02`\x01\"#\n\x07SubCase\x12\x10\n\x08subvalue\x18\x01 \x01(\r:\x06\x8a\xb5\x18\x02X\x01\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0e\x45\x64geCase.proto\x12\rblox.EdgeCase\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\">\n\x08Settings\x12\x17\n\x07\x61\x64\x64ress\x18\x01 \x01(\x06\x42\x06\x8a\xb5\x18\x02 \x01\x12\x19\n\x06offset\x18\x02 \x01(\x11\x42\t\x8a\xb5\x18\x05\x08\x06\x10\x80\x02\"<\n\x05State\x12\x18\n\x05value\x18\x01 \x01(\x11\x42\t\x8a\xb5\x18\x05\x08\x01\x10\x80\x02\x12\x19\n\tconnected\x18\x02 \x01(\x08\x42\x06\x8a\xb5\x18\x02(\x01\"(\n\nNestedLink\x12\x1a\n\nconnection\x18\x01 \x01(\rB\x06\x8a\xb5\x18\x02\x18\x02\"\xaa\x02\n\x05\x42lock\x12)\n\x08settings\x18\x01 \x01(\x0b\x32\x17.blox.EdgeCase.Settings\x12#\n\x05state\x18\x02 \x01(\x0b\x32\x14.blox.EdgeCase.State\x12\x16\n\x04link\x18\x03 \x01(\rB\x08\x8a\xb5\x18\x04\x18\x05x\x01\x12\x32\n\x0f\x61\x64\x64itionalLinks\x18\x04 \x03(\x0b\x32\x19.blox.EdgeCase.NestedLink\x12!\n\nlistValues\x18\x05 \x03(\x11\x42\r\x8a\xb5\x18\t\x08\x01\x10\x80\x02h\x01x\x01\x12\x1d\n\x06\x64\x65ltaV\x18\x06 \x01(\rB\r\x8a\xb5\x18\t\x08\x07\x10\x80\x02p\x01x\x01\x12\x18\n\x06logged\x18\x07 \x01(\rB\x08\x8a\xb5\x18\x04\x30\x01h\x01\x12\x10\n\x08unLogged\x18\x08 \x01(\r\x12\x17\n\x02ip\x18\n \x01(\rB\x0b\x92?\x02\x38 \x8a\xb5\x18\x02`\x01\"#\n\x07SubCase\x12\x10\n\x08subvalue\x18\x01 \x01(\r:\x06\x8a\xb5\x18\x02X\x01\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -33,11 +33,11 @@ _NESTEDLINK.fields_by_name['connection']._options = None _NESTEDLINK.fields_by_name['connection']._serialized_options = b'\212\265\030\002\030\002' _BLOCK.fields_by_name['link']._options = None - _BLOCK.fields_by_name['link']._serialized_options = b'\212\265\030\002\030\005' + _BLOCK.fields_by_name['link']._serialized_options = b'\212\265\030\004\030\005x\001' _BLOCK.fields_by_name['listValues']._options = None - _BLOCK.fields_by_name['listValues']._serialized_options = b'\212\265\030\007\010\001\020\200\002h\001' + _BLOCK.fields_by_name['listValues']._serialized_options = b'\212\265\030\t\010\001\020\200\002h\001x\001' _BLOCK.fields_by_name['deltaV']._options = None - _BLOCK.fields_by_name['deltaV']._serialized_options = b'\212\265\030\007\010\007\020\200\002p\001' + _BLOCK.fields_by_name['deltaV']._serialized_options = b'\212\265\030\t\010\007\020\200\002p\001x\001' _BLOCK.fields_by_name['logged']._options = None _BLOCK.fields_by_name['logged']._serialized_options = b'\212\265\030\0040\001h\001' _BLOCK.fields_by_name['ip']._options = None @@ -51,7 +51,7 @@ _globals['_NESTEDLINK']._serialized_start=189 _globals['_NESTEDLINK']._serialized_end=229 _globals['_BLOCK']._serialized_start=232 - _globals['_BLOCK']._serialized_end=524 - _globals['_SUBCASE']._serialized_start=526 - _globals['_SUBCASE']._serialized_end=561 + _globals['_BLOCK']._serialized_end=530 + _globals['_SUBCASE']._serialized_start=532 + _globals['_SUBCASE']._serialized_end=567 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/FastPwm_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/FastPwm_pb2.py index 35592031..4f72ba68 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/FastPwm_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/FastPwm_pb2.py @@ -18,33 +18,45 @@ import Claims_pb2 as Claims__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\rFastPwm.proto\x12\x0c\x62lox.FastPwm\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x11\x43onstraints.proto\x1a\rIoArray.proto\x1a\x0c\x43laims.proto\"\xac\x05\n\x05\x42lock\x12\x0f\n\x07\x65nabled\x18\x08 \x01(\x08\x12\x1d\n\x08hwDevice\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\n\x12\x16\n\x07\x63hannel\x18\x02 \x01(\rB\x05\x92?\x02\x38\x08\x12%\n\rstoredSetting\x18\x0e \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 0\x01\x12(\n\x0e\x64\x65siredSetting\x18\x05 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12!\n\x07setting\x18\x04 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x1f\n\x05value\x18\x06 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x0e\n\x06invert\x18\x0c \x01(\x08\x12-\n\tfrequency\x18\x03 \x01(\x0e\x32\x1a.blox.IoArray.PwmFrequency\x12\x44\n\rconstrainedBy\x18\x07 \x01(\x0b\x32-.blox.Constraints.DeprecatedAnalogConstraints\x12\x38\n\x0b\x63onstraints\x18\x10 \x01(\x0b\x32#.blox.Constraints.AnalogConstraints\x12H\n\x18transitionDurationPreset\x18\t \x01(\x0e\x32&.blox.IoArray.TransitionDurationPreset\x12,\n\x19transitionDurationSetting\x18\n \x01(\rB\t\x8a\xb5\x18\x05\x08\x03\x10\xe8\x07\x12,\n\x17transitionDurationValue\x18\x0b \x01(\rB\x0b\x8a\xb5\x18\x07\x08\x03\x10\xe8\x07(\x01\x12!\n\tclaimedBy\x18\r \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12-\n\x0bsettingMode\x18\x0f \x01(\x0e\x32\x18.blox.Claims.SettingMode:\x0f\x8a\xb5\x18\x0b\x18\xc9\x02J\x06\x01\x13\x05\x0f\x10\x11\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\rFastPwm.proto\x12\x0c\x62lox.FastPwm\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x11\x43onstraints.proto\x1a\rIoArray.proto\x1a\x0c\x43laims.proto\"\xe8\x05\n\x05\x42lock\x12\x17\n\x07\x65nabled\x18\x08 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x1f\n\x08hwDevice\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\nx\x01\x12\x1c\n\x07\x63hannel\x18\x02 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12\'\n\rstoredSetting\x18\x0e \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 0\x01x\x01\x12(\n\x0e\x64\x65siredSetting\x18\x05 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12!\n\x07setting\x18\x04 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x1f\n\x05value\x18\x06 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x16\n\x06invert\x18\x0c \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x35\n\tfrequency\x18\x03 \x01(\x0e\x32\x1a.blox.IoArray.PwmFrequencyB\x06\x8a\xb5\x18\x02x\x01\x12\x44\n\rconstrainedBy\x18\x07 \x01(\x0b\x32-.blox.Constraints.DeprecatedAnalogConstraints\x12@\n\x0b\x63onstraints\x18\x10 \x01(\x0b\x32#.blox.Constraints.AnalogConstraintsB\x06\x8a\xb5\x18\x02x\x01\x12P\n\x18transitionDurationPreset\x18\t \x01(\x0e\x32&.blox.IoArray.TransitionDurationPresetB\x06\x8a\xb5\x18\x02x\x01\x12.\n\x19transitionDurationSetting\x18\n \x01(\rB\x0b\x8a\xb5\x18\x07\x08\x03\x10\xe8\x07x\x01\x12,\n\x17transitionDurationValue\x18\x0b \x01(\rB\x0b\x8a\xb5\x18\x07\x08\x03\x10\xe8\x07(\x01\x12!\n\tclaimedBy\x18\r \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12\x35\n\x0bsettingMode\x18\x0f \x01(\x0e\x32\x18.blox.Claims.SettingModeB\x06\x8a\xb5\x18\x02x\x01:\x0f\x8a\xb5\x18\x0b\x18\xc9\x02J\x06\x01\x13\x05\x0f\x10\x11\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'FastPwm_pb2', _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None + _BLOCK.fields_by_name['enabled']._options = None + _BLOCK.fields_by_name['enabled']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['hwDevice']._options = None - _BLOCK.fields_by_name['hwDevice']._serialized_options = b'\222?\0028\020\212\265\030\002\030\n' + _BLOCK.fields_by_name['hwDevice']._serialized_options = b'\222?\0028\020\212\265\030\004\030\nx\001' _BLOCK.fields_by_name['channel']._options = None - _BLOCK.fields_by_name['channel']._serialized_options = b'\222?\0028\010' + _BLOCK.fields_by_name['channel']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' _BLOCK.fields_by_name['storedSetting']._options = None - _BLOCK.fields_by_name['storedSetting']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 0\001' + _BLOCK.fields_by_name['storedSetting']._serialized_options = b'\222?\0028 \212\265\030\007\020\200 0\001x\001' _BLOCK.fields_by_name['desiredSetting']._options = None _BLOCK.fields_by_name['desiredSetting']._serialized_options = b'\222?\0028 \212\265\030\007\020\200 (\0010\001' _BLOCK.fields_by_name['setting']._options = None _BLOCK.fields_by_name['setting']._serialized_options = b'\222?\0028 \212\265\030\007\020\200 (\0010\001' _BLOCK.fields_by_name['value']._options = None _BLOCK.fields_by_name['value']._serialized_options = b'\222?\0028 \212\265\030\007\020\200 (\0010\001' + _BLOCK.fields_by_name['invert']._options = None + _BLOCK.fields_by_name['invert']._serialized_options = b'\212\265\030\002x\001' + _BLOCK.fields_by_name['frequency']._options = None + _BLOCK.fields_by_name['frequency']._serialized_options = b'\212\265\030\002x\001' + _BLOCK.fields_by_name['constraints']._options = None + _BLOCK.fields_by_name['constraints']._serialized_options = b'\212\265\030\002x\001' + _BLOCK.fields_by_name['transitionDurationPreset']._options = None + _BLOCK.fields_by_name['transitionDurationPreset']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['transitionDurationSetting']._options = None - _BLOCK.fields_by_name['transitionDurationSetting']._serialized_options = b'\212\265\030\005\010\003\020\350\007' + _BLOCK.fields_by_name['transitionDurationSetting']._serialized_options = b'\212\265\030\007\010\003\020\350\007x\001' _BLOCK.fields_by_name['transitionDurationValue']._options = None _BLOCK.fields_by_name['transitionDurationValue']._serialized_options = b'\212\265\030\007\010\003\020\350\007(\001' _BLOCK.fields_by_name['claimedBy']._options = None _BLOCK.fields_by_name['claimedBy']._serialized_options = b'\222?\0028\020\212\265\030\005\030\377\001(\001' + _BLOCK.fields_by_name['settingMode']._options = None + _BLOCK.fields_by_name['settingMode']._serialized_options = b'\212\265\030\002x\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\013\030\311\002J\006\001\023\005\017\020\021' _globals['_BLOCK']._serialized_start=110 - _globals['_BLOCK']._serialized_end=794 + _globals['_BLOCK']._serialized_end=854 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/GpioModule_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/GpioModule_pb2.py new file mode 100644 index 00000000..cae95031 --- /dev/null +++ b/brewblox_devcon_spark/codec/proto-compiled/GpioModule_pb2.py @@ -0,0 +1,75 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: GpioModule.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +import brewblox_pb2 as brewblox__pb2 +import nanopb_pb2 as nanopb__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x10GpioModule.proto\x12\x0f\x62lox.GpioModule\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\x9e\x02\n\x07\x43hannel\x12\x17\n\x02id\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12\x37\n\ndeviceType\x18\x02 \x01(\x0e\x32\x1b.blox.GpioModule.DeviceTypeB\x06\x8a\xb5\x18\x02x\x01\x12\x1f\n\x08pinsMask\x18\x03 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04P\x01x\x01\x12\x1a\n\x05width\x18\x04 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12\x19\n\x04name\x18\x05 \x01(\tB\x0b\x92?\x02\x08 \x8a\xb5\x18\x02x\x01\x12#\n\x0c\x63\x61pabilities\x18\x06 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04(\x01P\x01\x12!\n\tclaimedBy\x18\x07 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12!\n\nerrorFlags\x18\x08 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04P\x01x\x01\"\x89\x04\n\x06Status\x12#\n\x0cmoduleStatus\x18\x03 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12$\n\rpullUpDesired\x18\x04 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12#\n\x0cpullUpStatus\x18\x05 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12\'\n\x10pullUpWhenActive\x18\x06 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12)\n\x12pullUpWhenInactive\x18\x07 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12&\n\x0fpullDownDesired\x18\x08 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12%\n\x0epullDownStatus\x18\t \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12)\n\x12pullDownWhenActive\x18\n \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12+\n\x14pullDownWhenInactive\x18\x0b \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12\"\n\x0boverCurrent\x18\x0c \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12\x1f\n\x08openLoad\x18\r \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12&\n\x0f\x66\x61ultsHistory5m\x18\x0f \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12\'\n\x10\x66\x61ultsHistory60m\x18\x10 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01*\xa9\x05\n\nDeviceType\x12\x11\n\rGPIO_DEV_NONE\x10\x00\x12\x13\n\x0fGPIO_DEV_SSR_2P\x10\x01\x12\x13\n\x0fGPIO_DEV_SSR_1P\x10\x02\x12 \n\x1cGPIO_DEV_MECHANICAL_RELAY_2P\x10\x03\x12*\n&GPIO_DEV_MECHANICAL_RELAY_1P_HIGH_SIDE\x10\x04\x12)\n%GPIO_DEV_MECHANICAL_RELAY_1P_LOW_SIDE\x10\x05\x12\x14\n\x10GPIO_DEV_COIL_2P\x10\x06\x12\"\n\x1eGPIO_DEV_COIL_2P_BIDIRECTIONAL\x10\x07\x12\x1e\n\x1aGPIO_DEV_COIL_1P_HIGH_SIDE\x10\x08\x12\x1d\n\x19GPIO_DEV_COIL_1P_LOW_SIDE\x10\t\x12\x15\n\x11GPIO_DEV_MOTOR_2P\x10\n\x12#\n\x1fGPIO_DEV_MOTOR_2P_BIDIRECTIONAL\x10\x0b\x12\x1f\n\x1bGPIO_DEV_MOTOR_1P_HIGH_SIDE\x10\x0c\x12\x1e\n\x1aGPIO_DEV_MOTOR_1P_LOW_SIDE\x10\r\x12\"\n\x1eGPIO_DEV_DETECT_LOW_CURRENT_2P\x10\x0e\x12&\n\"GPIO_DEV_DETECT_LOW_CURRENT_1P_GND\x10\x0f\x12\x15\n\x11GPIO_DEV_POWER_1P\x10\x11\x12)\n%GPIO_DEV_DETECT_HIGH_CURRENT_1P_POWER\x10\x12\x12\x13\n\x0fGPIO_DEV_GND_1P\x10\x13\x12\'\n#GPIO_DEV_DETECT_HIGH_CURRENT_1P_GND\x10\x14\x12#\n\x1fGPIO_DEV_DETECT_HIGH_CURRENT_2P\x10\x15*\x86\x02\n\nErrorFlags\x12\x11\n\rGPIO_ERR_NONE\x10\x00\x12\x1b\n\x17GPIO_ERR_POWER_ON_RESET\x10\x01\x12\x18\n\x14GPIO_ERR_OVERVOLTAGE\x10\x02\x12\x19\n\x15GPIO_ERR_UNDERVOLTAGE\x10\x04\x12\x18\n\x14GPIO_ERR_OVERCURRENT\x10\x08\x12\x16\n\x12GPIO_ERR_OPEN_LOAD\x10\x10\x12$\n GPIO_ERR_OVERTEMPERATURE_WARNING\x10 \x12\"\n\x1eGPIO_ERR_OVERTEMPERATURE_ERROR\x10@\x12\x17\n\x12GPIO_ERR_SPI_ERROR\x10\x80\x01\x62\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'GpioModule_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + DESCRIPTOR._options = None + _CHANNEL.fields_by_name['id']._options = None + _CHANNEL.fields_by_name['id']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' + _CHANNEL.fields_by_name['deviceType']._options = None + _CHANNEL.fields_by_name['deviceType']._serialized_options = b'\212\265\030\002x\001' + _CHANNEL.fields_by_name['pinsMask']._options = None + _CHANNEL.fields_by_name['pinsMask']._serialized_options = b'\222?\0028\010\212\265\030\004P\001x\001' + _CHANNEL.fields_by_name['width']._options = None + _CHANNEL.fields_by_name['width']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' + _CHANNEL.fields_by_name['name']._options = None + _CHANNEL.fields_by_name['name']._serialized_options = b'\222?\002\010 \212\265\030\002x\001' + _CHANNEL.fields_by_name['capabilities']._options = None + _CHANNEL.fields_by_name['capabilities']._serialized_options = b'\222?\0028\020\212\265\030\004(\001P\001' + _CHANNEL.fields_by_name['claimedBy']._options = None + _CHANNEL.fields_by_name['claimedBy']._serialized_options = b'\222?\0028\020\212\265\030\005\030\377\001(\001' + _CHANNEL.fields_by_name['errorFlags']._options = None + _CHANNEL.fields_by_name['errorFlags']._serialized_options = b'\222?\0028\010\212\265\030\004P\001x\001' + _STATUS.fields_by_name['moduleStatus']._options = None + _STATUS.fields_by_name['moduleStatus']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _STATUS.fields_by_name['pullUpDesired']._options = None + _STATUS.fields_by_name['pullUpDesired']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _STATUS.fields_by_name['pullUpStatus']._options = None + _STATUS.fields_by_name['pullUpStatus']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _STATUS.fields_by_name['pullUpWhenActive']._options = None + _STATUS.fields_by_name['pullUpWhenActive']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _STATUS.fields_by_name['pullUpWhenInactive']._options = None + _STATUS.fields_by_name['pullUpWhenInactive']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _STATUS.fields_by_name['pullDownDesired']._options = None + _STATUS.fields_by_name['pullDownDesired']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _STATUS.fields_by_name['pullDownStatus']._options = None + _STATUS.fields_by_name['pullDownStatus']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _STATUS.fields_by_name['pullDownWhenActive']._options = None + _STATUS.fields_by_name['pullDownWhenActive']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _STATUS.fields_by_name['pullDownWhenInactive']._options = None + _STATUS.fields_by_name['pullDownWhenInactive']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _STATUS.fields_by_name['overCurrent']._options = None + _STATUS.fields_by_name['overCurrent']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _STATUS.fields_by_name['openLoad']._options = None + _STATUS.fields_by_name['openLoad']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _STATUS.fields_by_name['faultsHistory5m']._options = None + _STATUS.fields_by_name['faultsHistory5m']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _STATUS.fields_by_name['faultsHistory60m']._options = None + _STATUS.fields_by_name['faultsHistory60m']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' + _globals['_DEVICETYPE']._serialized_start=881 + _globals['_DEVICETYPE']._serialized_end=1562 + _globals['_ERRORFLAGS']._serialized_start=1565 + _globals['_ERRORFLAGS']._serialized_end=1827 + _globals['_CHANNEL']._serialized_start=68 + _globals['_CHANNEL']._serialized_end=354 + _globals['_STATUS']._serialized_start=357 + _globals['_STATUS']._serialized_end=878 +# @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/IoArray_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/IoArray_pb2.py index 01599055..b7df0078 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/IoArray_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/IoArray_pb2.py @@ -15,7 +15,7 @@ import brewblox_pb2 as brewblox__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\rIoArray.proto\x12\x0c\x62lox.IoArray\x1a\x0cnanopb.proto\x1a\x0e\x62rewblox.proto\"f\n\tIoChannel\x12\x11\n\x02id\x18\x01 \x01(\rB\x05\x92?\x02\x38\x08\x12#\n\x0c\x63\x61pabilities\x18\x02 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04(\x01P\x01\x12!\n\tclaimedBy\x18\x03 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01*\x85\x01\n\x0c\x44igitalState\x12\x12\n\x0eSTATE_INACTIVE\x10\x00\x12\x10\n\x0cSTATE_ACTIVE\x10\x01\x12\x11\n\rSTATE_UNKNOWN\x10\x02\x12\x11\n\rSTATE_REVERSE\x10\x03\x12\x0c\n\x08Inactive\x10\x00\x12\n\n\x06\x41\x63tive\x10\x01\x12\x0b\n\x07Unknown\x10\x02\x1a\x02\x10\x01*^\n\x18TransitionDurationPreset\x12\n\n\x06ST_OFF\x10\x00\x12\x0b\n\x07ST_FAST\x10\x01\x12\r\n\tST_MEDIUM\x10\x02\x12\x0b\n\x07ST_SLOW\x10\x03\x12\r\n\tST_CUSTOM\x10\x04*\x85\x02\n\x13\x43hannelCapabilities\x12\x16\n\x12\x43HAN_SUPPORTS_NONE\x10\x00\x12 \n\x1c\x43HAN_SUPPORTS_DIGITAL_OUTPUT\x10\x01\x12\x1a\n\x16\x43HAN_SUPPORTS_PWM_80HZ\x10\x02\x12\x1b\n\x17\x43HAN_SUPPORTS_PWM_100HZ\x10\x04\x12\x1b\n\x17\x43HAN_SUPPORTS_PWM_200HZ\x10\x08\x12\x1c\n\x18\x43HAN_SUPPORTS_PWM_2000HZ\x10\x10\x12\x1f\n\x1b\x43HAN_SUPPORTS_BIDIRECTIONAL\x10 \x12\x1f\n\x1b\x43HAN_SUPPORTS_DIGITAL_INPUT\x10@*^\n\x0cPwmFrequency\x12\x11\n\rPWM_FREQ_80HZ\x10\x00\x12\x12\n\x0ePWM_FREQ_100HZ\x10\x01\x12\x12\n\x0ePWM_FREQ_200HZ\x10\x02\x12\x13\n\x0fPWM_FREQ_2000HZ\x10\x03\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\rIoArray.proto\x12\x0c\x62lox.IoArray\x1a\x0cnanopb.proto\x1a\x0e\x62rewblox.proto\"l\n\tIoChannel\x12\x17\n\x02id\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02(\x01\x12#\n\x0c\x63\x61pabilities\x18\x02 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04(\x01P\x01\x12!\n\tclaimedBy\x18\x03 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01*\x85\x01\n\x0c\x44igitalState\x12\x12\n\x0eSTATE_INACTIVE\x10\x00\x12\x10\n\x0cSTATE_ACTIVE\x10\x01\x12\x11\n\rSTATE_UNKNOWN\x10\x02\x12\x11\n\rSTATE_REVERSE\x10\x03\x12\x0c\n\x08Inactive\x10\x00\x12\n\n\x06\x41\x63tive\x10\x01\x12\x0b\n\x07Unknown\x10\x02\x1a\x02\x10\x01*^\n\x18TransitionDurationPreset\x12\n\n\x06ST_OFF\x10\x00\x12\x0b\n\x07ST_FAST\x10\x01\x12\r\n\tST_MEDIUM\x10\x02\x12\x0b\n\x07ST_SLOW\x10\x03\x12\r\n\tST_CUSTOM\x10\x04*\x85\x02\n\x13\x43hannelCapabilities\x12\x16\n\x12\x43HAN_SUPPORTS_NONE\x10\x00\x12 \n\x1c\x43HAN_SUPPORTS_DIGITAL_OUTPUT\x10\x01\x12\x1a\n\x16\x43HAN_SUPPORTS_PWM_80HZ\x10\x02\x12\x1b\n\x17\x43HAN_SUPPORTS_PWM_100HZ\x10\x04\x12\x1b\n\x17\x43HAN_SUPPORTS_PWM_200HZ\x10\x08\x12\x1c\n\x18\x43HAN_SUPPORTS_PWM_2000HZ\x10\x10\x12\x1f\n\x1b\x43HAN_SUPPORTS_BIDIRECTIONAL\x10 \x12\x1f\n\x1b\x43HAN_SUPPORTS_DIGITAL_INPUT\x10@*^\n\x0cPwmFrequency\x12\x11\n\rPWM_FREQ_80HZ\x10\x00\x12\x12\n\x0ePWM_FREQ_100HZ\x10\x01\x12\x12\n\x0ePWM_FREQ_200HZ\x10\x02\x12\x13\n\x0fPWM_FREQ_2000HZ\x10\x03\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -25,19 +25,19 @@ _DIGITALSTATE._options = None _DIGITALSTATE._serialized_options = b'\020\001' _IOCHANNEL.fields_by_name['id']._options = None - _IOCHANNEL.fields_by_name['id']._serialized_options = b'\222?\0028\010' + _IOCHANNEL.fields_by_name['id']._serialized_options = b'\222?\0028\010\212\265\030\002(\001' _IOCHANNEL.fields_by_name['capabilities']._options = None _IOCHANNEL.fields_by_name['capabilities']._serialized_options = b'\222?\0028\020\212\265\030\004(\001P\001' _IOCHANNEL.fields_by_name['claimedBy']._options = None _IOCHANNEL.fields_by_name['claimedBy']._serialized_options = b'\222?\0028\020\212\265\030\005\030\377\001(\001' - _globals['_DIGITALSTATE']._serialized_start=166 - _globals['_DIGITALSTATE']._serialized_end=299 - _globals['_TRANSITIONDURATIONPRESET']._serialized_start=301 - _globals['_TRANSITIONDURATIONPRESET']._serialized_end=395 - _globals['_CHANNELCAPABILITIES']._serialized_start=398 - _globals['_CHANNELCAPABILITIES']._serialized_end=659 - _globals['_PWMFREQUENCY']._serialized_start=661 - _globals['_PWMFREQUENCY']._serialized_end=755 + _globals['_DIGITALSTATE']._serialized_start=172 + _globals['_DIGITALSTATE']._serialized_end=305 + _globals['_TRANSITIONDURATIONPRESET']._serialized_start=307 + _globals['_TRANSITIONDURATIONPRESET']._serialized_end=401 + _globals['_CHANNELCAPABILITIES']._serialized_start=404 + _globals['_CHANNELCAPABILITIES']._serialized_end=665 + _globals['_PWMFREQUENCY']._serialized_start=667 + _globals['_PWMFREQUENCY']._serialized_end=761 _globals['_IOCHANNEL']._serialized_start=61 - _globals['_IOCHANNEL']._serialized_end=163 + _globals['_IOCHANNEL']._serialized_end=169 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/MotorValve_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/MotorValve_pb2.py index 5e042240..07570669 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/MotorValve_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/MotorValve_pb2.py @@ -18,7 +18,7 @@ import Claims_pb2 as Claims__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x10MotorValve.proto\x12\x0f\x62lox.MotorValve\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x11\x43onstraints.proto\x1a\rIoArray.proto\x1a\x0c\x43laims.proto\"\xa9\x04\n\x05\x42lock\x12\x1d\n\x08hwDevice\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x0b\x12\x16\n\x07\x63hannel\x18\x02 \x01(\rB\x05\x92?\x02\x38\x08\x12\x37\n\x0bstoredState\x18\t \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x06\x8a\xb5\x18\x02\x30\x01\x12:\n\x0c\x64\x65siredState\x18\x07 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x33\n\x05state\x18\x03 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x39\n\nvalveState\x18\x06 \x01(\x0e\x32\x1b.blox.MotorValve.ValveStateB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x45\n\rconstrainedBy\x18\x05 \x01(\x0b\x32..blox.Constraints.DeprecatedDigitalConstraints\x12\x39\n\x0b\x63onstraints\x18\x0b \x01(\x0b\x32$.blox.Constraints.DigitalConstraints\x12!\n\tclaimedBy\x18\x08 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12-\n\x0bsettingMode\x18\n \x01(\x0e\x32\x18.blox.Claims.SettingMode\x12!\n\x0cstartChannel\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\r\x8a\xb5\x18\t\x18\xc1\x02J\x04\x06\x15\x10\x11*\x96\x01\n\nValveState\x12\x11\n\rVALVE_UNKNOWN\x10\x00\x12\x0e\n\nVALVE_OPEN\x10\x01\x12\x10\n\x0cVALVE_CLOSED\x10\x02\x12\x11\n\rVALVE_OPENING\x10\x03\x12\x11\n\rVALVE_CLOSING\x10\x04\x12\x18\n\x14VALVE_HALF_OPEN_IDLE\x10\x05\x12\x13\n\x0fVALVE_INIT_IDLE\x10\x06\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x10MotorValve.proto\x12\x0f\x62lox.MotorValve\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x11\x43onstraints.proto\x1a\rIoArray.proto\x1a\x0c\x43laims.proto\"\xc3\x04\n\x05\x42lock\x12\x1f\n\x08hwDevice\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x0bx\x01\x12\x1c\n\x07\x63hannel\x18\x02 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12\x39\n\x0bstoredState\x18\t \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x08\x8a\xb5\x18\x04\x30\x01x\x01\x12:\n\x0c\x64\x65siredState\x18\x07 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x33\n\x05state\x18\x03 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x39\n\nvalveState\x18\x06 \x01(\x0e\x32\x1b.blox.MotorValve.ValveStateB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x45\n\rconstrainedBy\x18\x05 \x01(\x0b\x32..blox.Constraints.DeprecatedDigitalConstraints\x12\x41\n\x0b\x63onstraints\x18\x0b \x01(\x0b\x32$.blox.Constraints.DigitalConstraintsB\x06\x8a\xb5\x18\x02x\x01\x12!\n\tclaimedBy\x18\x08 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12\x35\n\x0bsettingMode\x18\n \x01(\x0e\x32\x18.blox.Claims.SettingModeB\x06\x8a\xb5\x18\x02x\x01\x12!\n\x0cstartChannel\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\r\x8a\xb5\x18\t\x18\xc1\x02J\x04\x06\x15\x10\x11*\x96\x01\n\nValveState\x12\x11\n\rVALVE_UNKNOWN\x10\x00\x12\x0e\n\nVALVE_OPEN\x10\x01\x12\x10\n\x0cVALVE_CLOSED\x10\x02\x12\x11\n\rVALVE_OPENING\x10\x03\x12\x11\n\rVALVE_CLOSING\x10\x04\x12\x18\n\x14VALVE_HALF_OPEN_IDLE\x10\x05\x12\x13\n\x0fVALVE_INIT_IDLE\x10\x06\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -26,25 +26,29 @@ if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None _BLOCK.fields_by_name['hwDevice']._options = None - _BLOCK.fields_by_name['hwDevice']._serialized_options = b'\222?\0028\020\212\265\030\002\030\013' + _BLOCK.fields_by_name['hwDevice']._serialized_options = b'\222?\0028\020\212\265\030\004\030\013x\001' _BLOCK.fields_by_name['channel']._options = None - _BLOCK.fields_by_name['channel']._serialized_options = b'\222?\0028\010' + _BLOCK.fields_by_name['channel']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' _BLOCK.fields_by_name['storedState']._options = None - _BLOCK.fields_by_name['storedState']._serialized_options = b'\212\265\030\0020\001' + _BLOCK.fields_by_name['storedState']._serialized_options = b'\212\265\030\0040\001x\001' _BLOCK.fields_by_name['desiredState']._options = None _BLOCK.fields_by_name['desiredState']._serialized_options = b'\212\265\030\004(\0010\001' _BLOCK.fields_by_name['state']._options = None _BLOCK.fields_by_name['state']._serialized_options = b'\212\265\030\004(\0010\001' _BLOCK.fields_by_name['valveState']._options = None _BLOCK.fields_by_name['valveState']._serialized_options = b'\212\265\030\004(\0010\001' + _BLOCK.fields_by_name['constraints']._options = None + _BLOCK.fields_by_name['constraints']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['claimedBy']._options = None _BLOCK.fields_by_name['claimedBy']._serialized_options = b'\222?\0028\020\212\265\030\005\030\377\001(\001' + _BLOCK.fields_by_name['settingMode']._options = None + _BLOCK.fields_by_name['settingMode']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['startChannel']._options = None _BLOCK.fields_by_name['startChannel']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\t\030\301\002J\004\006\025\020\021' - _globals['_VALVESTATE']._serialized_start=672 - _globals['_VALVESTATE']._serialized_end=822 + _globals['_VALVESTATE']._serialized_start=698 + _globals['_VALVESTATE']._serialized_end=848 _globals['_BLOCK']._serialized_start=116 - _globals['_BLOCK']._serialized_end=669 + _globals['_BLOCK']._serialized_end=695 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/OneWireGpioModule_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/OneWireGpioModule_pb2.py index ff84cd51..e8daca3d 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/OneWireGpioModule_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/OneWireGpioModule_pb2.py @@ -13,71 +13,30 @@ import brewblox_pb2 as brewblox__pb2 import nanopb_pb2 as nanopb__pb2 +import GpioModule_pb2 as GpioModule__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17OneWireGpioModule.proto\x12\x16\x62lox.OneWireGpioModule\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\x95\x02\n\x11GpioModuleChannel\x12\x11\n\x02id\x18\x01 \x01(\rB\x05\x92?\x02\x38\x08\x12:\n\ndeviceType\x18\x02 \x01(\x0e\x32&.blox.OneWireGpioModule.GpioDeviceType\x12\x1d\n\x08pinsMask\x18\x03 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02P\x01\x12\x14\n\x05width\x18\x04 \x01(\rB\x05\x92?\x02\x38\x08\x12\x13\n\x04name\x18\x05 \x01(\tB\x05\x92?\x02\x08 \x12#\n\x0c\x63\x61pabilities\x18\x06 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04(\x01P\x01\x12!\n\tclaimedBy\x18\x07 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12\x1f\n\nerrorFlags\x18\x08 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02P\x01\"\xd6\x05\n\x05\x42lock\x12\x42\n\x08\x63hannels\x18\x01 \x03(\x0b\x32).blox.OneWireGpioModule.GpioModuleChannelB\x05\x92?\x02\x10\x08\x12\x1d\n\x0emodulePosition\x18\x02 \x01(\rB\x05\x92?\x02\x38\x08\x12!\n\x0cmoduleStatus\x18\x03 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02P\x01\x12$\n\rpullUpDesired\x18\x04 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12#\n\x0cpullUpStatus\x18\x05 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12\'\n\x10pullUpWhenActive\x18\x06 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12)\n\x12pullUpWhenInactive\x18\x07 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12&\n\x0fpullDownDesired\x18\x08 \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12%\n\x0epullDownStatus\x18\t \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12)\n\x12pullDownWhenActive\x18\n \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12+\n\x14pullDownWhenInactive\x18\x0b \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12\"\n\x0boverCurrent\x18\x0c \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12\x1f\n\x08openLoad\x18\r \x01(\rB\r\x92?\x02\x38\x08\x8a\xb5\x18\x04(\x01P\x01\x12\x18\n\x10useExternalPower\x18\x0e \x01(\x08\x12$\n\x0f\x66\x61ultsHistory5m\x18\x0f \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02P\x01\x12%\n\x10\x66\x61ultsHistory60m\x18\x10 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02P\x01\x12&\n\x11moduleStatusClear\x18Z \x01(\rB\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12 \n\x0b\x63learFaults\x18 \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x0b\x8a\xb5\x18\x07\x18\xc5\x02J\x02\n\x0c*\xad\x05\n\x0eGpioDeviceType\x12\x11\n\rGPIO_DEV_NONE\x10\x00\x12\x13\n\x0fGPIO_DEV_SSR_2P\x10\x01\x12\x13\n\x0fGPIO_DEV_SSR_1P\x10\x02\x12 \n\x1cGPIO_DEV_MECHANICAL_RELAY_2P\x10\x03\x12*\n&GPIO_DEV_MECHANICAL_RELAY_1P_HIGH_SIDE\x10\x04\x12)\n%GPIO_DEV_MECHANICAL_RELAY_1P_LOW_SIDE\x10\x05\x12\x14\n\x10GPIO_DEV_COIL_2P\x10\x06\x12\"\n\x1eGPIO_DEV_COIL_2P_BIDIRECTIONAL\x10\x07\x12\x1e\n\x1aGPIO_DEV_COIL_1P_HIGH_SIDE\x10\x08\x12\x1d\n\x19GPIO_DEV_COIL_1P_LOW_SIDE\x10\t\x12\x15\n\x11GPIO_DEV_MOTOR_2P\x10\n\x12#\n\x1fGPIO_DEV_MOTOR_2P_BIDIRECTIONAL\x10\x0b\x12\x1f\n\x1bGPIO_DEV_MOTOR_1P_HIGH_SIDE\x10\x0c\x12\x1e\n\x1aGPIO_DEV_MOTOR_1P_LOW_SIDE\x10\r\x12\"\n\x1eGPIO_DEV_DETECT_LOW_CURRENT_2P\x10\x0e\x12&\n\"GPIO_DEV_DETECT_LOW_CURRENT_1P_GND\x10\x0f\x12\x15\n\x11GPIO_DEV_POWER_1P\x10\x11\x12)\n%GPIO_DEV_DETECT_HIGH_CURRENT_1P_POWER\x10\x12\x12\x13\n\x0fGPIO_DEV_GND_1P\x10\x13\x12\'\n#GPIO_DEV_DETECT_HIGH_CURRENT_1P_GND\x10\x14\x12#\n\x1fGPIO_DEV_DETECT_HIGH_CURRENT_2P\x10\x15*\x8a\x02\n\x0eGpioErrorFlags\x12\x11\n\rGPIO_ERR_NONE\x10\x00\x12\x1b\n\x17GPIO_ERR_POWER_ON_RESET\x10\x01\x12\x18\n\x14GPIO_ERR_OVERVOLTAGE\x10\x02\x12\x19\n\x15GPIO_ERR_UNDERVOLTAGE\x10\x04\x12\x18\n\x14GPIO_ERR_OVERCURRENT\x10\x08\x12\x16\n\x12GPIO_ERR_OPEN_LOAD\x10\x10\x12$\n GPIO_ERR_OVERTEMPERATURE_WARNING\x10 \x12\"\n\x1eGPIO_ERR_OVERTEMPERATURE_ERROR\x10@\x12\x17\n\x12GPIO_ERR_SPI_ERROR\x10\x80\x01\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17OneWireGpioModule.proto\x12\x16\x62lox.OneWireGpioModule\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x10GpioModule.proto\"\x8f\x02\n\x05\x42lock\x12\x37\n\x08\x63hannels\x18\x01 \x03(\x0b\x32\x18.blox.GpioModule.ChannelB\x0b\x92?\x02\x10\x08\x8a\xb5\x18\x02x\x01\x12#\n\x0emodulePosition\x18\x02 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12 \n\x10useExternalPower\x18\x0e \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12/\n\x06status\x18\x0f \x01(\x0b\x32\x17.blox.GpioModule.StatusB\x06\x8a\xb5\x18\x02(\x01\x12&\n\x11moduleStatusClear\x18Z \x01(\rB\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12 \n\x0b\x63learFaults\x18 \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x0b\x8a\xb5\x18\x07\x18\xc5\x02J\x02\n\x0c\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'OneWireGpioModule_pb2', _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None - _GPIOMODULECHANNEL.fields_by_name['id']._options = None - _GPIOMODULECHANNEL.fields_by_name['id']._serialized_options = b'\222?\0028\010' - _GPIOMODULECHANNEL.fields_by_name['pinsMask']._options = None - _GPIOMODULECHANNEL.fields_by_name['pinsMask']._serialized_options = b'\222?\0028\010\212\265\030\002P\001' - _GPIOMODULECHANNEL.fields_by_name['width']._options = None - _GPIOMODULECHANNEL.fields_by_name['width']._serialized_options = b'\222?\0028\010' - _GPIOMODULECHANNEL.fields_by_name['name']._options = None - _GPIOMODULECHANNEL.fields_by_name['name']._serialized_options = b'\222?\002\010 ' - _GPIOMODULECHANNEL.fields_by_name['capabilities']._options = None - _GPIOMODULECHANNEL.fields_by_name['capabilities']._serialized_options = b'\222?\0028\020\212\265\030\004(\001P\001' - _GPIOMODULECHANNEL.fields_by_name['claimedBy']._options = None - _GPIOMODULECHANNEL.fields_by_name['claimedBy']._serialized_options = b'\222?\0028\020\212\265\030\005\030\377\001(\001' - _GPIOMODULECHANNEL.fields_by_name['errorFlags']._options = None - _GPIOMODULECHANNEL.fields_by_name['errorFlags']._serialized_options = b'\222?\0028\010\212\265\030\002P\001' _BLOCK.fields_by_name['channels']._options = None - _BLOCK.fields_by_name['channels']._serialized_options = b'\222?\002\020\010' + _BLOCK.fields_by_name['channels']._serialized_options = b'\222?\002\020\010\212\265\030\002x\001' _BLOCK.fields_by_name['modulePosition']._options = None - _BLOCK.fields_by_name['modulePosition']._serialized_options = b'\222?\0028\010' - _BLOCK.fields_by_name['moduleStatus']._options = None - _BLOCK.fields_by_name['moduleStatus']._serialized_options = b'\222?\0028\010\212\265\030\002P\001' - _BLOCK.fields_by_name['pullUpDesired']._options = None - _BLOCK.fields_by_name['pullUpDesired']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' - _BLOCK.fields_by_name['pullUpStatus']._options = None - _BLOCK.fields_by_name['pullUpStatus']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' - _BLOCK.fields_by_name['pullUpWhenActive']._options = None - _BLOCK.fields_by_name['pullUpWhenActive']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' - _BLOCK.fields_by_name['pullUpWhenInactive']._options = None - _BLOCK.fields_by_name['pullUpWhenInactive']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' - _BLOCK.fields_by_name['pullDownDesired']._options = None - _BLOCK.fields_by_name['pullDownDesired']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' - _BLOCK.fields_by_name['pullDownStatus']._options = None - _BLOCK.fields_by_name['pullDownStatus']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' - _BLOCK.fields_by_name['pullDownWhenActive']._options = None - _BLOCK.fields_by_name['pullDownWhenActive']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' - _BLOCK.fields_by_name['pullDownWhenInactive']._options = None - _BLOCK.fields_by_name['pullDownWhenInactive']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' - _BLOCK.fields_by_name['overCurrent']._options = None - _BLOCK.fields_by_name['overCurrent']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' - _BLOCK.fields_by_name['openLoad']._options = None - _BLOCK.fields_by_name['openLoad']._serialized_options = b'\222?\0028\010\212\265\030\004(\001P\001' - _BLOCK.fields_by_name['faultsHistory5m']._options = None - _BLOCK.fields_by_name['faultsHistory5m']._serialized_options = b'\222?\0028\010\212\265\030\002P\001' - _BLOCK.fields_by_name['faultsHistory60m']._options = None - _BLOCK.fields_by_name['faultsHistory60m']._serialized_options = b'\222?\0028\010\212\265\030\002P\001' + _BLOCK.fields_by_name['modulePosition']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' + _BLOCK.fields_by_name['useExternalPower']._options = None + _BLOCK.fields_by_name['useExternalPower']._serialized_options = b'\212\265\030\002x\001' + _BLOCK.fields_by_name['status']._options = None + _BLOCK.fields_by_name['status']._serialized_options = b'\212\265\030\002(\001' _BLOCK.fields_by_name['moduleStatusClear']._options = None _BLOCK.fields_by_name['moduleStatusClear']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK.fields_by_name['clearFaults']._options = None _BLOCK.fields_by_name['clearFaults']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\007\030\305\002J\002\n\014' - _globals['_GPIODEVICETYPE']._serialized_start=1091 - _globals['_GPIODEVICETYPE']._serialized_end=1776 - _globals['_GPIOERRORFLAGS']._serialized_start=1779 - _globals['_GPIOERRORFLAGS']._serialized_end=2045 - _globals['_GPIOMODULECHANNEL']._serialized_start=82 - _globals['_GPIOMODULECHANNEL']._serialized_end=359 - _globals['_BLOCK']._serialized_start=362 - _globals['_BLOCK']._serialized_end=1088 + _globals['_BLOCK']._serialized_start=100 + _globals['_BLOCK']._serialized_end=371 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/Pid_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/Pid_pb2.py index 076b0997..2e604a58 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/Pid_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/Pid_pb2.py @@ -16,7 +16,7 @@ import SetpointSensorPair_pb2 as SetpointSensorPair__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\tPid.proto\x12\x08\x62lox.Pid\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x18SetpointSensorPair.proto\"\xbd\x06\n\x05\x42lock\x12\x1c\n\x07inputId\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x04\x12\x1d\n\x08outputId\x18\x02 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x05\x12&\n\ninputValue\x18\x05 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12(\n\x0cinputSetting\x18\x06 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12%\n\x0boutputValue\x18\x07 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\'\n\routputSetting\x18\x08 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x17\n\x07\x65nabled\x18\x0b \x01(\x08\x42\x06\x8a\xb5\x18\x02\x30\x01\x12\x18\n\x06\x61\x63tive\x18\x0c \x01(\x08\x42\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x1a\n\x02kp\x18\r \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x02\x10\x80 \x12\x17\n\x02ti\x18\x0e \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x08\x03\x12\x17\n\x02td\x18\x0f \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x08\x03\x12\x1b\n\x01p\x18\x10 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x1b\n\x01i\x18\x11 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x1b\n\x01\x64\x18\x12 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12!\n\x05\x65rror\x18\x13 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x06\x10\x80 (\x01\x30\x01\x12\"\n\x08integral\x18\x14 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80\x02(\x01\x30\x01\x12%\n\nderivative\x18\x15 \x01(\x11\x42\x11\x92?\x02\x38 \x8a\xb5\x18\x08\x10\x80\x80 (\x01\x30\x01\x12%\n\rintegralReset\x18\x17 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 0\x01\x12\'\n\x0f\x62oilPointAdjust\x18\x18 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x06\x10\x80 \x12#\n\rboilMinOutput\x18\x19 \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 \x12 \n\x0e\x62oilModeActive\x18\x1a \x01(\x08\x42\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12G\n\x10\x64\x65rivativeFilter\x18\x1b \x01(\x0e\x32%.blox.SetpointSensorPair.FilterChoiceB\x06\x8a\xb5\x18\x02(\x01\x12#\n\x0e\x64rivenOutputId\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\n\x8a\xb5\x18\x06\x18\xb0\x02J\x01\x0f\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\tPid.proto\x12\x08\x62lox.Pid\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x18SetpointSensorPair.proto\"\x9c\x07\n\x05\x42lock\x12\x1e\n\x07inputId\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x04x\x01\x12\x1f\n\x08outputId\x18\x02 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x05x\x01\x12&\n\ninputValue\x18\x05 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12(\n\x0cinputSetting\x18\x06 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12%\n\x0boutputValue\x18\x07 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\'\n\routputSetting\x18\x08 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x19\n\x07\x65nabled\x18\x0b \x01(\x08\x42\x08\x8a\xb5\x18\x04\x30\x01x\x01\x12\x18\n\x06\x61\x63tive\x18\x0c \x01(\x08\x42\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x1c\n\x02kp\x18\r \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x02\x10\x80 x\x01\x12\x19\n\x02ti\x18\x0e \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x08\x03x\x01\x12\x19\n\x02td\x18\x0f \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x08\x03x\x01\x12\x1b\n\x01p\x18\x10 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x1b\n\x01i\x18\x11 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12\x1b\n\x01\x64\x18\x12 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80 (\x01\x30\x01\x12!\n\x05\x65rror\x18\x13 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x06\x10\x80 (\x01\x30\x01\x12\"\n\x08integral\x18\x14 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\x80\x02(\x01\x30\x01\x12%\n\nderivative\x18\x15 \x01(\x11\x42\x11\x92?\x02\x38 \x8a\xb5\x18\x08\x10\x80\x80 (\x01\x30\x01\x12%\n\rintegralReset\x18\x17 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 0\x01\x12)\n\x0f\x62oilPointAdjust\x18\x18 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x06\x10\x80 x\x01\x12%\n\rboilMinOutput\x18\x19 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 x\x01\x12 \n\x0e\x62oilModeActive\x18\x1a \x01(\x08\x42\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12G\n\x10\x64\x65rivativeFilter\x18\x1b \x01(\x0e\x32%.blox.SetpointSensorPair.FilterChoiceB\x06\x8a\xb5\x18\x02(\x01\x12M\n\x16\x64\x65rivativeFilterChoice\x18\x1c \x01(\x0e\x32%.blox.SetpointSensorPair.FilterChoiceB\x06\x8a\xb5\x18\x02x\x01\x12#\n\x0e\x64rivenOutputId\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\n\x8a\xb5\x18\x06\x18\xb0\x02J\x01\x0f\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -24,9 +24,9 @@ if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None _BLOCK.fields_by_name['inputId']._options = None - _BLOCK.fields_by_name['inputId']._serialized_options = b'\222?\0028\020\212\265\030\002\030\004' + _BLOCK.fields_by_name['inputId']._serialized_options = b'\222?\0028\020\212\265\030\004\030\004x\001' _BLOCK.fields_by_name['outputId']._options = None - _BLOCK.fields_by_name['outputId']._serialized_options = b'\222?\0028\020\212\265\030\002\030\005' + _BLOCK.fields_by_name['outputId']._serialized_options = b'\222?\0028\020\212\265\030\004\030\005x\001' _BLOCK.fields_by_name['inputValue']._options = None _BLOCK.fields_by_name['inputValue']._serialized_options = b'\222?\0028 \212\265\030\t\010\001\020\200 (\0010\001' _BLOCK.fields_by_name['inputSetting']._options = None @@ -36,15 +36,15 @@ _BLOCK.fields_by_name['outputSetting']._options = None _BLOCK.fields_by_name['outputSetting']._serialized_options = b'\222?\0028 \212\265\030\007\020\200 (\0010\001' _BLOCK.fields_by_name['enabled']._options = None - _BLOCK.fields_by_name['enabled']._serialized_options = b'\212\265\030\0020\001' + _BLOCK.fields_by_name['enabled']._serialized_options = b'\212\265\030\0040\001x\001' _BLOCK.fields_by_name['active']._options = None _BLOCK.fields_by_name['active']._serialized_options = b'\212\265\030\004(\0010\001' _BLOCK.fields_by_name['kp']._options = None - _BLOCK.fields_by_name['kp']._serialized_options = b'\222?\0028 \212\265\030\005\010\002\020\200 ' + _BLOCK.fields_by_name['kp']._serialized_options = b'\222?\0028 \212\265\030\007\010\002\020\200 x\001' _BLOCK.fields_by_name['ti']._options = None - _BLOCK.fields_by_name['ti']._serialized_options = b'\222?\0028\020\212\265\030\002\010\003' + _BLOCK.fields_by_name['ti']._serialized_options = b'\222?\0028\020\212\265\030\004\010\003x\001' _BLOCK.fields_by_name['td']._options = None - _BLOCK.fields_by_name['td']._serialized_options = b'\222?\0028\020\212\265\030\002\010\003' + _BLOCK.fields_by_name['td']._serialized_options = b'\222?\0028\020\212\265\030\004\010\003x\001' _BLOCK.fields_by_name['p']._options = None _BLOCK.fields_by_name['p']._serialized_options = b'\222?\0028 \212\265\030\007\020\200 (\0010\001' _BLOCK.fields_by_name['i']._options = None @@ -60,17 +60,19 @@ _BLOCK.fields_by_name['integralReset']._options = None _BLOCK.fields_by_name['integralReset']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 0\001' _BLOCK.fields_by_name['boilPointAdjust']._options = None - _BLOCK.fields_by_name['boilPointAdjust']._serialized_options = b'\222?\0028 \212\265\030\005\010\006\020\200 ' + _BLOCK.fields_by_name['boilPointAdjust']._serialized_options = b'\222?\0028 \212\265\030\007\010\006\020\200 x\001' _BLOCK.fields_by_name['boilMinOutput']._options = None - _BLOCK.fields_by_name['boilMinOutput']._serialized_options = b'\222?\0028 \212\265\030\003\020\200 ' + _BLOCK.fields_by_name['boilMinOutput']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 x\001' _BLOCK.fields_by_name['boilModeActive']._options = None _BLOCK.fields_by_name['boilModeActive']._serialized_options = b'\212\265\030\004(\0010\001' _BLOCK.fields_by_name['derivativeFilter']._options = None _BLOCK.fields_by_name['derivativeFilter']._serialized_options = b'\212\265\030\002(\001' + _BLOCK.fields_by_name['derivativeFilterChoice']._options = None + _BLOCK.fields_by_name['derivativeFilterChoice']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['drivenOutputId']._options = None _BLOCK.fields_by_name['drivenOutputId']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\006\030\260\002J\001\017' _globals['_BLOCK']._serialized_start=80 - _globals['_BLOCK']._serialized_end=909 + _globals['_BLOCK']._serialized_end=1004 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/PrecisionAnalogModule_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/PrecisionAnalogModule_pb2.py new file mode 100644 index 00000000..a898edb6 --- /dev/null +++ b/brewblox_devcon_spark/codec/proto-compiled/PrecisionAnalogModule_pb2.py @@ -0,0 +1,62 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: PrecisionAnalogModule.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +import brewblox_pb2 as brewblox__pb2 +import nanopb_pb2 as nanopb__pb2 +import GpioModule_pb2 as GpioModule__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1bPrecisionAnalogModule.proto\x12\x1a\x62lox.PrecisionAnalogModule\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x10GpioModule.proto\"\xdb\x02\n\rAnalogChannel\x12I\n\nsensorType\x18\x01 \x01(\x0e\x32-.blox.PrecisionAnalogModule.AnalogChannelTypeB\x06\x8a\xb5\x18\x02x\x01\x12!\n\tclaimedBy\x18\x02 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12(\n\nresistance\x18\x04 \x01(\x11\x42\x14\x92?\x02\x38 \x8a\xb5\x18\x0b\x08\x0f\x10\x80 (\x01\x30\x01h\x01\x12,\n\x0eleadResistance\x18\x05 \x01(\x11\x42\x14\x92?\x02\x38 \x8a\xb5\x18\x0b\x08\x0f\x10\x80 (\x01\x30\x01h\x01\x12.\n\x10\x62ridgeResistance\x18\x06 \x01(\x11\x42\x14\x92?\x02\x38 \x8a\xb5\x18\x0b\x08\x0f\x10\x80 (\x01\x30\x01h\x01\x12)\n\x0c\x62ridgeOutput\x18\x07 \x01(\x11\x42\x13\x92?\x02\x38 \x8a\xb5\x18\n\x10\x80\x80\x10(\x01\x30\x01h\x01\x12)\n\x0cseebeckError\x18\x08 \x01(\x11\x42\x13\x92?\x02\x38 \x8a\xb5\x18\n\x10\x80\x80\x10(\x01\x30\x01h\x01\"\xf7\x02\n\x05\x42lock\x12;\n\x0cgpioChannels\x18\x01 \x03(\x0b\x32\x18.blox.GpioModule.ChannelB\x0b\x92?\x02\x10\x08\x8a\xb5\x18\x02x\x01\x12#\n\x0emodulePosition\x18\x02 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12 \n\x10useExternalPower\x18\x03 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x33\n\ngpioStatus\x18\x04 \x01(\x0b\x32\x17.blox.GpioModule.StatusB\x06\x8a\xb5\x18\x02(\x01\x12S\n\x0e\x61nalogChannels\x18\x05 \x03(\x0b\x32).blox.PrecisionAnalogModule.AnalogChannelB\x10\x92?\x05\x10\x04\x80\x01\x01\x8a\xb5\x18\x04(\x01\x30\x01\x12*\n\x0c\x62\x61roPressure\x18\x06 \x01(\x11\x42\x14\x92?\x02\x38 \x8a\xb5\x18\x0b\x08\r\x10\x80 (\x01\x30\x01h\x01\x12+\n\x0f\x62\x61roTemperature\x18\x07 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x10\x80 (\x01\x30\x01h\x01:\x07\x8a\xb5\x18\x03\x18\xcb\x02*\xe6\x01\n\x11\x41nalogChannelType\x12\x1c\n\x18\x41NALOG_CHANNEL_TYPE_NONE\x10\x00\x12$\n ANALOG_CHANNEL_TYPE_STRAIN_GAUGE\x10\x01\x12!\n\x1d\x41NALOG_CHANNEL_TYPE_RTD_2WIRE\x10\x02\x12!\n\x1d\x41NALOG_CHANNEL_TYPE_RTD_3WIRE\x10\x03\x12!\n\x1d\x41NALOG_CHANNEL_TYPE_RTD_4WIRE\x10\x04\x12$\n ANALOG_CHANNEL_TYPE_RTD_3WIRE_LS\x10\x05\x62\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'PrecisionAnalogModule_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + DESCRIPTOR._options = None + _ANALOGCHANNEL.fields_by_name['sensorType']._options = None + _ANALOGCHANNEL.fields_by_name['sensorType']._serialized_options = b'\212\265\030\002x\001' + _ANALOGCHANNEL.fields_by_name['claimedBy']._options = None + _ANALOGCHANNEL.fields_by_name['claimedBy']._serialized_options = b'\222?\0028\020\212\265\030\005\030\377\001(\001' + _ANALOGCHANNEL.fields_by_name['resistance']._options = None + _ANALOGCHANNEL.fields_by_name['resistance']._serialized_options = b'\222?\0028 \212\265\030\013\010\017\020\200 (\0010\001h\001' + _ANALOGCHANNEL.fields_by_name['leadResistance']._options = None + _ANALOGCHANNEL.fields_by_name['leadResistance']._serialized_options = b'\222?\0028 \212\265\030\013\010\017\020\200 (\0010\001h\001' + _ANALOGCHANNEL.fields_by_name['bridgeResistance']._options = None + _ANALOGCHANNEL.fields_by_name['bridgeResistance']._serialized_options = b'\222?\0028 \212\265\030\013\010\017\020\200 (\0010\001h\001' + _ANALOGCHANNEL.fields_by_name['bridgeOutput']._options = None + _ANALOGCHANNEL.fields_by_name['bridgeOutput']._serialized_options = b'\222?\0028 \212\265\030\n\020\200\200\020(\0010\001h\001' + _ANALOGCHANNEL.fields_by_name['seebeckError']._options = None + _ANALOGCHANNEL.fields_by_name['seebeckError']._serialized_options = b'\222?\0028 \212\265\030\n\020\200\200\020(\0010\001h\001' + _BLOCK.fields_by_name['gpioChannels']._options = None + _BLOCK.fields_by_name['gpioChannels']._serialized_options = b'\222?\002\020\010\212\265\030\002x\001' + _BLOCK.fields_by_name['modulePosition']._options = None + _BLOCK.fields_by_name['modulePosition']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' + _BLOCK.fields_by_name['useExternalPower']._options = None + _BLOCK.fields_by_name['useExternalPower']._serialized_options = b'\212\265\030\002x\001' + _BLOCK.fields_by_name['gpioStatus']._options = None + _BLOCK.fields_by_name['gpioStatus']._serialized_options = b'\212\265\030\002(\001' + _BLOCK.fields_by_name['analogChannels']._options = None + _BLOCK.fields_by_name['analogChannels']._serialized_options = b'\222?\005\020\004\200\001\001\212\265\030\004(\0010\001' + _BLOCK.fields_by_name['baroPressure']._options = None + _BLOCK.fields_by_name['baroPressure']._serialized_options = b'\222?\0028 \212\265\030\013\010\r\020\200 (\0010\001h\001' + _BLOCK.fields_by_name['baroTemperature']._options = None + _BLOCK.fields_by_name['baroTemperature']._serialized_options = b'\222?\0028 \212\265\030\t\020\200 (\0010\001h\001' + _BLOCK._options = None + _BLOCK._serialized_options = b'\212\265\030\003\030\313\002' + _globals['_ANALOGCHANNELTYPE']._serialized_start=836 + _globals['_ANALOGCHANNELTYPE']._serialized_end=1066 + _globals['_ANALOGCHANNEL']._serialized_start=108 + _globals['_ANALOGCHANNEL']._serialized_end=455 + _globals['_BLOCK']._serialized_start=458 + _globals['_BLOCK']._serialized_end=833 +# @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/Screen_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/Screen_pb2.py index 1c509222..1ae5e400 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/Screen_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/Screen_pb2.py @@ -12,9 +12,10 @@ import nanopb_pb2 as nanopb__pb2 +import brewblox_pb2 as brewblox__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0cScreen.proto\x12\x06screen\x1a\x0cnanopb.proto\"\xa2\x01\n\nLayoutNode\x12\x15\n\x06parent\x18\x01 \x01(\rB\x05\x92?\x02\x38\x08\x12\x15\n\x06nodeId\x18\x02 \x01(\rB\x05\x92?\x02\x38\x08\x12%\n\x04type\x18\x03 \x01(\x0e\x32\x17.screen.LayoutNode.Type\x12\x15\n\x06weight\x18\x04 \x01(\rB\x05\x92?\x02\x38\x10\"(\n\x04Type\x12\x07\n\x03Row\x10\x00\x12\n\n\x06\x43olumn\x10\x01\x12\x0b\n\x07\x43ontent\x10\x02\"=\n\x05\x43olor\x12\x10\n\x01r\x18\x01 \x01(\rB\x05\x92?\x02\x38\x08\x12\x10\n\x01g\x18\x02 \x01(\rB\x05\x92?\x02\x38\x08\x12\x10\n\x01\x62\x18\x03 \x01(\rB\x05\x92?\x02\x38\x08\"^\n\x12NumericValueWidget\x12\x1c\n\x05\x63olor\x18\x01 \x01(\x0b\x32\r.screen.Color\x12\x14\n\x05value\x18\x02 \x01(\rB\x05\x92?\x02\x38\x08\x12\x14\n\x05label\x18\x03 \x01(\tB\x05\x92?\x02p(\"+\n\x0b\x43olorWidget\x12\x1c\n\x05\x63olor\x18\x01 \x01(\x0b\x32\r.screen.Color\"\x9b\x01\n\x0b\x43ontentNode\x12\x1b\n\x0clayoutNodeId\x18\x01 \x01(\rB\x05\x92?\x02\x38\x08\x12\x38\n\x12numericValueWidget\x18\x02 \x01(\x0b\x32\x1a.screen.NumericValueWidgetH\x00\x12*\n\x0b\x63olorWidget\x18\x03 \x01(\x0b\x32\x13.screen.ColorWidgetH\x00\x42\t\n\x07\x63ontent\"\\\n\x06\x43onfig\x12\'\n\x0blayoutNodes\x18\x01 \x03(\x0b\x32\x12.screen.LayoutNode\x12)\n\x0c\x63ontentNodes\x18\x02 \x03(\x0b\x32\x13.screen.ContentNodeb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0cScreen.proto\x12\x06screen\x1a\x0cnanopb.proto\x1a\x0e\x62rewblox.proto\"\xbc\x01\n\nLayoutNode\x12\x1b\n\x06parent\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12\x1b\n\x06nodeId\x18\x02 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12-\n\x04type\x18\x03 \x01(\x0e\x32\x17.screen.LayoutNode.TypeB\x06\x8a\xb5\x18\x02x\x01\x12\x1b\n\x06weight\x18\x04 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02x\x01\"(\n\x04Type\x12\x07\n\x03Row\x10\x00\x12\n\n\x06\x43olumn\x10\x01\x12\x0b\n\x07\x43ontent\x10\x02\"O\n\x05\x43olor\x12\x16\n\x01r\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12\x16\n\x01g\x18\x02 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12\x16\n\x01\x62\x18\x03 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\"r\n\x12NumericValueWidget\x12$\n\x05\x63olor\x18\x01 \x01(\x0b\x32\r.screen.ColorB\x06\x8a\xb5\x18\x02x\x01\x12\x1a\n\x05value\x18\x02 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12\x1a\n\x05label\x18\x03 \x01(\tB\x0b\x92?\x02p(\x8a\xb5\x18\x02x\x01\"3\n\x0b\x43olorWidget\x12$\n\x05\x63olor\x18\x01 \x01(\x0b\x32\r.screen.ColorB\x06\x8a\xb5\x18\x02x\x01\"\xb1\x01\n\x0b\x43ontentNode\x12!\n\x0clayoutNodeId\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12@\n\x12numericValueWidget\x18\x02 \x01(\x0b\x32\x1a.screen.NumericValueWidgetB\x06\x8a\xb5\x18\x02x\x01H\x00\x12\x32\n\x0b\x63olorWidget\x18\x03 \x01(\x0b\x32\x13.screen.ColorWidgetB\x06\x8a\xb5\x18\x02x\x01H\x00\x42\t\n\x07\x63ontent\"l\n\x06\x43onfig\x12/\n\x0blayoutNodes\x18\x01 \x03(\x0b\x32\x12.screen.LayoutNodeB\x06\x8a\xb5\x18\x02x\x01\x12\x31\n\x0c\x63ontentNodes\x18\x02 \x03(\x0b\x32\x13.screen.ContentNodeB\x06\x8a\xb5\x18\x02x\x01\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -22,35 +23,49 @@ if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None _LAYOUTNODE.fields_by_name['parent']._options = None - _LAYOUTNODE.fields_by_name['parent']._serialized_options = b'\222?\0028\010' + _LAYOUTNODE.fields_by_name['parent']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' _LAYOUTNODE.fields_by_name['nodeId']._options = None - _LAYOUTNODE.fields_by_name['nodeId']._serialized_options = b'\222?\0028\010' + _LAYOUTNODE.fields_by_name['nodeId']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' + _LAYOUTNODE.fields_by_name['type']._options = None + _LAYOUTNODE.fields_by_name['type']._serialized_options = b'\212\265\030\002x\001' _LAYOUTNODE.fields_by_name['weight']._options = None - _LAYOUTNODE.fields_by_name['weight']._serialized_options = b'\222?\0028\020' + _LAYOUTNODE.fields_by_name['weight']._serialized_options = b'\222?\0028\020\212\265\030\002x\001' _COLOR.fields_by_name['r']._options = None - _COLOR.fields_by_name['r']._serialized_options = b'\222?\0028\010' + _COLOR.fields_by_name['r']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' _COLOR.fields_by_name['g']._options = None - _COLOR.fields_by_name['g']._serialized_options = b'\222?\0028\010' + _COLOR.fields_by_name['g']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' _COLOR.fields_by_name['b']._options = None - _COLOR.fields_by_name['b']._serialized_options = b'\222?\0028\010' + _COLOR.fields_by_name['b']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' + _NUMERICVALUEWIDGET.fields_by_name['color']._options = None + _NUMERICVALUEWIDGET.fields_by_name['color']._serialized_options = b'\212\265\030\002x\001' _NUMERICVALUEWIDGET.fields_by_name['value']._options = None - _NUMERICVALUEWIDGET.fields_by_name['value']._serialized_options = b'\222?\0028\010' + _NUMERICVALUEWIDGET.fields_by_name['value']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' _NUMERICVALUEWIDGET.fields_by_name['label']._options = None - _NUMERICVALUEWIDGET.fields_by_name['label']._serialized_options = b'\222?\002p(' + _NUMERICVALUEWIDGET.fields_by_name['label']._serialized_options = b'\222?\002p(\212\265\030\002x\001' + _COLORWIDGET.fields_by_name['color']._options = None + _COLORWIDGET.fields_by_name['color']._serialized_options = b'\212\265\030\002x\001' _CONTENTNODE.fields_by_name['layoutNodeId']._options = None - _CONTENTNODE.fields_by_name['layoutNodeId']._serialized_options = b'\222?\0028\010' - _globals['_LAYOUTNODE']._serialized_start=39 - _globals['_LAYOUTNODE']._serialized_end=201 - _globals['_LAYOUTNODE_TYPE']._serialized_start=161 - _globals['_LAYOUTNODE_TYPE']._serialized_end=201 - _globals['_COLOR']._serialized_start=203 - _globals['_COLOR']._serialized_end=264 - _globals['_NUMERICVALUEWIDGET']._serialized_start=266 - _globals['_NUMERICVALUEWIDGET']._serialized_end=360 - _globals['_COLORWIDGET']._serialized_start=362 - _globals['_COLORWIDGET']._serialized_end=405 - _globals['_CONTENTNODE']._serialized_start=408 - _globals['_CONTENTNODE']._serialized_end=563 - _globals['_CONFIG']._serialized_start=565 - _globals['_CONFIG']._serialized_end=657 + _CONTENTNODE.fields_by_name['layoutNodeId']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' + _CONTENTNODE.fields_by_name['numericValueWidget']._options = None + _CONTENTNODE.fields_by_name['numericValueWidget']._serialized_options = b'\212\265\030\002x\001' + _CONTENTNODE.fields_by_name['colorWidget']._options = None + _CONTENTNODE.fields_by_name['colorWidget']._serialized_options = b'\212\265\030\002x\001' + _CONFIG.fields_by_name['layoutNodes']._options = None + _CONFIG.fields_by_name['layoutNodes']._serialized_options = b'\212\265\030\002x\001' + _CONFIG.fields_by_name['contentNodes']._options = None + _CONFIG.fields_by_name['contentNodes']._serialized_options = b'\212\265\030\002x\001' + _globals['_LAYOUTNODE']._serialized_start=55 + _globals['_LAYOUTNODE']._serialized_end=243 + _globals['_LAYOUTNODE_TYPE']._serialized_start=203 + _globals['_LAYOUTNODE_TYPE']._serialized_end=243 + _globals['_COLOR']._serialized_start=245 + _globals['_COLOR']._serialized_end=324 + _globals['_NUMERICVALUEWIDGET']._serialized_start=326 + _globals['_NUMERICVALUEWIDGET']._serialized_end=440 + _globals['_COLORWIDGET']._serialized_start=442 + _globals['_COLORWIDGET']._serialized_end=493 + _globals['_CONTENTNODE']._serialized_start=496 + _globals['_CONTENTNODE']._serialized_end=673 + _globals['_CONFIG']._serialized_start=675 + _globals['_CONFIG']._serialized_end=783 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/Sequence_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/Sequence_pb2.py index 42b16a7e..941458db 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/Sequence_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/Sequence_pb2.py @@ -16,101 +16,161 @@ import IoArray_pb2 as IoArray__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0eSequence.proto\x12\rblox.Sequence\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\x17\n\x07\x43omment\x12\x0c\n\x04text\x18\x01 \x01(\t\"\t\n\x07Restart\"_\n\rEnableDisable\x12$\n\r__raw__target\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x0fH\x00\x12\x1e\n\r__var__target\x18\x02 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x42\x08\n\x06target\"\x06\n\x04Wait\"d\n\x0cWaitDuration\x12&\n\x0f__raw__duration\x18\x01 \x01(\rB\x0b\x92?\x02\x38 \x8a\xb5\x18\x02\x08\x03H\x00\x12 \n\x0f__var__duration\x18\x02 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x42\n\n\x08\x64uration\"U\n\tWaitUntil\x12\"\n\x0b__raw__time\x18\x01 \x01(\rB\x0b\x92?\x02\x38 \x8a\xb5\x18\x02X\x01H\x00\x12\x1c\n\x0b__var__time\x18\x02 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x42\x06\n\x04time\"\x86\x02\n\x14WaitTemperatureRange\x12$\n\r__raw__target\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x02H\x00\x12\x1e\n\r__var__target\x18\x04 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x12&\n\x0c__raw__lower\x18\x02 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x01\x10\x80 H\x01\x12\x1d\n\x0c__var__lower\x18\x05 \x01(\tB\x05\x92?\x02\x08\x10H\x01\x12&\n\x0c__raw__upper\x18\x03 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x01\x10\x80 H\x02\x12\x1d\n\x0c__var__upper\x18\x06 \x01(\tB\x05\x92?\x02\x08\x10H\x02\x42\x08\n\x06targetB\x07\n\x05lowerB\x07\n\x05upper\"\xb9\x01\n\x17WaitTemperatureBoundary\x12$\n\r__raw__target\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x02H\x00\x12\x1e\n\r__var__target\x18\x03 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x12&\n\x0c__raw__value\x18\x02 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x01\x10\x80 H\x01\x12\x1d\n\x0c__var__value\x18\x04 \x01(\tB\x05\x92?\x02\x08\x10H\x01\x42\x08\n\x06targetB\x07\n\x05value\"\xb3\x01\n\x0bSetSetpoint\x12$\n\r__raw__target\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x04H\x00\x12\x1e\n\r__var__target\x18\x03 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x12(\n\x0e__raw__setting\x18\x02 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x01\x10\x80 H\x01\x12\x1f\n\x0e__var__setting\x18\x04 \x01(\tB\x05\x92?\x02\x08\x10H\x01\x42\x08\n\x06targetB\t\n\x07setting\"\xba\x01\n\x0cWaitSetpoint\x12$\n\r__raw__target\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x04H\x00\x12\x1e\n\r__var__target\x18\x03 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x12*\n\x10__raw__precision\x18\x02 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x06\x10\x80 H\x01\x12!\n\x10__var__precision\x18\x04 \x01(\tB\x05\x92?\x02\x08\x10H\x01\x42\x08\n\x06targetB\x0b\n\tprecision\"\xbe\x01\n\nSetDigital\x12$\n\r__raw__target\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x06H\x00\x12\x1e\n\r__var__target\x18\x03 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x12\x34\n\x0e__raw__setting\x18\x02 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateH\x01\x12\x1f\n\x0e__var__setting\x18\x04 \x01(\tB\x05\x92?\x02\x08\x10H\x01\x42\x08\n\x06targetB\t\n\x07setting\"]\n\x0bWaitDigital\x12$\n\r__raw__target\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x06H\x00\x12\x1e\n\r__var__target\x18\x02 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x42\x08\n\x06target\"\xbe\x01\n\x10WaitDigitalState\x12$\n\r__raw__target\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x1bH\x00\x12\x1e\n\r__var__target\x18\x03 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x12\x32\n\x0c__raw__state\x18\x02 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateH\x01\x12\x1d\n\x0c__var__state\x18\x04 \x01(\tB\x05\x92?\x02\x08\x10H\x01\x42\x08\n\x06targetB\x07\n\x05state\"\xac\x01\n\x06SetPwm\x12$\n\r__raw__target\x18\x01 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x05H\x00\x12\x1e\n\r__var__target\x18\x03 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x12&\n\x0e__raw__setting\x18\x02 \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 H\x01\x12\x1f\n\x0e__var__setting\x18\x04 \x01(\tB\x05\x92?\x02\x08\x10H\x01\x42\x08\n\x06targetB\t\n\x07setting\"`\n\rTargetProfile\x12%\n\r__raw__target\x18\x01 \x01(\rB\x0c\x92?\x02\x38\x10\x8a\xb5\x18\x03\x18\xb7\x02H\x00\x12\x1e\n\r__var__target\x18\x02 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x42\x08\n\x06target\"a\n\x0eTargetSequence\x12%\n\r__raw__target\x18\x01 \x01(\rB\x0c\x92?\x02\x38\x10\x8a\xb5\x18\x03\x18\xc6\x02H\x00\x12\x1e\n\r__var__target\x18\x02 \x01(\tB\x05\x92?\x02\x08\x10H\x00\x42\x08\n\x06target\"\xca\n\n\x0bInstruction\x12)\n\x07RESTART\x18\x01 \x01(\x0b\x32\x16.blox.Sequence.RestartH\x00\x12.\n\x06\x45NABLE\x18\x02 \x01(\x0b\x32\x1c.blox.Sequence.EnableDisableH\x00\x12/\n\x07\x44ISABLE\x18\x03 \x01(\x0b\x32\x1c.blox.Sequence.EnableDisableH\x00\x12#\n\x04WAIT\x18\x14 \x01(\x0b\x32\x13.blox.Sequence.WaitH\x00\x12\x34\n\rWAIT_DURATION\x18\x04 \x01(\x0b\x32\x1b.blox.Sequence.WaitDurationH\x00\x12.\n\nWAIT_UNTIL\x18\x05 \x01(\x0b\x32\x18.blox.Sequence.WaitUntilH\x00\x12@\n\x11WAIT_TEMP_BETWEEN\x18\x06 \x01(\x0b\x32#.blox.Sequence.WaitTemperatureRangeH\x00\x12\x44\n\x15WAIT_TEMP_NOT_BETWEEN\x18\x07 \x01(\x0b\x32#.blox.Sequence.WaitTemperatureRangeH\x00\x12\x43\n\x14WAIT_TEMP_UNEXPECTED\x18\x08 \x01(\x0b\x32#.blox.Sequence.WaitTemperatureRangeH\x00\x12\x41\n\x0fWAIT_TEMP_ABOVE\x18\t \x01(\x0b\x32&.blox.Sequence.WaitTemperatureBoundaryH\x00\x12\x41\n\x0fWAIT_TEMP_BELOW\x18\n \x01(\x0b\x32&.blox.Sequence.WaitTemperatureBoundaryH\x00\x12\x32\n\x0cSET_SETPOINT\x18\x0b \x01(\x0b\x32\x1a.blox.Sequence.SetSetpointH\x00\x12\x34\n\rWAIT_SETPOINT\x18\x0c \x01(\x0b\x32\x1b.blox.Sequence.WaitSetpointH\x00\x12:\n\x13WAIT_SETPOINT_ABOVE\x18\x15 \x01(\x0b\x32\x1b.blox.Sequence.WaitSetpointH\x00\x12:\n\x13WAIT_SETPOINT_BELOW\x18\x16 \x01(\x0b\x32\x1b.blox.Sequence.WaitSetpointH\x00\x12\x30\n\x0bSET_DIGITAL\x18\r \x01(\x0b\x32\x19.blox.Sequence.SetDigitalH\x00\x12\x32\n\x0cWAIT_DIGITAL\x18\x0e \x01(\x0b\x32\x1a.blox.Sequence.WaitDigitalH\x00\x12>\n\x13WAIT_DIGITAL_EQUALS\x18\x17 \x01(\x0b\x32\x1f.blox.Sequence.WaitDigitalStateH\x00\x12(\n\x07SET_PWM\x18\x0f \x01(\x0b\x32\x15.blox.Sequence.SetPwmH\x00\x12\x35\n\rSTART_PROFILE\x18\x10 \x01(\x0b\x32\x1c.blox.Sequence.TargetProfileH\x00\x12\x34\n\x0cWAIT_PROFILE\x18\x11 \x01(\x0b\x32\x1c.blox.Sequence.TargetProfileH\x00\x12\x37\n\x0eSTART_SEQUENCE\x18\x12 \x01(\x0b\x32\x1d.blox.Sequence.TargetSequenceH\x00\x12\x36\n\rWAIT_SEQUENCE\x18\x13 \x01(\x0b\x32\x1d.blox.Sequence.TargetSequenceH\x00\x12*\n\x07\x43OMMENT\x18\xc8\x01 \x01(\x0b\x32\x16.blox.Sequence.CommentH\x00:\x06\x92?\x03\xb0\x01\x01\x42\r\n\x0binstruction\"\xff\x03\n\x05\x42lock\x12\x17\n\x07\x65nabled\x18\x01 \x01(\x08\x42\x06\x8a\xb5\x18\x02\x30\x01\x12\x30\n\x0cinstructions\x18\x02 \x03(\x0b\x32\x1a.blox.Sequence.Instruction\x12!\n\x0bvariablesId\x18\x0b \x01(\rB\x0c\x92?\x02\x38\x10\x8a\xb5\x18\x03\x18\xcb\x02\x12\x15\n\roverrideState\x18\x03 \x01(\x08\x12&\n\x11\x61\x63tiveInstruction\x18\x04 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x30\x01\x12\x33\n\tstoreMode\x18\x0c \x01(\x0e\x32 .blox.Sequence.SequenceStoreMode\x12\x35\n\x06status\x18\x08 \x01(\x0e\x32\x1d.blox.Sequence.SequenceStatusB\x06\x8a\xb5\x18\x02(\x01\x12\x33\n\x05\x65rror\x18\t \x01(\x0e\x32\x1c.blox.Sequence.SequenceErrorB\x06\x8a\xb5\x18\x02(\x01\x12#\n\x07\x65lapsed\x18\n \x01(\rB\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x03\x10\xe8\x07(\x01\x30\x01\x12/\n\x1a\x61\x63tiveInstructionStartedAt\x18\x05 \x01(\rB\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12\x1f\n\ndisabledAt\x18\x06 \x01(\rB\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12%\n\x10\x64isabledDuration\x18\x07 \x01(\rB\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\n\x8a\xb5\x18\x06\x18\xc6\x02J\x01\x0f*l\n\x0eSequenceStatus\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x0c\n\x08\x44ISABLED\x10\x01\x12\n\n\x06PAUSED\x10\x02\x12\x08\n\x04NEXT\x10\x03\x12\x08\n\x04WAIT\x10\x04\x12\x07\n\x03\x45ND\x10\x05\x12\x0b\n\x07RESTART\x10\x06\x12\t\n\x05\x45RROR\x10\x07*\xd7\x01\n\rSequenceError\x12\x08\n\x04NONE\x10\x00\x12\x14\n\x10INVALID_ARGUMENT\x10\x01\x12\x12\n\x0eINVALID_TARGET\x10\x02\x12\x13\n\x0fINACTIVE_TARGET\x10\x03\x12\x13\n\x0f\x44ISABLED_TARGET\x10\x04\x12\x1d\n\x19SYSTEM_TIME_NOT_AVAILABLE\x10\x05\x12\x1b\n\x17VARIABLES_NOT_SUPPORTED\x10\x06\x12\x16\n\x12UNDEFINED_VARIABLE\x10\x07\x12\x14\n\x10INVALID_VARIABLE\x10\x08*\x8f\x02\n\x11SequenceStoreMode\x12*\n&AT_RESTORE_INSTRUCTION_RESTORE_ENABLED\x10\x00\x12)\n%AT_RESTORE_INSTRUCTION_ALWAYS_ENABLED\x10\x01\x12(\n$AT_RESTORE_INSTRUCTION_NEVER_ENABLED\x10\x02\x12(\n$AT_FIRST_INSTRUCTION_RESTORE_ENABLED\x10\x03\x12\'\n#AT_FIRST_INSTRUCTION_ALWAYS_ENABLED\x10\x04\x12&\n\"AT_FIRST_INSTRUCTION_NEVER_ENABLED\x10\x05\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0eSequence.proto\x12\rblox.Sequence\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\x1f\n\x07\x43omment\x12\x14\n\x04text\x18\x01 \x01(\tB\x06\x8a\xb5\x18\x02x\x01\"\t\n\x07Restart\"g\n\rEnableDisable\x12&\n\r__raw__target\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x0fx\x01H\x00\x12$\n\r__var__target\x18\x02 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x42\x08\n\x06target\"\x06\n\x04Wait\"l\n\x0cWaitDuration\x12(\n\x0f__raw__duration\x18\x01 \x01(\rB\r\x92?\x02\x38 \x8a\xb5\x18\x04\x08\x03x\x01H\x00\x12&\n\x0f__var__duration\x18\x02 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x42\n\n\x08\x64uration\"]\n\tWaitUntil\x12$\n\x0b__raw__time\x18\x01 \x01(\rB\r\x92?\x02\x38 \x8a\xb5\x18\x04X\x01x\x01H\x00\x12\"\n\x0b__var__time\x18\x02 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x42\x06\n\x04time\"\x9e\x02\n\x14WaitTemperatureRange\x12&\n\r__raw__target\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x02x\x01H\x00\x12$\n\r__var__target\x18\x04 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x12(\n\x0c__raw__lower\x18\x02 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x01\x10\x80 x\x01H\x01\x12#\n\x0c__var__lower\x18\x05 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x01\x12(\n\x0c__raw__upper\x18\x03 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x01\x10\x80 x\x01H\x02\x12#\n\x0c__var__upper\x18\x06 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x02\x42\x08\n\x06targetB\x07\n\x05lowerB\x07\n\x05upper\"\xc9\x01\n\x17WaitTemperatureBoundary\x12&\n\r__raw__target\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x02x\x01H\x00\x12$\n\r__var__target\x18\x03 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x12(\n\x0c__raw__value\x18\x02 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x01\x10\x80 x\x01H\x01\x12#\n\x0c__var__value\x18\x04 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x01\x42\x08\n\x06targetB\x07\n\x05value\"\xc3\x01\n\x0bSetSetpoint\x12&\n\r__raw__target\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x04x\x01H\x00\x12$\n\r__var__target\x18\x03 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x12*\n\x0e__raw__setting\x18\x02 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x01\x10\x80 x\x01H\x01\x12%\n\x0e__var__setting\x18\x04 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x01\x42\x08\n\x06targetB\t\n\x07setting\"\xca\x01\n\x0cWaitSetpoint\x12&\n\r__raw__target\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x04x\x01H\x00\x12$\n\r__var__target\x18\x03 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x12,\n\x10__raw__precision\x18\x02 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x06\x10\x80 x\x01H\x01\x12\'\n\x10__var__precision\x18\x04 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x01\x42\x08\n\x06targetB\x0b\n\tprecision\"\xd4\x01\n\nSetDigital\x12&\n\r__raw__target\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x06x\x01H\x00\x12$\n\r__var__target\x18\x03 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x12<\n\x0e__raw__setting\x18\x02 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x06\x8a\xb5\x18\x02x\x01H\x01\x12%\n\x0e__var__setting\x18\x04 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x01\x42\x08\n\x06targetB\t\n\x07setting\"e\n\x0bWaitDigital\x12&\n\r__raw__target\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x06x\x01H\x00\x12$\n\r__var__target\x18\x02 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x42\x08\n\x06target\"\xd4\x01\n\x10WaitDigitalState\x12&\n\r__raw__target\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x1bx\x01H\x00\x12$\n\r__var__target\x18\x03 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x12:\n\x0c__raw__state\x18\x02 \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x06\x8a\xb5\x18\x02x\x01H\x01\x12#\n\x0c__var__state\x18\x04 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x01\x42\x08\n\x06targetB\x07\n\x05state\"\xbc\x01\n\x06SetPwm\x12&\n\r__raw__target\x18\x01 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x05x\x01H\x00\x12$\n\r__var__target\x18\x03 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x12(\n\x0e__raw__setting\x18\x02 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 x\x01H\x01\x12%\n\x0e__var__setting\x18\x04 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x01\x42\x08\n\x06targetB\t\n\x07setting\"h\n\rTargetProfile\x12\'\n\r__raw__target\x18\x01 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xb7\x02x\x01H\x00\x12$\n\r__var__target\x18\x02 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x42\x08\n\x06target\"i\n\x0eTargetSequence\x12\'\n\r__raw__target\x18\x01 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xc6\x02x\x01H\x00\x12$\n\r__var__target\x18\x02 \x01(\tB\x0b\x92?\x02\x08\x10\x8a\xb5\x18\x02x\x01H\x00\x42\x08\n\x06target\"\x8a\x0c\n\x0bInstruction\x12\x31\n\x07RESTART\x18\x01 \x01(\x0b\x32\x16.blox.Sequence.RestartB\x06\x8a\xb5\x18\x02x\x01H\x00\x12\x36\n\x06\x45NABLE\x18\x02 \x01(\x0b\x32\x1c.blox.Sequence.EnableDisableB\x06\x8a\xb5\x18\x02x\x01H\x00\x12\x37\n\x07\x44ISABLE\x18\x03 \x01(\x0b\x32\x1c.blox.Sequence.EnableDisableB\x06\x8a\xb5\x18\x02x\x01H\x00\x12+\n\x04WAIT\x18\x14 \x01(\x0b\x32\x13.blox.Sequence.WaitB\x06\x8a\xb5\x18\x02x\x01H\x00\x12<\n\rWAIT_DURATION\x18\x04 \x01(\x0b\x32\x1b.blox.Sequence.WaitDurationB\x06\x8a\xb5\x18\x02x\x01H\x00\x12\x36\n\nWAIT_UNTIL\x18\x05 \x01(\x0b\x32\x18.blox.Sequence.WaitUntilB\x06\x8a\xb5\x18\x02x\x01H\x00\x12H\n\x11WAIT_TEMP_BETWEEN\x18\x06 \x01(\x0b\x32#.blox.Sequence.WaitTemperatureRangeB\x06\x8a\xb5\x18\x02x\x01H\x00\x12L\n\x15WAIT_TEMP_NOT_BETWEEN\x18\x07 \x01(\x0b\x32#.blox.Sequence.WaitTemperatureRangeB\x06\x8a\xb5\x18\x02x\x01H\x00\x12K\n\x14WAIT_TEMP_UNEXPECTED\x18\x08 \x01(\x0b\x32#.blox.Sequence.WaitTemperatureRangeB\x06\x8a\xb5\x18\x02x\x01H\x00\x12I\n\x0fWAIT_TEMP_ABOVE\x18\t \x01(\x0b\x32&.blox.Sequence.WaitTemperatureBoundaryB\x06\x8a\xb5\x18\x02x\x01H\x00\x12I\n\x0fWAIT_TEMP_BELOW\x18\n \x01(\x0b\x32&.blox.Sequence.WaitTemperatureBoundaryB\x06\x8a\xb5\x18\x02x\x01H\x00\x12:\n\x0cSET_SETPOINT\x18\x0b \x01(\x0b\x32\x1a.blox.Sequence.SetSetpointB\x06\x8a\xb5\x18\x02x\x01H\x00\x12<\n\rWAIT_SETPOINT\x18\x0c \x01(\x0b\x32\x1b.blox.Sequence.WaitSetpointB\x06\x8a\xb5\x18\x02x\x01H\x00\x12\x42\n\x13WAIT_SETPOINT_ABOVE\x18\x15 \x01(\x0b\x32\x1b.blox.Sequence.WaitSetpointB\x06\x8a\xb5\x18\x02x\x01H\x00\x12\x42\n\x13WAIT_SETPOINT_BELOW\x18\x16 \x01(\x0b\x32\x1b.blox.Sequence.WaitSetpointB\x06\x8a\xb5\x18\x02x\x01H\x00\x12\x38\n\x0bSET_DIGITAL\x18\r \x01(\x0b\x32\x19.blox.Sequence.SetDigitalB\x06\x8a\xb5\x18\x02x\x01H\x00\x12:\n\x0cWAIT_DIGITAL\x18\x0e \x01(\x0b\x32\x1a.blox.Sequence.WaitDigitalB\x06\x8a\xb5\x18\x02x\x01H\x00\x12\x46\n\x13WAIT_DIGITAL_EQUALS\x18\x17 \x01(\x0b\x32\x1f.blox.Sequence.WaitDigitalStateB\x06\x8a\xb5\x18\x02x\x01H\x00\x12\x30\n\x07SET_PWM\x18\x0f \x01(\x0b\x32\x15.blox.Sequence.SetPwmB\x06\x8a\xb5\x18\x02x\x01H\x00\x12=\n\rSTART_PROFILE\x18\x10 \x01(\x0b\x32\x1c.blox.Sequence.TargetProfileB\x06\x8a\xb5\x18\x02x\x01H\x00\x12<\n\x0cWAIT_PROFILE\x18\x11 \x01(\x0b\x32\x1c.blox.Sequence.TargetProfileB\x06\x8a\xb5\x18\x02x\x01H\x00\x12?\n\x0eSTART_SEQUENCE\x18\x12 \x01(\x0b\x32\x1d.blox.Sequence.TargetSequenceB\x06\x8a\xb5\x18\x02x\x01H\x00\x12>\n\rWAIT_SEQUENCE\x18\x13 \x01(\x0b\x32\x1d.blox.Sequence.TargetSequenceB\x06\x8a\xb5\x18\x02x\x01H\x00\x12\x32\n\x07\x43OMMENT\x18\xc8\x01 \x01(\x0b\x32\x16.blox.Sequence.CommentB\x06\x8a\xb5\x18\x02x\x01H\x00:\x06\x92?\x03\xb0\x01\x01\x42\r\n\x0binstruction\"\x9d\x04\n\x05\x42lock\x12\x19\n\x07\x65nabled\x18\x01 \x01(\x08\x42\x08\x8a\xb5\x18\x04\x30\x01x\x01\x12\x38\n\x0cinstructions\x18\x02 \x03(\x0b\x32\x1a.blox.Sequence.InstructionB\x06\x8a\xb5\x18\x02x\x01\x12#\n\x0bvariablesId\x18\x0b \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xcd\x02x\x01\x12\x1d\n\roverrideState\x18\x03 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12(\n\x11\x61\x63tiveInstruction\x18\x04 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x30\x01x\x01\x12;\n\tstoreMode\x18\x0c \x01(\x0e\x32 .blox.Sequence.SequenceStoreModeB\x06\x8a\xb5\x18\x02x\x01\x12\x35\n\x06status\x18\x08 \x01(\x0e\x32\x1d.blox.Sequence.SequenceStatusB\x06\x8a\xb5\x18\x02(\x01\x12\x33\n\x05\x65rror\x18\t \x01(\x0e\x32\x1c.blox.Sequence.SequenceErrorB\x06\x8a\xb5\x18\x02(\x01\x12#\n\x07\x65lapsed\x18\n \x01(\rB\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x03\x10\xe8\x07(\x01\x30\x01\x12/\n\x1a\x61\x63tiveInstructionStartedAt\x18\x05 \x01(\rB\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12\x1f\n\ndisabledAt\x18\x06 \x01(\rB\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12%\n\x10\x64isabledDuration\x18\x07 \x01(\rB\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\n\x8a\xb5\x18\x06\x18\xc6\x02J\x01\x0f*l\n\x0eSequenceStatus\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x0c\n\x08\x44ISABLED\x10\x01\x12\n\n\x06PAUSED\x10\x02\x12\x08\n\x04NEXT\x10\x03\x12\x08\n\x04WAIT\x10\x04\x12\x07\n\x03\x45ND\x10\x05\x12\x0b\n\x07RESTART\x10\x06\x12\t\n\x05\x45RROR\x10\x07*\xd7\x01\n\rSequenceError\x12\x08\n\x04NONE\x10\x00\x12\x14\n\x10INVALID_ARGUMENT\x10\x01\x12\x12\n\x0eINVALID_TARGET\x10\x02\x12\x13\n\x0fINACTIVE_TARGET\x10\x03\x12\x13\n\x0f\x44ISABLED_TARGET\x10\x04\x12\x1d\n\x19SYSTEM_TIME_NOT_AVAILABLE\x10\x05\x12\x1b\n\x17VARIABLES_NOT_SUPPORTED\x10\x06\x12\x16\n\x12UNDEFINED_VARIABLE\x10\x07\x12\x14\n\x10INVALID_VARIABLE\x10\x08*\x8f\x02\n\x11SequenceStoreMode\x12*\n&AT_RESTORE_INSTRUCTION_RESTORE_ENABLED\x10\x00\x12)\n%AT_RESTORE_INSTRUCTION_ALWAYS_ENABLED\x10\x01\x12(\n$AT_RESTORE_INSTRUCTION_NEVER_ENABLED\x10\x02\x12(\n$AT_FIRST_INSTRUCTION_RESTORE_ENABLED\x10\x03\x12\'\n#AT_FIRST_INSTRUCTION_ALWAYS_ENABLED\x10\x04\x12&\n\"AT_FIRST_INSTRUCTION_NEVER_ENABLED\x10\x05\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'Sequence_pb2', _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None + _COMMENT.fields_by_name['text']._options = None + _COMMENT.fields_by_name['text']._serialized_options = b'\212\265\030\002x\001' _ENABLEDISABLE.fields_by_name['__raw__target']._options = None - _ENABLEDISABLE.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\002\030\017' + _ENABLEDISABLE.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\004\030\017x\001' _ENABLEDISABLE.fields_by_name['__var__target']._options = None - _ENABLEDISABLE.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020' + _ENABLEDISABLE.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _WAITDURATION.fields_by_name['__raw__duration']._options = None - _WAITDURATION.fields_by_name['__raw__duration']._serialized_options = b'\222?\0028 \212\265\030\002\010\003' + _WAITDURATION.fields_by_name['__raw__duration']._serialized_options = b'\222?\0028 \212\265\030\004\010\003x\001' _WAITDURATION.fields_by_name['__var__duration']._options = None - _WAITDURATION.fields_by_name['__var__duration']._serialized_options = b'\222?\002\010\020' + _WAITDURATION.fields_by_name['__var__duration']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _WAITUNTIL.fields_by_name['__raw__time']._options = None - _WAITUNTIL.fields_by_name['__raw__time']._serialized_options = b'\222?\0028 \212\265\030\002X\001' + _WAITUNTIL.fields_by_name['__raw__time']._serialized_options = b'\222?\0028 \212\265\030\004X\001x\001' _WAITUNTIL.fields_by_name['__var__time']._options = None - _WAITUNTIL.fields_by_name['__var__time']._serialized_options = b'\222?\002\010\020' + _WAITUNTIL.fields_by_name['__var__time']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _WAITTEMPERATURERANGE.fields_by_name['__raw__target']._options = None - _WAITTEMPERATURERANGE.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\002\030\002' + _WAITTEMPERATURERANGE.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\004\030\002x\001' _WAITTEMPERATURERANGE.fields_by_name['__var__target']._options = None - _WAITTEMPERATURERANGE.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020' + _WAITTEMPERATURERANGE.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _WAITTEMPERATURERANGE.fields_by_name['__raw__lower']._options = None - _WAITTEMPERATURERANGE.fields_by_name['__raw__lower']._serialized_options = b'\222?\0028 \212\265\030\005\010\001\020\200 ' + _WAITTEMPERATURERANGE.fields_by_name['__raw__lower']._serialized_options = b'\222?\0028 \212\265\030\007\010\001\020\200 x\001' _WAITTEMPERATURERANGE.fields_by_name['__var__lower']._options = None - _WAITTEMPERATURERANGE.fields_by_name['__var__lower']._serialized_options = b'\222?\002\010\020' + _WAITTEMPERATURERANGE.fields_by_name['__var__lower']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _WAITTEMPERATURERANGE.fields_by_name['__raw__upper']._options = None - _WAITTEMPERATURERANGE.fields_by_name['__raw__upper']._serialized_options = b'\222?\0028 \212\265\030\005\010\001\020\200 ' + _WAITTEMPERATURERANGE.fields_by_name['__raw__upper']._serialized_options = b'\222?\0028 \212\265\030\007\010\001\020\200 x\001' _WAITTEMPERATURERANGE.fields_by_name['__var__upper']._options = None - _WAITTEMPERATURERANGE.fields_by_name['__var__upper']._serialized_options = b'\222?\002\010\020' + _WAITTEMPERATURERANGE.fields_by_name['__var__upper']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _WAITTEMPERATUREBOUNDARY.fields_by_name['__raw__target']._options = None - _WAITTEMPERATUREBOUNDARY.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\002\030\002' + _WAITTEMPERATUREBOUNDARY.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\004\030\002x\001' _WAITTEMPERATUREBOUNDARY.fields_by_name['__var__target']._options = None - _WAITTEMPERATUREBOUNDARY.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020' + _WAITTEMPERATUREBOUNDARY.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _WAITTEMPERATUREBOUNDARY.fields_by_name['__raw__value']._options = None - _WAITTEMPERATUREBOUNDARY.fields_by_name['__raw__value']._serialized_options = b'\222?\0028 \212\265\030\005\010\001\020\200 ' + _WAITTEMPERATUREBOUNDARY.fields_by_name['__raw__value']._serialized_options = b'\222?\0028 \212\265\030\007\010\001\020\200 x\001' _WAITTEMPERATUREBOUNDARY.fields_by_name['__var__value']._options = None - _WAITTEMPERATUREBOUNDARY.fields_by_name['__var__value']._serialized_options = b'\222?\002\010\020' + _WAITTEMPERATUREBOUNDARY.fields_by_name['__var__value']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _SETSETPOINT.fields_by_name['__raw__target']._options = None - _SETSETPOINT.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\002\030\004' + _SETSETPOINT.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\004\030\004x\001' _SETSETPOINT.fields_by_name['__var__target']._options = None - _SETSETPOINT.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020' + _SETSETPOINT.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _SETSETPOINT.fields_by_name['__raw__setting']._options = None - _SETSETPOINT.fields_by_name['__raw__setting']._serialized_options = b'\222?\0028 \212\265\030\005\010\001\020\200 ' + _SETSETPOINT.fields_by_name['__raw__setting']._serialized_options = b'\222?\0028 \212\265\030\007\010\001\020\200 x\001' _SETSETPOINT.fields_by_name['__var__setting']._options = None - _SETSETPOINT.fields_by_name['__var__setting']._serialized_options = b'\222?\002\010\020' + _SETSETPOINT.fields_by_name['__var__setting']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _WAITSETPOINT.fields_by_name['__raw__target']._options = None - _WAITSETPOINT.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\002\030\004' + _WAITSETPOINT.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\004\030\004x\001' _WAITSETPOINT.fields_by_name['__var__target']._options = None - _WAITSETPOINT.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020' + _WAITSETPOINT.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _WAITSETPOINT.fields_by_name['__raw__precision']._options = None - _WAITSETPOINT.fields_by_name['__raw__precision']._serialized_options = b'\222?\0028 \212\265\030\005\010\006\020\200 ' + _WAITSETPOINT.fields_by_name['__raw__precision']._serialized_options = b'\222?\0028 \212\265\030\007\010\006\020\200 x\001' _WAITSETPOINT.fields_by_name['__var__precision']._options = None - _WAITSETPOINT.fields_by_name['__var__precision']._serialized_options = b'\222?\002\010\020' + _WAITSETPOINT.fields_by_name['__var__precision']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _SETDIGITAL.fields_by_name['__raw__target']._options = None - _SETDIGITAL.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\002\030\006' + _SETDIGITAL.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\004\030\006x\001' _SETDIGITAL.fields_by_name['__var__target']._options = None - _SETDIGITAL.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020' + _SETDIGITAL.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' + _SETDIGITAL.fields_by_name['__raw__setting']._options = None + _SETDIGITAL.fields_by_name['__raw__setting']._serialized_options = b'\212\265\030\002x\001' _SETDIGITAL.fields_by_name['__var__setting']._options = None - _SETDIGITAL.fields_by_name['__var__setting']._serialized_options = b'\222?\002\010\020' + _SETDIGITAL.fields_by_name['__var__setting']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _WAITDIGITAL.fields_by_name['__raw__target']._options = None - _WAITDIGITAL.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\002\030\006' + _WAITDIGITAL.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\004\030\006x\001' _WAITDIGITAL.fields_by_name['__var__target']._options = None - _WAITDIGITAL.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020' + _WAITDIGITAL.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _WAITDIGITALSTATE.fields_by_name['__raw__target']._options = None - _WAITDIGITALSTATE.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\002\030\033' + _WAITDIGITALSTATE.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\004\030\033x\001' _WAITDIGITALSTATE.fields_by_name['__var__target']._options = None - _WAITDIGITALSTATE.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020' + _WAITDIGITALSTATE.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' + _WAITDIGITALSTATE.fields_by_name['__raw__state']._options = None + _WAITDIGITALSTATE.fields_by_name['__raw__state']._serialized_options = b'\212\265\030\002x\001' _WAITDIGITALSTATE.fields_by_name['__var__state']._options = None - _WAITDIGITALSTATE.fields_by_name['__var__state']._serialized_options = b'\222?\002\010\020' + _WAITDIGITALSTATE.fields_by_name['__var__state']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _SETPWM.fields_by_name['__raw__target']._options = None - _SETPWM.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\002\030\005' + _SETPWM.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\004\030\005x\001' _SETPWM.fields_by_name['__var__target']._options = None - _SETPWM.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020' + _SETPWM.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _SETPWM.fields_by_name['__raw__setting']._options = None - _SETPWM.fields_by_name['__raw__setting']._serialized_options = b'\222?\0028 \212\265\030\003\020\200 ' + _SETPWM.fields_by_name['__raw__setting']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 x\001' _SETPWM.fields_by_name['__var__setting']._options = None - _SETPWM.fields_by_name['__var__setting']._serialized_options = b'\222?\002\010\020' + _SETPWM.fields_by_name['__var__setting']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _TARGETPROFILE.fields_by_name['__raw__target']._options = None - _TARGETPROFILE.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\003\030\267\002' + _TARGETPROFILE.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\005\030\267\002x\001' _TARGETPROFILE.fields_by_name['__var__target']._options = None - _TARGETPROFILE.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020' + _TARGETPROFILE.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' _TARGETSEQUENCE.fields_by_name['__raw__target']._options = None - _TARGETSEQUENCE.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\003\030\306\002' + _TARGETSEQUENCE.fields_by_name['__raw__target']._serialized_options = b'\222?\0028\020\212\265\030\005\030\306\002x\001' _TARGETSEQUENCE.fields_by_name['__var__target']._options = None - _TARGETSEQUENCE.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020' + _TARGETSEQUENCE.fields_by_name['__var__target']._serialized_options = b'\222?\002\010\020\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['RESTART']._options = None + _INSTRUCTION.fields_by_name['RESTART']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['ENABLE']._options = None + _INSTRUCTION.fields_by_name['ENABLE']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['DISABLE']._options = None + _INSTRUCTION.fields_by_name['DISABLE']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT']._options = None + _INSTRUCTION.fields_by_name['WAIT']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_DURATION']._options = None + _INSTRUCTION.fields_by_name['WAIT_DURATION']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_UNTIL']._options = None + _INSTRUCTION.fields_by_name['WAIT_UNTIL']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_TEMP_BETWEEN']._options = None + _INSTRUCTION.fields_by_name['WAIT_TEMP_BETWEEN']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_TEMP_NOT_BETWEEN']._options = None + _INSTRUCTION.fields_by_name['WAIT_TEMP_NOT_BETWEEN']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_TEMP_UNEXPECTED']._options = None + _INSTRUCTION.fields_by_name['WAIT_TEMP_UNEXPECTED']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_TEMP_ABOVE']._options = None + _INSTRUCTION.fields_by_name['WAIT_TEMP_ABOVE']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_TEMP_BELOW']._options = None + _INSTRUCTION.fields_by_name['WAIT_TEMP_BELOW']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['SET_SETPOINT']._options = None + _INSTRUCTION.fields_by_name['SET_SETPOINT']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_SETPOINT']._options = None + _INSTRUCTION.fields_by_name['WAIT_SETPOINT']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_SETPOINT_ABOVE']._options = None + _INSTRUCTION.fields_by_name['WAIT_SETPOINT_ABOVE']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_SETPOINT_BELOW']._options = None + _INSTRUCTION.fields_by_name['WAIT_SETPOINT_BELOW']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['SET_DIGITAL']._options = None + _INSTRUCTION.fields_by_name['SET_DIGITAL']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_DIGITAL']._options = None + _INSTRUCTION.fields_by_name['WAIT_DIGITAL']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_DIGITAL_EQUALS']._options = None + _INSTRUCTION.fields_by_name['WAIT_DIGITAL_EQUALS']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['SET_PWM']._options = None + _INSTRUCTION.fields_by_name['SET_PWM']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['START_PROFILE']._options = None + _INSTRUCTION.fields_by_name['START_PROFILE']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_PROFILE']._options = None + _INSTRUCTION.fields_by_name['WAIT_PROFILE']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['START_SEQUENCE']._options = None + _INSTRUCTION.fields_by_name['START_SEQUENCE']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['WAIT_SEQUENCE']._options = None + _INSTRUCTION.fields_by_name['WAIT_SEQUENCE']._serialized_options = b'\212\265\030\002x\001' + _INSTRUCTION.fields_by_name['COMMENT']._options = None + _INSTRUCTION.fields_by_name['COMMENT']._serialized_options = b'\212\265\030\002x\001' _INSTRUCTION._options = None _INSTRUCTION._serialized_options = b'\222?\003\260\001\001' _BLOCK.fields_by_name['enabled']._options = None - _BLOCK.fields_by_name['enabled']._serialized_options = b'\212\265\030\0020\001' + _BLOCK.fields_by_name['enabled']._serialized_options = b'\212\265\030\0040\001x\001' + _BLOCK.fields_by_name['instructions']._options = None + _BLOCK.fields_by_name['instructions']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['variablesId']._options = None - _BLOCK.fields_by_name['variablesId']._serialized_options = b'\222?\0028\020\212\265\030\003\030\313\002' + _BLOCK.fields_by_name['variablesId']._serialized_options = b'\222?\0028\020\212\265\030\005\030\315\002x\001' + _BLOCK.fields_by_name['overrideState']._options = None + _BLOCK.fields_by_name['overrideState']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['activeInstruction']._options = None - _BLOCK.fields_by_name['activeInstruction']._serialized_options = b'\222?\0028\020\212\265\030\0020\001' + _BLOCK.fields_by_name['activeInstruction']._serialized_options = b'\222?\0028\020\212\265\030\0040\001x\001' + _BLOCK.fields_by_name['storeMode']._options = None + _BLOCK.fields_by_name['storeMode']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['status']._options = None _BLOCK.fields_by_name['status']._serialized_options = b'\212\265\030\002(\001' _BLOCK.fields_by_name['error']._options = None @@ -125,46 +185,46 @@ _BLOCK.fields_by_name['disabledDuration']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\006\030\306\002J\001\017' - _globals['_SEQUENCESTATUS']._serialized_start=3956 - _globals['_SEQUENCESTATUS']._serialized_end=4064 - _globals['_SEQUENCEERROR']._serialized_start=4067 - _globals['_SEQUENCEERROR']._serialized_end=4282 - _globals['_SEQUENCESTOREMODE']._serialized_start=4285 - _globals['_SEQUENCESTOREMODE']._serialized_end=4556 + _globals['_SEQUENCESTATUS']._serialized_start=4366 + _globals['_SEQUENCESTATUS']._serialized_end=4474 + _globals['_SEQUENCEERROR']._serialized_start=4477 + _globals['_SEQUENCEERROR']._serialized_end=4692 + _globals['_SEQUENCESTOREMODE']._serialized_start=4695 + _globals['_SEQUENCESTOREMODE']._serialized_end=4966 _globals['_COMMENT']._serialized_start=78 - _globals['_COMMENT']._serialized_end=101 - _globals['_RESTART']._serialized_start=103 - _globals['_RESTART']._serialized_end=112 - _globals['_ENABLEDISABLE']._serialized_start=114 - _globals['_ENABLEDISABLE']._serialized_end=209 - _globals['_WAIT']._serialized_start=211 - _globals['_WAIT']._serialized_end=217 - _globals['_WAITDURATION']._serialized_start=219 - _globals['_WAITDURATION']._serialized_end=319 - _globals['_WAITUNTIL']._serialized_start=321 - _globals['_WAITUNTIL']._serialized_end=406 - _globals['_WAITTEMPERATURERANGE']._serialized_start=409 - _globals['_WAITTEMPERATURERANGE']._serialized_end=671 - _globals['_WAITTEMPERATUREBOUNDARY']._serialized_start=674 - _globals['_WAITTEMPERATUREBOUNDARY']._serialized_end=859 - _globals['_SETSETPOINT']._serialized_start=862 - _globals['_SETSETPOINT']._serialized_end=1041 - _globals['_WAITSETPOINT']._serialized_start=1044 - _globals['_WAITSETPOINT']._serialized_end=1230 - _globals['_SETDIGITAL']._serialized_start=1233 - _globals['_SETDIGITAL']._serialized_end=1423 - _globals['_WAITDIGITAL']._serialized_start=1425 - _globals['_WAITDIGITAL']._serialized_end=1518 - _globals['_WAITDIGITALSTATE']._serialized_start=1521 - _globals['_WAITDIGITALSTATE']._serialized_end=1711 - _globals['_SETPWM']._serialized_start=1714 - _globals['_SETPWM']._serialized_end=1886 - _globals['_TARGETPROFILE']._serialized_start=1888 - _globals['_TARGETPROFILE']._serialized_end=1984 - _globals['_TARGETSEQUENCE']._serialized_start=1986 - _globals['_TARGETSEQUENCE']._serialized_end=2083 - _globals['_INSTRUCTION']._serialized_start=2086 - _globals['_INSTRUCTION']._serialized_end=3440 - _globals['_BLOCK']._serialized_start=3443 - _globals['_BLOCK']._serialized_end=3954 + _globals['_COMMENT']._serialized_end=109 + _globals['_RESTART']._serialized_start=111 + _globals['_RESTART']._serialized_end=120 + _globals['_ENABLEDISABLE']._serialized_start=122 + _globals['_ENABLEDISABLE']._serialized_end=225 + _globals['_WAIT']._serialized_start=227 + _globals['_WAIT']._serialized_end=233 + _globals['_WAITDURATION']._serialized_start=235 + _globals['_WAITDURATION']._serialized_end=343 + _globals['_WAITUNTIL']._serialized_start=345 + _globals['_WAITUNTIL']._serialized_end=438 + _globals['_WAITTEMPERATURERANGE']._serialized_start=441 + _globals['_WAITTEMPERATURERANGE']._serialized_end=727 + _globals['_WAITTEMPERATUREBOUNDARY']._serialized_start=730 + _globals['_WAITTEMPERATUREBOUNDARY']._serialized_end=931 + _globals['_SETSETPOINT']._serialized_start=934 + _globals['_SETSETPOINT']._serialized_end=1129 + _globals['_WAITSETPOINT']._serialized_start=1132 + _globals['_WAITSETPOINT']._serialized_end=1334 + _globals['_SETDIGITAL']._serialized_start=1337 + _globals['_SETDIGITAL']._serialized_end=1549 + _globals['_WAITDIGITAL']._serialized_start=1551 + _globals['_WAITDIGITAL']._serialized_end=1652 + _globals['_WAITDIGITALSTATE']._serialized_start=1655 + _globals['_WAITDIGITALSTATE']._serialized_end=1867 + _globals['_SETPWM']._serialized_start=1870 + _globals['_SETPWM']._serialized_end=2058 + _globals['_TARGETPROFILE']._serialized_start=2060 + _globals['_TARGETPROFILE']._serialized_end=2164 + _globals['_TARGETSEQUENCE']._serialized_start=2166 + _globals['_TARGETSEQUENCE']._serialized_end=2271 + _globals['_INSTRUCTION']._serialized_start=2274 + _globals['_INSTRUCTION']._serialized_end=3820 + _globals['_BLOCK']._serialized_start=3823 + _globals['_BLOCK']._serialized_end=4364 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/SetpointProfile_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/SetpointProfile_pb2.py index f830b039..dadd2130 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/SetpointProfile_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/SetpointProfile_pb2.py @@ -15,7 +15,7 @@ import nanopb_pb2 as nanopb__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15SetpointProfile.proto\x12\x14\x62lox.SetpointProfile\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"^\n\x05Point\x12\x19\n\x04time\x18\x01 \x01(\rB\x0b\x92?\x02\x38 \x8a\xb5\x18\x02\x08\x03\x12%\n\x0btemperature\x18\x02 \x01(\x05\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x01\x10\x80 H\x00\x42\x13\n\x11temperature_oneof\"\xd7\x01\n\x05\x42lock\x12+\n\x06points\x18\x01 \x03(\x0b\x32\x1b.blox.SetpointProfile.Point\x12\x0f\n\x07\x65nabled\x18\x03 \x01(\x08\x12\x1e\n\x08targetId\x18\x04 \x01(\rB\x0c\x92?\x02\x38\x10\x8a\xb5\x18\x03\x18\xaf\x02\x12#\n\x07setting\x18\x05 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12\x1a\n\x05start\x18\x06 \x01(\rB\x0b\x92?\x02\x38 \x8a\xb5\x18\x02X\x01\x12#\n\x0e\x64rivenTargetId\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\n\x8a\xb5\x18\x06\x18\xb7\x02J\x01\x0f\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15SetpointProfile.proto\x12\x14\x62lox.SetpointProfile\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"b\n\x05Point\x12\x1b\n\x04time\x18\x01 \x01(\rB\r\x92?\x02\x38 \x8a\xb5\x18\x04\x08\x03x\x01\x12\'\n\x0btemperature\x18\x02 \x01(\x05\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x01\x10\x80 x\x01H\x00\x42\x13\n\x11temperature_oneof\"\xeb\x01\n\x05\x42lock\x12\x33\n\x06points\x18\x01 \x03(\x0b\x32\x1b.blox.SetpointProfile.PointB\x06\x8a\xb5\x18\x02x\x01\x12\x17\n\x07\x65nabled\x18\x03 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12 \n\x08targetId\x18\x04 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xaf\x02x\x01\x12#\n\x07setting\x18\x05 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12\x1c\n\x05start\x18\x06 \x01(\rB\r\x92?\x02\x38 \x8a\xb5\x18\x04X\x01x\x01\x12#\n\x0e\x64rivenTargetId\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\n\x8a\xb5\x18\x06\x18\xb7\x02J\x01\x0f\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -23,21 +23,25 @@ if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None _POINT.fields_by_name['time']._options = None - _POINT.fields_by_name['time']._serialized_options = b'\222?\0028 \212\265\030\002\010\003' + _POINT.fields_by_name['time']._serialized_options = b'\222?\0028 \212\265\030\004\010\003x\001' _POINT.fields_by_name['temperature']._options = None - _POINT.fields_by_name['temperature']._serialized_options = b'\222?\0028 \212\265\030\005\010\001\020\200 ' + _POINT.fields_by_name['temperature']._serialized_options = b'\222?\0028 \212\265\030\007\010\001\020\200 x\001' + _BLOCK.fields_by_name['points']._options = None + _BLOCK.fields_by_name['points']._serialized_options = b'\212\265\030\002x\001' + _BLOCK.fields_by_name['enabled']._options = None + _BLOCK.fields_by_name['enabled']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['targetId']._options = None - _BLOCK.fields_by_name['targetId']._serialized_options = b'\222?\0028\020\212\265\030\003\030\257\002' + _BLOCK.fields_by_name['targetId']._serialized_options = b'\222?\0028\020\212\265\030\005\030\257\002x\001' _BLOCK.fields_by_name['setting']._options = None _BLOCK.fields_by_name['setting']._serialized_options = b'\222?\0028 \212\265\030\t\010\001\020\200 (\0010\001' _BLOCK.fields_by_name['start']._options = None - _BLOCK.fields_by_name['start']._serialized_options = b'\222?\0028 \212\265\030\002X\001' + _BLOCK.fields_by_name['start']._serialized_options = b'\222?\0028 \212\265\030\004X\001x\001' _BLOCK.fields_by_name['drivenTargetId']._options = None _BLOCK.fields_by_name['drivenTargetId']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\006\030\267\002J\001\017' _globals['_POINT']._serialized_start=77 - _globals['_POINT']._serialized_end=171 - _globals['_BLOCK']._serialized_start=174 - _globals['_BLOCK']._serialized_end=389 + _globals['_POINT']._serialized_end=175 + _globals['_BLOCK']._serialized_start=178 + _globals['_BLOCK']._serialized_end=413 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/SetpointSensorPair_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/SetpointSensorPair_pb2.py index ff3ff4d8..41e90b67 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/SetpointSensorPair_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/SetpointSensorPair_pb2.py @@ -16,17 +16,19 @@ import Claims_pb2 as Claims__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18SetpointSensorPair.proto\x12\x17\x62lox.SetpointSensorPair\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x0c\x43laims.proto\"\xfd\x03\n\x05\x42lock\x12\x0f\n\x07\x65nabled\x18\x07 \x01(\x08\x12\x1d\n\x08sensorId\x18\x02 \x01(\rB\x0b\x92?\x02\x38\x10\x8a\xb5\x18\x02\x18\x02\x12\'\n\rstoredSetting\x18\x08 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x01\x10\x80 0\x01\x12*\n\x0e\x64\x65siredSetting\x18\x0f \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12#\n\x07setting\x18\x05 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12!\n\x05value\x18\x06 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12+\n\x0fvalueUnfiltered\x18\x0b \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12\x35\n\x06\x66ilter\x18\t \x01(\x0e\x32%.blox.SetpointSensorPair.FilterChoice\x12\'\n\x0f\x66ilterThreshold\x18\n \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x06\x10\x80 \x12\x13\n\x0bresetFilter\x18\x0c \x01(\x08\x12!\n\tclaimedBy\x18\r \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12-\n\x0bsettingMode\x18\x0e \x01(\x0e\x32\x18.blox.Claims.SettingMode\x12#\n\x0esettingEnabled\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x0e\x8a\xb5\x18\n\x18\xaf\x02J\x05\x01\x14\x04\x0f\x10*~\n\x0c\x46ilterChoice\x12\x0f\n\x0b\x46ILTER_NONE\x10\x00\x12\x0e\n\nFILTER_15s\x10\x01\x12\x0e\n\nFILTER_45s\x10\x02\x12\x0e\n\nFILTER_90s\x10\x03\x12\r\n\tFILTER_3m\x10\x04\x12\x0e\n\nFILTER_10m\x10\x05\x12\x0e\n\nFILTER_30m\x10\x06\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18SetpointSensorPair.proto\x12\x17\x62lox.SetpointSensorPair\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x0c\x43laims.proto\"\x9b\x04\n\x05\x42lock\x12\x17\n\x07\x65nabled\x18\x07 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x1f\n\x08sensorId\x18\x02 \x01(\rB\r\x92?\x02\x38\x10\x8a\xb5\x18\x04\x18\x02x\x01\x12)\n\rstoredSetting\x18\x08 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 0\x01x\x01\x12*\n\x0e\x64\x65siredSetting\x18\x0f \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12#\n\x07setting\x18\x05 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12!\n\x05value\x18\x06 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12+\n\x0fvalueUnfiltered\x18\x0b \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12=\n\x06\x66ilter\x18\t \x01(\x0e\x32%.blox.SetpointSensorPair.FilterChoiceB\x06\x8a\xb5\x18\x02x\x01\x12)\n\x0f\x66ilterThreshold\x18\n \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x06\x10\x80 x\x01\x12\x13\n\x0bresetFilter\x18\x0c \x01(\x08\x12!\n\tclaimedBy\x18\r \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01(\x01\x12\x35\n\x0bsettingMode\x18\x0e \x01(\x0e\x32\x18.blox.Claims.SettingModeB\x06\x8a\xb5\x18\x02x\x01\x12#\n\x0esettingEnabled\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x0e\x8a\xb5\x18\n\x18\xaf\x02J\x05\x01\x14\x04\x0f\x10*~\n\x0c\x46ilterChoice\x12\x0f\n\x0b\x46ILTER_NONE\x10\x00\x12\x0e\n\nFILTER_15s\x10\x01\x12\x0e\n\nFILTER_45s\x10\x02\x12\x0e\n\nFILTER_90s\x10\x03\x12\r\n\tFILTER_3m\x10\x04\x12\x0e\n\nFILTER_10m\x10\x05\x12\x0e\n\nFILTER_30m\x10\x06\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'SetpointSensorPair_pb2', _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None + _BLOCK.fields_by_name['enabled']._options = None + _BLOCK.fields_by_name['enabled']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['sensorId']._options = None - _BLOCK.fields_by_name['sensorId']._serialized_options = b'\222?\0028\020\212\265\030\002\030\002' + _BLOCK.fields_by_name['sensorId']._serialized_options = b'\222?\0028\020\212\265\030\004\030\002x\001' _BLOCK.fields_by_name['storedSetting']._options = None - _BLOCK.fields_by_name['storedSetting']._serialized_options = b'\222?\0028 \212\265\030\007\010\001\020\200 0\001' + _BLOCK.fields_by_name['storedSetting']._serialized_options = b'\222?\0028 \212\265\030\t\010\001\020\200 0\001x\001' _BLOCK.fields_by_name['desiredSetting']._options = None _BLOCK.fields_by_name['desiredSetting']._serialized_options = b'\222?\0028 \212\265\030\t\010\001\020\200 (\0010\001' _BLOCK.fields_by_name['setting']._options = None @@ -35,16 +37,20 @@ _BLOCK.fields_by_name['value']._serialized_options = b'\222?\0028 \212\265\030\t\010\001\020\200 (\0010\001' _BLOCK.fields_by_name['valueUnfiltered']._options = None _BLOCK.fields_by_name['valueUnfiltered']._serialized_options = b'\222?\0028 \212\265\030\t\010\001\020\200 (\0010\001' + _BLOCK.fields_by_name['filter']._options = None + _BLOCK.fields_by_name['filter']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['filterThreshold']._options = None - _BLOCK.fields_by_name['filterThreshold']._serialized_options = b'\222?\0028 \212\265\030\005\010\006\020\200 ' + _BLOCK.fields_by_name['filterThreshold']._serialized_options = b'\222?\0028 \212\265\030\007\010\006\020\200 x\001' _BLOCK.fields_by_name['claimedBy']._options = None _BLOCK.fields_by_name['claimedBy']._serialized_options = b'\222?\0028\020\212\265\030\005\030\377\001(\001' + _BLOCK.fields_by_name['settingMode']._options = None + _BLOCK.fields_by_name['settingMode']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['settingEnabled']._options = None _BLOCK.fields_by_name['settingEnabled']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\n\030\257\002J\005\001\024\004\017\020' - _globals['_FILTERCHOICE']._serialized_start=609 - _globals['_FILTERCHOICE']._serialized_end=735 + _globals['_FILTERCHOICE']._serialized_start=639 + _globals['_FILTERCHOICE']._serialized_end=765 _globals['_BLOCK']._serialized_start=98 - _globals['_BLOCK']._serialized_end=607 + _globals['_BLOCK']._serialized_end=637 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/Spark3Pins_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/Spark3Pins_pb2.py index 354fce6f..8a5878ff 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/Spark3Pins_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/Spark3Pins_pb2.py @@ -16,13 +16,17 @@ import IoArray_pb2 as IoArray__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x10Spark3Pins.proto\x12\x0f\x62lox.Spark3Pins\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\xf6\x01\n\x05\x42lock\x12\x18\n\x10\x65nableIoSupply5V\x18\x02 \x01(\x08\x12\x19\n\x11\x65nableIoSupply12V\x18\x03 \x01(\x08\x12\x12\n\nsoundAlarm\x18\x05 \x01(\x08\x12 \n\x08voltage5\x18\x06 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x10\xe8\x07(\x01\x12!\n\tvoltage12\x18\x07 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x10\xe8\x07(\x01\x12\x38\n\x08\x63hannels\x18\x08 \x03(\x0b\x32\x17.blox.IoArray.IoChannelB\r\x92?\x04\x10\x05x\x01\x8a\xb5\x18\x02(\x01\x12\x19\n\x04pins\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\n\x8a\xb5\x18\x06\x18\xbf\x02J\x01\n*\x92\x01\n\tChannelId\x12\x11\n\rSPARK3_NO_PIN\x10\x00\x12\x14\n\x10SPARK3_CHAN_TOP1\x10\x01\x12\x14\n\x10SPARK3_CHAN_TOP2\x10\x02\x12\x14\n\x10SPARK3_CHAN_TOP3\x10\x03\x12\x17\n\x13SPARK3_CHAN_BOTTOM1\x10\x04\x12\x17\n\x13SPARK3_CHAN_BOTTOM2\x10\x05\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x10Spark3Pins.proto\x12\x0f\x62lox.Spark3Pins\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\x86\x02\n\x05\x42lock\x12 \n\x10\x65nableIoSupply5V\x18\x02 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12!\n\x11\x65nableIoSupply12V\x18\x03 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x12\n\nsoundAlarm\x18\x05 \x01(\x08\x12 \n\x08voltage5\x18\x06 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x10\xe8\x07(\x01\x12!\n\tvoltage12\x18\x07 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x10\xe8\x07(\x01\x12\x38\n\x08\x63hannels\x18\x08 \x03(\x0b\x32\x17.blox.IoArray.IoChannelB\r\x92?\x04\x10\x05x\x01\x8a\xb5\x18\x02(\x01\x12\x19\n\x04pins\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\n\x8a\xb5\x18\x06\x18\xbf\x02J\x01\n*\x92\x01\n\tChannelId\x12\x11\n\rSPARK3_NO_PIN\x10\x00\x12\x14\n\x10SPARK3_CHAN_TOP1\x10\x01\x12\x14\n\x10SPARK3_CHAN_TOP2\x10\x02\x12\x14\n\x10SPARK3_CHAN_TOP3\x10\x03\x12\x17\n\x13SPARK3_CHAN_BOTTOM1\x10\x04\x12\x17\n\x13SPARK3_CHAN_BOTTOM2\x10\x05\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'Spark3Pins_pb2', _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None + _BLOCK.fields_by_name['enableIoSupply5V']._options = None + _BLOCK.fields_by_name['enableIoSupply5V']._serialized_options = b'\212\265\030\002x\001' + _BLOCK.fields_by_name['enableIoSupply12V']._options = None + _BLOCK.fields_by_name['enableIoSupply12V']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['voltage5']._options = None _BLOCK.fields_by_name['voltage5']._serialized_options = b'\222?\0028\020\212\265\030\005\020\350\007(\001' _BLOCK.fields_by_name['voltage12']._options = None @@ -33,8 +37,8 @@ _BLOCK.fields_by_name['pins']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\006\030\277\002J\001\n' - _globals['_CHANNELID']._serialized_start=332 - _globals['_CHANNELID']._serialized_end=478 + _globals['_CHANNELID']._serialized_start=348 + _globals['_CHANNELID']._serialized_end=494 _globals['_BLOCK']._serialized_start=83 - _globals['_BLOCK']._serialized_end=329 + _globals['_BLOCK']._serialized_end=345 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/SysInfo_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/SysInfo_pb2.py index a902688b..e8e87a9b 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/SysInfo_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/SysInfo_pb2.py @@ -15,7 +15,7 @@ import nanopb_pb2 as nanopb__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\rSysInfo.proto\x12\x0c\x62lox.SysInfo\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\xd7\x05\n\x05\x42lock\x12\x1f\n\x08\x64\x65viceId\x18\x01 \x01(\x0c\x42\r\x92?\x02\x08\x0c\x8a\xb5\x18\x04(\x01\x38\x01\x12\x1c\n\x07version\x18\x02 \x01(\tB\x0b\x92?\x02\x08\x0c\x8a\xb5\x18\x02(\x01\x12\x30\n\x08platform\x18\x03 \x01(\x0e\x32\x16.blox.SysInfo.PlatformB\x06\x8a\xb5\x18\x02(\x01\x12$\n\x0fprotocolVersion\x18\x07 \x01(\tB\x0b\x92?\x02\x08\x0c\x8a\xb5\x18\x02(\x01\x12 \n\x0breleaseDate\x18\x08 \x01(\tB\x0b\x92?\x02\x08\x0c\x8a\xb5\x18\x02(\x01\x12!\n\x0cprotocolDate\x18\t \x01(\tB\x0b\x92?\x02\x08\x0c\x8a\xb5\x18\x02(\x01\x12\x19\n\x02ip\x18\n \x01(\rB\r\x92?\x02\x38 \x8a\xb5\x18\x04(\x01`\x01\x12\"\n\x06uptime\x18\x0b \x01(\rB\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x03\x10\xe8\x07(\x01\x30\x01\x12*\n\x10updatesPerSecond\x18\x0c \x01(\rB\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\xe8\x07(\x01\x30\x01\x12\x1f\n\nsystemTime\x18\r \x01(\rB\x0b\x92?\x02\x38 \x8a\xb5\x18\x02X\x01\x12\x17\n\x08timeZone\x18\x0e \x01(\tB\x05\x92?\x02\x08 \x12/\n\x08tempUnit\x18\x0f \x01(\x0e\x32\x1d.blox.SysInfo.TemperatureUnit\x12 \n\x11\x64isplayBrightness\x18\x10 \x01(\rB\x05\x92?\x02\x38\x08\x12\"\n\x08voltage5\x18\x11 \x01(\rB\x10\x92?\x02\x38\x10\x8a\xb5\x18\x07\x10\xe8\x07(\x01\x30\x01\x12)\n\x0fvoltageExternal\x18\x12 \x01(\rB\x10\x92?\x02\x38\x10\x8a\xb5\x18\x07\x10\xe8\x07(\x01\x30\x01\x12\x1c\n\nmemoryFree\x18\x13 \x01(\rB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12&\n\x14memoryFreeContiguous\x18\x14 \x01(\rB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\"\n\x10memoryFreeLowest\x18\x15 \x01(\rB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x1c\n\x07\x63ommand\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12\x1a\n\x05trace\x18[ \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x07\x8a\xb5\x18\x03\x18\x80\x02*}\n\x08Platform\x12\x14\n\x10PLATFORM_UNKNOWN\x10\x00\x12\x10\n\x0cPLATFORM_GCC\x10\x03\x12\x13\n\x0fPLATFORM_PHOTON\x10\x06\x12\x0f\n\x0bPLATFORM_P1\x10\x08\x12\x10\n\x0cPLATFORM_ESP\x10\x64\x12\x11\n\x0cPLATFORM_SIM\x10\xc8\x01*8\n\x0fTemperatureUnit\x12\x10\n\x0cTEMP_CELSIUS\x10\x00\x12\x13\n\x0fTEMP_FAHRENHEIT\x10\x01\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\rSysInfo.proto\x12\x0c\x62lox.SysInfo\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\xeb\x05\n\x05\x42lock\x12\x1f\n\x08\x64\x65viceId\x18\x01 \x01(\x0c\x42\r\x92?\x02\x08\x0c\x8a\xb5\x18\x04(\x01\x38\x01\x12\x1c\n\x07version\x18\x02 \x01(\tB\x0b\x92?\x02\x08\x0c\x8a\xb5\x18\x02(\x01\x12\x30\n\x08platform\x18\x03 \x01(\x0e\x32\x16.blox.SysInfo.PlatformB\x06\x8a\xb5\x18\x02(\x01\x12$\n\x0fprotocolVersion\x18\x07 \x01(\tB\x0b\x92?\x02\x08\x0c\x8a\xb5\x18\x02(\x01\x12 \n\x0breleaseDate\x18\x08 \x01(\tB\x0b\x92?\x02\x08\x0c\x8a\xb5\x18\x02(\x01\x12!\n\x0cprotocolDate\x18\t \x01(\tB\x0b\x92?\x02\x08\x0c\x8a\xb5\x18\x02(\x01\x12\x19\n\x02ip\x18\n \x01(\rB\r\x92?\x02\x38 \x8a\xb5\x18\x04(\x01`\x01\x12\"\n\x06uptime\x18\x0b \x01(\rB\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x03\x10\xe8\x07(\x01\x30\x01\x12*\n\x10updatesPerSecond\x18\x0c \x01(\rB\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x10\xe8\x07(\x01\x30\x01\x12\x1f\n\nsystemTime\x18\r \x01(\rB\x0b\x92?\x02\x38 \x8a\xb5\x18\x02X\x01\x12\x1d\n\x08timeZone\x18\x0e \x01(\tB\x0b\x92?\x02\x08 \x8a\xb5\x18\x02x\x01\x12\x37\n\x08tempUnit\x18\x0f \x01(\x0e\x32\x1d.blox.SysInfo.TemperatureUnitB\x06\x8a\xb5\x18\x02x\x01\x12&\n\x11\x64isplayBrightness\x18\x10 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12\"\n\x08voltage5\x18\x11 \x01(\rB\x10\x92?\x02\x38\x10\x8a\xb5\x18\x07\x10\xe8\x07(\x01\x30\x01\x12)\n\x0fvoltageExternal\x18\x12 \x01(\rB\x10\x92?\x02\x38\x10\x8a\xb5\x18\x07\x10\xe8\x07(\x01\x30\x01\x12\x1c\n\nmemoryFree\x18\x13 \x01(\rB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12&\n\x14memoryFreeContiguous\x18\x14 \x01(\rB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\"\n\x10memoryFreeLowest\x18\x15 \x01(\rB\x08\x8a\xb5\x18\x04(\x01\x30\x01\x12\x1c\n\x07\x63ommand\x18Z \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01\x12\x1a\n\x05trace\x18[ \x01(\x08\x42\x0b\x92?\x02\x18\x03\x8a\xb5\x18\x02H\x01:\x07\x8a\xb5\x18\x03\x18\x80\x02*}\n\x08Platform\x12\x14\n\x10PLATFORM_UNKNOWN\x10\x00\x12\x10\n\x0cPLATFORM_GCC\x10\x03\x12\x13\n\x0fPLATFORM_PHOTON\x10\x06\x12\x0f\n\x0bPLATFORM_P1\x10\x08\x12\x10\n\x0cPLATFORM_ESP\x10\x64\x12\x11\n\x0cPLATFORM_SIM\x10\xc8\x01*8\n\x0fTemperatureUnit\x12\x10\n\x0cTEMP_CELSIUS\x10\x00\x12\x13\n\x0fTEMP_FAHRENHEIT\x10\x01\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -43,9 +43,11 @@ _BLOCK.fields_by_name['systemTime']._options = None _BLOCK.fields_by_name['systemTime']._serialized_options = b'\222?\0028 \212\265\030\002X\001' _BLOCK.fields_by_name['timeZone']._options = None - _BLOCK.fields_by_name['timeZone']._serialized_options = b'\222?\002\010 ' + _BLOCK.fields_by_name['timeZone']._serialized_options = b'\222?\002\010 \212\265\030\002x\001' + _BLOCK.fields_by_name['tempUnit']._options = None + _BLOCK.fields_by_name['tempUnit']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['displayBrightness']._options = None - _BLOCK.fields_by_name['displayBrightness']._serialized_options = b'\222?\0028\010' + _BLOCK.fields_by_name['displayBrightness']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' _BLOCK.fields_by_name['voltage5']._options = None _BLOCK.fields_by_name['voltage5']._serialized_options = b'\222?\0028\020\212\265\030\007\020\350\007(\0010\001' _BLOCK.fields_by_name['voltageExternal']._options = None @@ -62,10 +64,10 @@ _BLOCK.fields_by_name['trace']._serialized_options = b'\222?\002\030\003\212\265\030\002H\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\003\030\200\002' - _globals['_PLATFORM']._serialized_start=791 - _globals['_PLATFORM']._serialized_end=916 - _globals['_TEMPERATUREUNIT']._serialized_start=918 - _globals['_TEMPERATUREUNIT']._serialized_end=974 + _globals['_PLATFORM']._serialized_start=811 + _globals['_PLATFORM']._serialized_end=936 + _globals['_TEMPERATUREUNIT']._serialized_start=938 + _globals['_TEMPERATUREUNIT']._serialized_end=994 _globals['_BLOCK']._serialized_start=62 - _globals['_BLOCK']._serialized_end=789 + _globals['_BLOCK']._serialized_end=809 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/TempSensorAnalog_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/TempSensorAnalog_pb2.py new file mode 100644 index 00000000..ff742b6d --- /dev/null +++ b/brewblox_devcon_spark/codec/proto-compiled/TempSensorAnalog_pb2.py @@ -0,0 +1,48 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: TempSensorAnalog.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +import brewblox_pb2 as brewblox__pb2 +import nanopb_pb2 as nanopb__pb2 +import PrecisionAnalogModule_pb2 as PrecisionAnalogModule__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16TempSensorAnalog.proto\x12\x15\x62lox.TempSensorAnalog\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\x1bPrecisionAnalogModule.proto\"\xe7\x02\n\x05\x42lock\x12\x41\n\x04type\x18\x01 \x01(\x0e\x32+.blox.TempSensorAnalog.TempSensorAnalogTypeB\x06\x8a\xb5\x18\x02x\x01\x12 \n\x08moduleId\x18\x02 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xcb\x02x\x01\x12\x1c\n\x07\x63hannel\x18\x03 \x01(\rB\x0b\x92?\x02\x38\x08\x8a\xb5\x18\x02x\x01\x12!\n\x05value\x18\x04 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12 \n\x06offset\x18\x05 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x06\x10\x80 x\x01\x12G\n\x08\x64\x65tected\x18\x06 \x01(\x0e\x32-.blox.PrecisionAnalogModule.AnalogChannelTypeB\x06\x8a\xb5\x18\x02(\x01\x12\x41\n\x04spec\x18\x07 \x01(\x0e\x32+.blox.TempSensorAnalog.TempSensorAnalogSpecB\x06\x8a\xb5\x18\x02x\x01:\n\x8a\xb5\x18\x06\x18\xcc\x02J\x01\x02*\x94\x01\n\x14TempSensorAnalogType\x12\x1c\n\x18TEMP_SENSOR_TYPE_NOT_SET\x10\x00\x12\x1e\n\x1aTEMP_SENSOR_TYPE_RTD_2WIRE\x10\x01\x12\x1e\n\x1aTEMP_SENSOR_TYPE_RTD_3WIRE\x10\x02\x12\x1e\n\x1aTEMP_SENSOR_TYPE_RTD_4WIRE\x10\x03*z\n\x14TempSensorAnalogSpec\x12\x10\n\x0cSPEC_NOT_SET\x10\x00\x12\x12\n\x0eSPEC_PT100_385\x10\x01\x12\x12\n\x0eSPEC_PT100_392\x10\x02\x12\x13\n\x0fSPEC_PT1000_385\x10\x03\x12\x13\n\x0fSPEC_PT1000_392\x10\x04\x62\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'TempSensorAnalog_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + DESCRIPTOR._options = None + _BLOCK.fields_by_name['type']._options = None + _BLOCK.fields_by_name['type']._serialized_options = b'\212\265\030\002x\001' + _BLOCK.fields_by_name['moduleId']._options = None + _BLOCK.fields_by_name['moduleId']._serialized_options = b'\222?\0028\020\212\265\030\005\030\313\002x\001' + _BLOCK.fields_by_name['channel']._options = None + _BLOCK.fields_by_name['channel']._serialized_options = b'\222?\0028\010\212\265\030\002x\001' + _BLOCK.fields_by_name['value']._options = None + _BLOCK.fields_by_name['value']._serialized_options = b'\222?\0028 \212\265\030\t\010\001\020\200 (\0010\001' + _BLOCK.fields_by_name['offset']._options = None + _BLOCK.fields_by_name['offset']._serialized_options = b'\222?\0028 \212\265\030\007\010\006\020\200 x\001' + _BLOCK.fields_by_name['detected']._options = None + _BLOCK.fields_by_name['detected']._serialized_options = b'\212\265\030\002(\001' + _BLOCK.fields_by_name['spec']._options = None + _BLOCK.fields_by_name['spec']._serialized_options = b'\212\265\030\002x\001' + _BLOCK._options = None + _BLOCK._serialized_options = b'\212\265\030\006\030\314\002J\001\002' + _globals['_TEMPSENSORANALOGTYPE']._serialized_start=471 + _globals['_TEMPSENSORANALOGTYPE']._serialized_end=619 + _globals['_TEMPSENSORANALOGSPEC']._serialized_start=621 + _globals['_TEMPSENSORANALOGSPEC']._serialized_end=743 + _globals['_BLOCK']._serialized_start=109 + _globals['_BLOCK']._serialized_end=468 +# @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/TempSensorCombi_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/TempSensorCombi_pb2.py index 5e4a2428..5f549824 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/TempSensorCombi_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/TempSensorCombi_pb2.py @@ -15,7 +15,7 @@ import nanopb_pb2 as nanopb__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15TempSensorCombi.proto\x12\x14\x62lox.TempSensorCombi\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\x92\x01\n\x05\x42lock\x12!\n\x05value\x18\x01 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12:\n\x0b\x63ombineFunc\x18\x02 \x01(\x0e\x32%.blox.TempSensorCombi.SensorCombiFunc\x12\x1e\n\x07sensors\x18\x03 \x03(\rB\r\x92?\x04\x10\x08\x38\x10\x8a\xb5\x18\x02\x18\x02:\n\x8a\xb5\x18\x06\x18\xc4\x02J\x01\x02*b\n\x0fSensorCombiFunc\x12\x19\n\x15SENSOR_COMBI_FUNC_AVG\x10\x00\x12\x19\n\x15SENSOR_COMBI_FUNC_MIN\x10\x01\x12\x19\n\x15SENSOR_COMBI_FUNC_MAX\x10\x02\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15TempSensorCombi.proto\x12\x14\x62lox.TempSensorCombi\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\x9c\x01\n\x05\x42lock\x12!\n\x05value\x18\x01 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12\x42\n\x0b\x63ombineFunc\x18\x02 \x01(\x0e\x32%.blox.TempSensorCombi.SensorCombiFuncB\x06\x8a\xb5\x18\x02x\x01\x12 \n\x07sensors\x18\x03 \x03(\rB\x0f\x92?\x04\x10\x08\x38\x10\x8a\xb5\x18\x04\x18\x02x\x01:\n\x8a\xb5\x18\x06\x18\xc4\x02J\x01\x02*b\n\x0fSensorCombiFunc\x12\x19\n\x15SENSOR_COMBI_FUNC_AVG\x10\x00\x12\x19\n\x15SENSOR_COMBI_FUNC_MIN\x10\x01\x12\x19\n\x15SENSOR_COMBI_FUNC_MAX\x10\x02\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -24,12 +24,14 @@ DESCRIPTOR._options = None _BLOCK.fields_by_name['value']._options = None _BLOCK.fields_by_name['value']._serialized_options = b'\222?\0028 \212\265\030\t\010\001\020\200 (\0010\001' + _BLOCK.fields_by_name['combineFunc']._options = None + _BLOCK.fields_by_name['combineFunc']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['sensors']._options = None - _BLOCK.fields_by_name['sensors']._serialized_options = b'\222?\004\020\0108\020\212\265\030\002\030\002' + _BLOCK.fields_by_name['sensors']._serialized_options = b'\222?\004\020\0108\020\212\265\030\004\030\002x\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\006\030\304\002J\001\002' - _globals['_SENSORCOMBIFUNC']._serialized_start=226 - _globals['_SENSORCOMBIFUNC']._serialized_end=324 + _globals['_SENSORCOMBIFUNC']._serialized_start=236 + _globals['_SENSORCOMBIFUNC']._serialized_end=334 _globals['_BLOCK']._serialized_start=78 - _globals['_BLOCK']._serialized_end=224 + _globals['_BLOCK']._serialized_end=234 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/TempSensorExternal_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/TempSensorExternal_pb2.py index 2ae818a9..666af24e 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/TempSensorExternal_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/TempSensorExternal_pb2.py @@ -15,17 +15,19 @@ import nanopb_pb2 as nanopb__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18TempSensorExternal.proto\x12\x17\x62lox.TempSensorExternal\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\xaf\x01\n\x05\x42lock\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x1c\n\x07timeout\x18\x02 \x01(\rB\x0b\x92?\x02\x38 \x8a\xb5\x18\x02\x08\x03\x12!\n\x07setting\x18\x03 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x01\x10\x80 0\x01\x12$\n\x0blastUpdated\x18\x04 \x01(\rB\x0f\x92?\x02\x38 \x8a\xb5\x18\x06(\x01\x30\x01X\x01\x12!\n\x05value\x18\x05 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01:\x0b\x8a\xb5\x18\x07\x18\xc8\x02J\x02\x02\x0f\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18TempSensorExternal.proto\x12\x17\x62lox.TempSensorExternal\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\xbb\x01\n\x05\x42lock\x12\x17\n\x07\x65nabled\x18\x01 \x01(\x08\x42\x06\x8a\xb5\x18\x02x\x01\x12\x1e\n\x07timeout\x18\x02 \x01(\rB\r\x92?\x02\x38 \x8a\xb5\x18\x04\x08\x03x\x01\x12#\n\x07setting\x18\x03 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 0\x01x\x01\x12$\n\x0blastUpdated\x18\x04 \x01(\rB\x0f\x92?\x02\x38 \x8a\xb5\x18\x06(\x01\x30\x01X\x01\x12!\n\x05value\x18\x05 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01:\x0b\x8a\xb5\x18\x07\x18\xc8\x02J\x02\x02\x0f\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'TempSensorExternal_pb2', _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None + _BLOCK.fields_by_name['enabled']._options = None + _BLOCK.fields_by_name['enabled']._serialized_options = b'\212\265\030\002x\001' _BLOCK.fields_by_name['timeout']._options = None - _BLOCK.fields_by_name['timeout']._serialized_options = b'\222?\0028 \212\265\030\002\010\003' + _BLOCK.fields_by_name['timeout']._serialized_options = b'\222?\0028 \212\265\030\004\010\003x\001' _BLOCK.fields_by_name['setting']._options = None - _BLOCK.fields_by_name['setting']._serialized_options = b'\222?\0028 \212\265\030\007\010\001\020\200 0\001' + _BLOCK.fields_by_name['setting']._serialized_options = b'\222?\0028 \212\265\030\t\010\001\020\200 0\001x\001' _BLOCK.fields_by_name['lastUpdated']._options = None _BLOCK.fields_by_name['lastUpdated']._serialized_options = b'\222?\0028 \212\265\030\006(\0010\001X\001' _BLOCK.fields_by_name['value']._options = None @@ -33,5 +35,5 @@ _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\007\030\310\002J\002\002\017' _globals['_BLOCK']._serialized_start=84 - _globals['_BLOCK']._serialized_end=259 + _globals['_BLOCK']._serialized_end=271 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/TempSensorMock_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/TempSensorMock_pb2.py index b3449297..14f61daa 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/TempSensorMock_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/TempSensorMock_pb2.py @@ -15,7 +15,7 @@ import nanopb_pb2 as nanopb__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14TempSensorMock.proto\x12\x13\x62lox.TempSensorMock\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"R\n\x0b\x46luctuation\x12#\n\tamplitude\x18\x01 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x06\x10\x80 0\x01\x12\x1e\n\x06period\x18\x02 \x01(\rB\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x03\x10\xe8\x07\"\xaa\x01\n\x05\x42lock\x12!\n\x05value\x18\x01 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12\x19\n\tconnected\x18\x03 \x01(\x08\x42\x06\x8a\xb5\x18\x02\x30\x01\x12\x1f\n\x07setting\x18\x04 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x01\x10\x80 \x12\x36\n\x0c\x66luctuations\x18\x05 \x03(\x0b\x32 .blox.TempSensorMock.Fluctuation:\n\x8a\xb5\x18\x06\x18\xad\x02J\x01\x02\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14TempSensorMock.proto\x12\x13\x62lox.TempSensorMock\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"V\n\x0b\x46luctuation\x12%\n\tamplitude\x18\x01 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x06\x10\x80 0\x01x\x01\x12 \n\x06period\x18\x02 \x01(\rB\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x03\x10\xe8\x07x\x01\"\xb6\x01\n\x05\x42lock\x12!\n\x05value\x18\x01 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12\x1b\n\tconnected\x18\x03 \x01(\x08\x42\x08\x8a\xb5\x18\x04\x30\x01x\x01\x12!\n\x07setting\x18\x04 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x01\x10\x80 x\x01\x12>\n\x0c\x66luctuations\x18\x05 \x03(\x0b\x32 .blox.TempSensorMock.FluctuationB\x06\x8a\xb5\x18\x02x\x01:\n\x8a\xb5\x18\x06\x18\xad\x02J\x01\x02\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -23,19 +23,21 @@ if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None _FLUCTUATION.fields_by_name['amplitude']._options = None - _FLUCTUATION.fields_by_name['amplitude']._serialized_options = b'\222?\0028 \212\265\030\007\010\006\020\200 0\001' + _FLUCTUATION.fields_by_name['amplitude']._serialized_options = b'\222?\0028 \212\265\030\t\010\006\020\200 0\001x\001' _FLUCTUATION.fields_by_name['period']._options = None - _FLUCTUATION.fields_by_name['period']._serialized_options = b'\222?\0028 \212\265\030\005\010\003\020\350\007' + _FLUCTUATION.fields_by_name['period']._serialized_options = b'\222?\0028 \212\265\030\007\010\003\020\350\007x\001' _BLOCK.fields_by_name['value']._options = None _BLOCK.fields_by_name['value']._serialized_options = b'\222?\0028 \212\265\030\t\010\001\020\200 (\0010\001' _BLOCK.fields_by_name['connected']._options = None - _BLOCK.fields_by_name['connected']._serialized_options = b'\212\265\030\0020\001' + _BLOCK.fields_by_name['connected']._serialized_options = b'\212\265\030\0040\001x\001' _BLOCK.fields_by_name['setting']._options = None - _BLOCK.fields_by_name['setting']._serialized_options = b'\222?\0028 \212\265\030\005\010\001\020\200 ' + _BLOCK.fields_by_name['setting']._serialized_options = b'\222?\0028 \212\265\030\007\010\001\020\200 x\001' + _BLOCK.fields_by_name['fluctuations']._options = None + _BLOCK.fields_by_name['fluctuations']._serialized_options = b'\212\265\030\002x\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\006\030\255\002J\001\002' _globals['_FLUCTUATION']._serialized_start=75 - _globals['_FLUCTUATION']._serialized_end=157 - _globals['_BLOCK']._serialized_start=160 - _globals['_BLOCK']._serialized_end=330 + _globals['_FLUCTUATION']._serialized_end=161 + _globals['_BLOCK']._serialized_start=164 + _globals['_BLOCK']._serialized_end=346 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/TempSensorOneWire_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/TempSensorOneWire_pb2.py index ee7e1fab..0a5d330e 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/TempSensorOneWire_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/TempSensorOneWire_pb2.py @@ -15,7 +15,7 @@ import nanopb_pb2 as nanopb__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17TempSensorOneWire.proto\x12\x16\x62lox.TempSensorOneWire\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\x96\x01\n\x05\x42lock\x12!\n\x05value\x18\x01 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12\x1e\n\x06offset\x18\x03 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x06\x10\x80 \x12\x17\n\x07\x61\x64\x64ress\x18\x04 \x01(\x06\x42\x06\x8a\xb5\x18\x02 \x01\x12$\n\x0coneWireBusId\x18\x05 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\x82\x02(\x01:\x0b\x8a\xb5\x18\x07\x18\xae\x02J\x02\x02\tb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17TempSensorOneWire.proto\x12\x16\x62lox.TempSensorOneWire\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\x9a\x01\n\x05\x42lock\x12!\n\x05value\x18\x01 \x01(\x11\x42\x12\x92?\x02\x38 \x8a\xb5\x18\t\x08\x01\x10\x80 (\x01\x30\x01\x12 \n\x06offset\x18\x03 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x06\x10\x80 x\x01\x12\x19\n\x07\x61\x64\x64ress\x18\x04 \x01(\x06\x42\x08\x8a\xb5\x18\x04 \x01x\x01\x12$\n\x0coneWireBusId\x18\x05 \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\x82\x02(\x01:\x0b\x8a\xb5\x18\x07\x18\xae\x02J\x02\x02\tb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -25,13 +25,13 @@ _BLOCK.fields_by_name['value']._options = None _BLOCK.fields_by_name['value']._serialized_options = b'\222?\0028 \212\265\030\t\010\001\020\200 (\0010\001' _BLOCK.fields_by_name['offset']._options = None - _BLOCK.fields_by_name['offset']._serialized_options = b'\222?\0028 \212\265\030\005\010\006\020\200 ' + _BLOCK.fields_by_name['offset']._serialized_options = b'\222?\0028 \212\265\030\007\010\006\020\200 x\001' _BLOCK.fields_by_name['address']._options = None - _BLOCK.fields_by_name['address']._serialized_options = b'\212\265\030\002 \001' + _BLOCK.fields_by_name['address']._serialized_options = b'\212\265\030\004 \001x\001' _BLOCK.fields_by_name['oneWireBusId']._options = None _BLOCK.fields_by_name['oneWireBusId']._serialized_options = b'\222?\0028\020\212\265\030\005\030\202\002(\001' _BLOCK._options = None _BLOCK._serialized_options = b'\212\265\030\007\030\256\002J\002\002\t' _globals['_BLOCK']._serialized_start=82 - _globals['_BLOCK']._serialized_end=232 + _globals['_BLOCK']._serialized_end=236 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/TouchSettings_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/TouchSettings_pb2.py deleted file mode 100644 index 77cfabeb..00000000 --- a/brewblox_devcon_spark/codec/proto-compiled/TouchSettings_pb2.py +++ /dev/null @@ -1,39 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: TouchSettings.proto -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - -import brewblox_pb2 as brewblox__pb2 -import nanopb_pb2 as nanopb__pb2 - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13TouchSettings.proto\x12\x12\x62lox.TouchSettings\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"\xb6\x01\n\x05\x42lock\x12\x32\n\ncalibrated\x18\x01 \x01(\x0e\x32\x1e.blox.TouchSettings.Calibrated\x12\x16\n\x07xOffset\x18\x02 \x01(\x05\x42\x05\x92?\x02\x38\x10\x12\x16\n\x07yOffset\x18\x03 \x01(\x05\x42\x05\x92?\x02\x38\x10\x12\x1f\n\x10xBitsPerPixelX16\x18\x04 \x01(\rB\x05\x92?\x02\x38\x10\x12\x1f\n\x10yBitsPerPixelX16\x18\x05 \x01(\rB\x05\x92?\x02\x38\x10:\x07\x8a\xb5\x18\x03\x18\xb9\x02*G\n\nCalibrated\x12\x11\n\rCALIBRATED_NO\x10\x00\x12\x12\n\x0e\x43\x41LIBRATED_YES\x10\x01\x12\x12\n\x0e\x43\x41LIBRATED_NEW\x10\x02\x62\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'TouchSettings_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - DESCRIPTOR._options = None - _BLOCK.fields_by_name['xOffset']._options = None - _BLOCK.fields_by_name['xOffset']._serialized_options = b'\222?\0028\020' - _BLOCK.fields_by_name['yOffset']._options = None - _BLOCK.fields_by_name['yOffset']._serialized_options = b'\222?\0028\020' - _BLOCK.fields_by_name['xBitsPerPixelX16']._options = None - _BLOCK.fields_by_name['xBitsPerPixelX16']._serialized_options = b'\222?\0028\020' - _BLOCK.fields_by_name['yBitsPerPixelX16']._options = None - _BLOCK.fields_by_name['yBitsPerPixelX16']._serialized_options = b'\222?\0028\020' - _BLOCK._options = None - _BLOCK._serialized_options = b'\212\265\030\003\030\271\002' - _globals['_CALIBRATED']._serialized_start=258 - _globals['_CALIBRATED']._serialized_end=329 - _globals['_BLOCK']._serialized_start=74 - _globals['_BLOCK']._serialized_end=256 -# @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/Variables_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/Variables_pb2.py index 6694caf9..bf73be09 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/Variables_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/Variables_pb2.py @@ -16,33 +16,37 @@ import IoArray_pb2 as IoArray__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0fVariables.proto\x12\x0e\x62lox.Variables\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\x9b\x02\n\x0cVarContainer\x12\x0f\n\x05\x65mpty\x18\x01 \x01(\x08H\x00\x12-\n\x07\x64igital\x18\n \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateH\x00\x12\x1e\n\x06\x61nalog\x18\x0b \x01(\x11\x42\x0c\x92?\x02\x38 \x8a\xb5\x18\x03\x10\x80 H\x00\x12\x1e\n\x04temp\x18\x14 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x01\x10\x80 H\x00\x12#\n\tdeltaTemp\x18\x15 \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x08\x06\x10\x80 H\x00\x12 \n\ttimestamp\x18\x1e \x01(\rB\x0b\x92?\x02\x38 \x8a\xb5\x18\x02X\x01H\x00\x12\x1f\n\x08\x64uration\x18\x1f \x01(\rB\x0b\x92?\x02\x38 \x8a\xb5\x18\x02\x08\x03H\x00\x12\x1c\n\x04link\x18( \x01(\rB\x0c\x92?\x02\x38\x10\x8a\xb5\x18\x03\x18\xff\x01H\x00\x42\x05\n\x03var\"\x99\x01\n\x05\x42lock\x12\x37\n\tvariables\x18\x01 \x03(\x0b\x32$.blox.Variables.Block.VariablesEntry\x1aN\n\x0eVariablesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12+\n\x05value\x18\x02 \x01(\x0b\x32\x1c.blox.Variables.VarContainer:\x02\x38\x01:\x07\x8a\xb5\x18\x03\x18\xcb\x02\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0fVariables.proto\x12\x0e\x62lox.Variables\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\x1a\rIoArray.proto\"\xaf\x02\n\x0cVarContainer\x12\x0f\n\x05\x65mpty\x18\x01 \x01(\x08H\x00\x12\x35\n\x07\x64igital\x18\n \x01(\x0e\x32\x1a.blox.IoArray.DigitalStateB\x06\x8a\xb5\x18\x02x\x01H\x00\x12 \n\x06\x61nalog\x18\x0b \x01(\x11\x42\x0e\x92?\x02\x38 \x8a\xb5\x18\x05\x10\x80 x\x01H\x00\x12 \n\x04temp\x18\x14 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x01\x10\x80 x\x01H\x00\x12%\n\tdeltaTemp\x18\x15 \x01(\x11\x42\x10\x92?\x02\x38 \x8a\xb5\x18\x07\x08\x06\x10\x80 x\x01H\x00\x12\"\n\ttimestamp\x18\x1e \x01(\rB\r\x92?\x02\x38 \x8a\xb5\x18\x04X\x01x\x01H\x00\x12!\n\x08\x64uration\x18\x1f \x01(\rB\r\x92?\x02\x38 \x8a\xb5\x18\x04\x08\x03x\x01H\x00\x12\x1e\n\x04link\x18( \x01(\rB\x0e\x92?\x02\x38\x10\x8a\xb5\x18\x05\x18\xff\x01x\x01H\x00\x42\x05\n\x03var\"\xa1\x01\n\x05\x42lock\x12?\n\tvariables\x18\x01 \x03(\x0b\x32$.blox.Variables.Block.VariablesEntryB\x06\x8a\xb5\x18\x02x\x01\x1aN\n\x0eVariablesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12+\n\x05value\x18\x02 \x01(\x0b\x32\x1c.blox.Variables.VarContainer:\x02\x38\x01:\x07\x8a\xb5\x18\x03\x18\xcd\x02\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'Variables_pb2', _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None + _VARCONTAINER.fields_by_name['digital']._options = None + _VARCONTAINER.fields_by_name['digital']._serialized_options = b'\212\265\030\002x\001' _VARCONTAINER.fields_by_name['analog']._options = None - _VARCONTAINER.fields_by_name['analog']._serialized_options = b'\222?\0028 \212\265\030\003\020\200 ' + _VARCONTAINER.fields_by_name['analog']._serialized_options = b'\222?\0028 \212\265\030\005\020\200 x\001' _VARCONTAINER.fields_by_name['temp']._options = None - _VARCONTAINER.fields_by_name['temp']._serialized_options = b'\222?\0028 \212\265\030\005\010\001\020\200 ' + _VARCONTAINER.fields_by_name['temp']._serialized_options = b'\222?\0028 \212\265\030\007\010\001\020\200 x\001' _VARCONTAINER.fields_by_name['deltaTemp']._options = None - _VARCONTAINER.fields_by_name['deltaTemp']._serialized_options = b'\222?\0028 \212\265\030\005\010\006\020\200 ' + _VARCONTAINER.fields_by_name['deltaTemp']._serialized_options = b'\222?\0028 \212\265\030\007\010\006\020\200 x\001' _VARCONTAINER.fields_by_name['timestamp']._options = None - _VARCONTAINER.fields_by_name['timestamp']._serialized_options = b'\222?\0028 \212\265\030\002X\001' + _VARCONTAINER.fields_by_name['timestamp']._serialized_options = b'\222?\0028 \212\265\030\004X\001x\001' _VARCONTAINER.fields_by_name['duration']._options = None - _VARCONTAINER.fields_by_name['duration']._serialized_options = b'\222?\0028 \212\265\030\002\010\003' + _VARCONTAINER.fields_by_name['duration']._serialized_options = b'\222?\0028 \212\265\030\004\010\003x\001' _VARCONTAINER.fields_by_name['link']._options = None - _VARCONTAINER.fields_by_name['link']._serialized_options = b'\222?\0028\020\212\265\030\003\030\377\001' + _VARCONTAINER.fields_by_name['link']._serialized_options = b'\222?\0028\020\212\265\030\005\030\377\001x\001' _BLOCK_VARIABLESENTRY._options = None _BLOCK_VARIABLESENTRY._serialized_options = b'8\001' + _BLOCK.fields_by_name['variables']._options = None + _BLOCK.fields_by_name['variables']._serialized_options = b'\212\265\030\002x\001' _BLOCK._options = None - _BLOCK._serialized_options = b'\212\265\030\003\030\313\002' + _BLOCK._serialized_options = b'\212\265\030\003\030\315\002' _globals['_VARCONTAINER']._serialized_start=81 - _globals['_VARCONTAINER']._serialized_end=364 - _globals['_BLOCK']._serialized_start=367 - _globals['_BLOCK']._serialized_end=520 - _globals['_BLOCK_VARIABLESENTRY']._serialized_start=433 - _globals['_BLOCK_VARIABLESENTRY']._serialized_end=511 + _globals['_VARCONTAINER']._serialized_end=384 + _globals['_BLOCK']._serialized_start=387 + _globals['_BLOCK']._serialized_end=548 + _globals['_BLOCK_VARIABLESENTRY']._serialized_start=461 + _globals['_BLOCK_VARIABLESENTRY']._serialized_end=539 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/brewblox_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/brewblox_pb2.py index 1497291f..92916c5d 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/brewblox_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/brewblox_pb2.py @@ -15,7 +15,7 @@ import nanopb_pb2 as nanopb__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0e\x62rewblox.proto\x12\x08\x62rewblox\x1a google/protobuf/descriptor.proto\x1a\x0cnanopb.proto\"|\n\x0bMessageOpts\x12$\n\x07objtype\x18\x03 \x01(\x0e\x32\x13.brewblox.BlockType\x12(\n\x04impl\x18\t \x03(\x0e\x32\x13.brewblox.BlockTypeB\x05\x92?\x02\x10\x05\x12\x16\n\x07subtype\x18\x0b \x01(\rB\x05\x92?\x02\x38\x10:\x05\x92?\x02\x30\x01\"\xa0\x02\n\tFieldOpts\x12 \n\x04unit\x18\x01 \x01(\x0e\x32\x12.brewblox.UnitType\x12\r\n\x05scale\x18\x02 \x01(\r\x12$\n\x07objtype\x18\x03 \x01(\x0e\x32\x13.brewblox.BlockType\x12\r\n\x05hexed\x18\x04 \x01(\x08\x12\x10\n\x08readonly\x18\x05 \x01(\x08\x12\x0e\n\x06logged\x18\x06 \x01(\x08\x12\x0e\n\x06hexstr\x18\x07 \x01(\x08\x12\x0f\n\x07ignored\x18\t \x01(\x08\x12\x10\n\x08\x62itfield\x18\n \x01(\x08\x12\x10\n\x08\x64\x61tetime\x18\x0b \x01(\x08\x12\x13\n\x0bipv4address\x18\x0c \x01(\x08\x12\x14\n\x0comit_if_zero\x18\r \x01(\x08\x12\x14\n\x0cnull_if_zero\x18\x0e \x01(\x08:\x05\x92?\x02\x30\x01*\x8c\x02\n\x08UnitType\x12\n\n\x06NotSet\x10\x00\x12\x0b\n\x07\x43\x65lsius\x10\x01\x12\x12\n\x0eInverseCelsius\x10\x02\x12\n\n\x06Second\x10\x03\x12\n\n\x06Minute\x10\x04\x12\x08\n\x04Hour\x10\x05\x12\x10\n\x0c\x44\x65ltaCelsius\x10\x06\x12\x19\n\x15\x44\x65ltaCelsiusPerSecond\x10\x07\x12\x19\n\x15\x44\x65ltaCelsiusPerMinute\x10\x08\x12\x17\n\x13\x44\x65ltaCelsiusPerHour\x10\t\x12\x1a\n\x16\x44\x65ltaCelsiusMultSecond\x10\n\x12\x1a\n\x16\x44\x65ltaCelsiusMultMinute\x10\x0b\x12\x18\n\x14\x44\x65ltaCelsiusMultHour\x10\x0c*\xc8\n\n\tBlockType\x12\x0b\n\x07Invalid\x10\x00\x12\x19\n\x15ProcessValueInterface\x10\x01\x12\x17\n\x13TempSensorInterface\x10\x02\x12\x1f\n\x1bSetpointSensorPairInterface\x10\x04\x12\x1b\n\x17\x41\x63tuatorAnalogInterface\x10\x05\x12\x1c\n\x18\x41\x63tuatorDigitalInterface\x10\x06\x12\x15\n\x11\x42\x61lancerInterface\x10\x07\x12\x12\n\x0eMutexInterface\x10\x08\x12\x1a\n\x16OneWireDeviceInterface\x10\t\x12\x14\n\x10IoArrayInterface\x10\n\x12\x13\n\x0f\x44S2408Interface\x10\x0b\x12\x17\n\x13OneWireBusInterface\x10\x0c\x12\x15\n\x11IoModuleInterface\x10\r\x12\x1f\n\x1bOneWireDeviceBlockInterface\x10\x0e\x12\x14\n\x10\x45nablerInterface\x10\x0f\x12\x16\n\x12\x43laimableInterface\x10\x10\x12\x15\n\x11IoDriverInterface\x10\x11\x12\x15\n\x11SetpointInterface\x10\x12\x12\x19\n\x15StoredAnalogInterface\x10\x13\x12\x1b\n\x17StoredSetpointInterface\x10\x14\x12\x1a\n\x16StoredDigitalInterface\x10\x15\x12\x1e\n\x1a\x43onstrainedAnalogInterface\x10\x16\x12 \n\x1c\x43onstrainedSetpointInterface\x10\x17\x12\x1f\n\x1b\x43onstrainedDigitalInterface\x10\x18\x12\x1c\n\x18ScanningFactoryInterface\x10\x19\x12\x1c\n\x18I2CDiscoverableInterface\x10\x1a\x12\x14\n\x10\x44igitalInterface\x10\x1b\x12\x08\n\x03\x41ny\x10\xff\x01\x12\x0c\n\x07SysInfo\x10\x80\x02\x12\n\n\x05Ticks\x10\x81\x02\x12\x0f\n\nOneWireBus\x10\x82\x02\x12\x0e\n\tBoardPins\x10\x83\x02\x12\x13\n\x0eTempSensorMock\x10\xad\x02\x12\x16\n\x11TempSensorOneWire\x10\xae\x02\x12\x17\n\x12SetpointSensorPair\x10\xaf\x02\x12\x08\n\x03Pid\x10\xb0\x02\x12\x17\n\x12\x41\x63tuatorAnalogMock\x10\xb1\x02\x12\x10\n\x0b\x41\x63tuatorPin\x10\xb2\x02\x12\x10\n\x0b\x41\x63tuatorPwm\x10\xb3\x02\x12\x13\n\x0e\x41\x63tuatorOffset\x10\xb4\x02\x12\r\n\x08\x42\x61lancer\x10\xb5\x02\x12\n\n\x05Mutex\x10\xb6\x02\x12\x14\n\x0fSetpointProfile\x10\xb7\x02\x12\x11\n\x0cWiFiSettings\x10\xb8\x02\x12\x12\n\rTouchSettings\x10\xb9\x02\x12\x14\n\x0f\x44isplaySettings\x10\xba\x02\x12\x0b\n\x06\x44S2413\x10\xbb\x02\x12\x14\n\x0f\x41\x63tuatorOneWire\x10\xbc\x02\x12\x0b\n\x06\x44S2408\x10\xbd\x02\x12\x14\n\x0f\x44igitalActuator\x10\xbe\x02\x12\x0f\n\nSpark3Pins\x10\xbf\x02\x12\x0f\n\nSpark2Pins\x10\xc0\x02\x12\x0f\n\nMotorValve\x10\xc1\x02\x12\x12\n\rActuatorLogic\x10\xc2\x02\x12\r\n\x08MockPins\x10\xc3\x02\x12\x14\n\x0fTempSensorCombi\x10\xc4\x02\x12\x16\n\x11OneWireGpioModule\x10\xc5\x02\x12\r\n\x08Sequence\x10\xc6\x02\x12\x17\n\x12TempSensorExternal\x10\xc8\x02\x12\x0c\n\x07\x46\x61stPwm\x10\xc9\x02\x12\x11\n\x0c\x44igitalInput\x10\xca\x02\x12\x0e\n\tVariables\x10\xcb\x02:J\n\x05\x66ield\x12\x1d.google.protobuf.FieldOptions\x18\xd1\x86\x03 \x01(\x0b\x32\x13.brewblox.FieldOptsB\x05\x92?\x02\x18\x03:L\n\x03msg\x12\x1f.google.protobuf.MessageOptions\x18\xd1\x86\x03 \x01(\x0b\x32\x15.brewblox.MessageOptsB\x05\x92?\x02\x18\x03\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0e\x62rewblox.proto\x12\x08\x62rewblox\x1a google/protobuf/descriptor.proto\x1a\x0cnanopb.proto\"|\n\x0bMessageOpts\x12$\n\x07objtype\x18\x03 \x01(\x0e\x32\x13.brewblox.BlockType\x12(\n\x04impl\x18\t \x03(\x0e\x32\x13.brewblox.BlockTypeB\x05\x92?\x02\x10\x05\x12\x16\n\x07subtype\x18\x0b \x01(\rB\x05\x92?\x02\x38\x10:\x05\x92?\x02\x30\x01\"\xb0\x02\n\tFieldOpts\x12 \n\x04unit\x18\x01 \x01(\x0e\x32\x12.brewblox.UnitType\x12\r\n\x05scale\x18\x02 \x01(\r\x12$\n\x07objtype\x18\x03 \x01(\x0e\x32\x13.brewblox.BlockType\x12\r\n\x05hexed\x18\x04 \x01(\x08\x12\x10\n\x08readonly\x18\x05 \x01(\x08\x12\x0e\n\x06logged\x18\x06 \x01(\x08\x12\x0e\n\x06stored\x18\x0f \x01(\x08\x12\x0e\n\x06hexstr\x18\x07 \x01(\x08\x12\x0f\n\x07ignored\x18\t \x01(\x08\x12\x10\n\x08\x62itfield\x18\n \x01(\x08\x12\x10\n\x08\x64\x61tetime\x18\x0b \x01(\x08\x12\x13\n\x0bipv4address\x18\x0c \x01(\x08\x12\x14\n\x0comit_if_zero\x18\r \x01(\x08\x12\x14\n\x0cnull_if_zero\x18\x0e \x01(\x08:\x05\x92?\x02\x30\x01*\xad\x02\n\x08UnitType\x12\n\n\x06NotSet\x10\x00\x12\x0b\n\x07\x43\x65lsius\x10\x01\x12\x12\n\x0eInverseCelsius\x10\x02\x12\n\n\x06Second\x10\x03\x12\n\n\x06Minute\x10\x04\x12\x08\n\x04Hour\x10\x05\x12\x10\n\x0c\x44\x65ltaCelsius\x10\x06\x12\x19\n\x15\x44\x65ltaCelsiusPerSecond\x10\x07\x12\x19\n\x15\x44\x65ltaCelsiusPerMinute\x10\x08\x12\x17\n\x13\x44\x65ltaCelsiusPerHour\x10\t\x12\x1a\n\x16\x44\x65ltaCelsiusMultSecond\x10\n\x12\x1a\n\x16\x44\x65ltaCelsiusMultMinute\x10\x0b\x12\x18\n\x14\x44\x65ltaCelsiusMultHour\x10\x0c\x12\x0c\n\x08MilliBar\x10\r\x12\x08\n\x04Volt\x10\x0e\x12\x07\n\x03Ohm\x10\x0f*\x96\x0b\n\tBlockType\x12\x0b\n\x07Invalid\x10\x00\x12\x19\n\x15ProcessValueInterface\x10\x01\x12\x17\n\x13TempSensorInterface\x10\x02\x12\x1f\n\x1bSetpointSensorPairInterface\x10\x04\x12\x1b\n\x17\x41\x63tuatorAnalogInterface\x10\x05\x12\x1c\n\x18\x41\x63tuatorDigitalInterface\x10\x06\x12\x15\n\x11\x42\x61lancerInterface\x10\x07\x12\x12\n\x0eMutexInterface\x10\x08\x12\x1a\n\x16OneWireDeviceInterface\x10\t\x12\x14\n\x10IoArrayInterface\x10\n\x12\x13\n\x0f\x44S2408Interface\x10\x0b\x12\x17\n\x13OneWireBusInterface\x10\x0c\x12\x15\n\x11IoModuleInterface\x10\r\x12\x1f\n\x1bOneWireDeviceBlockInterface\x10\x0e\x12\x14\n\x10\x45nablerInterface\x10\x0f\x12\x16\n\x12\x43laimableInterface\x10\x10\x12\x15\n\x11IoDriverInterface\x10\x11\x12\x15\n\x11SetpointInterface\x10\x12\x12\x19\n\x15StoredAnalogInterface\x10\x13\x12\x1b\n\x17StoredSetpointInterface\x10\x14\x12\x1a\n\x16StoredDigitalInterface\x10\x15\x12\x1e\n\x1a\x43onstrainedAnalogInterface\x10\x16\x12 \n\x1c\x43onstrainedSetpointInterface\x10\x17\x12\x1f\n\x1b\x43onstrainedDigitalInterface\x10\x18\x12\x1c\n\x18ScanningFactoryInterface\x10\x19\x12\x1c\n\x18I2CDiscoverableInterface\x10\x1a\x12\x14\n\x10\x44igitalInterface\x10\x1b\x12\x19\n\x15\x41nalogModuleInterface\x10\x1c\x12\x08\n\x03\x41ny\x10\xff\x01\x12\x0c\n\x07SysInfo\x10\x80\x02\x12\n\n\x05Ticks\x10\x81\x02\x12\x0f\n\nOneWireBus\x10\x82\x02\x12\x0e\n\tBoardPins\x10\x83\x02\x12\x13\n\x0eTempSensorMock\x10\xad\x02\x12\x16\n\x11TempSensorOneWire\x10\xae\x02\x12\x17\n\x12SetpointSensorPair\x10\xaf\x02\x12\x08\n\x03Pid\x10\xb0\x02\x12\x17\n\x12\x41\x63tuatorAnalogMock\x10\xb1\x02\x12\x10\n\x0b\x41\x63tuatorPin\x10\xb2\x02\x12\x10\n\x0b\x41\x63tuatorPwm\x10\xb3\x02\x12\x13\n\x0e\x41\x63tuatorOffset\x10\xb4\x02\x12\r\n\x08\x42\x61lancer\x10\xb5\x02\x12\n\n\x05Mutex\x10\xb6\x02\x12\x14\n\x0fSetpointProfile\x10\xb7\x02\x12\x11\n\x0cWiFiSettings\x10\xb8\x02\x12\x12\n\rTouchSettings\x10\xb9\x02\x12\x14\n\x0f\x44isplaySettings\x10\xba\x02\x12\x0b\n\x06\x44S2413\x10\xbb\x02\x12\x14\n\x0f\x41\x63tuatorOneWire\x10\xbc\x02\x12\x0b\n\x06\x44S2408\x10\xbd\x02\x12\x14\n\x0f\x44igitalActuator\x10\xbe\x02\x12\x0f\n\nSpark3Pins\x10\xbf\x02\x12\x0f\n\nSpark2Pins\x10\xc0\x02\x12\x0f\n\nMotorValve\x10\xc1\x02\x12\x12\n\rActuatorLogic\x10\xc2\x02\x12\r\n\x08MockPins\x10\xc3\x02\x12\x14\n\x0fTempSensorCombi\x10\xc4\x02\x12\x16\n\x11OneWireGpioModule\x10\xc5\x02\x12\r\n\x08Sequence\x10\xc6\x02\x12\x17\n\x12TempSensorExternal\x10\xc8\x02\x12\x0c\n\x07\x46\x61stPwm\x10\xc9\x02\x12\x11\n\x0c\x44igitalInput\x10\xca\x02\x12\x1a\n\x15PrecisionAnalogModule\x10\xcb\x02\x12\x15\n\x10TempSensorAnalog\x10\xcc\x02\x12\x0e\n\tVariables\x10\xcd\x02:J\n\x05\x66ield\x12\x1d.google.protobuf.FieldOptions\x18\xd1\x86\x03 \x01(\x0b\x32\x13.brewblox.FieldOptsB\x05\x92?\x02\x18\x03:L\n\x03msg\x12\x1f.google.protobuf.MessageOptions\x18\xd1\x86\x03 \x01(\x0b\x32\x15.brewblox.MessageOptsB\x05\x92?\x02\x18\x03\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -34,12 +34,12 @@ _MESSAGEOPTS._serialized_options = b'\222?\0020\001' _FIELDOPTS._options = None _FIELDOPTS._serialized_options = b'\222?\0020\001' - _globals['_UNITTYPE']._serialized_start=494 - _globals['_UNITTYPE']._serialized_end=762 - _globals['_BLOCKTYPE']._serialized_start=765 - _globals['_BLOCKTYPE']._serialized_end=2117 + _globals['_UNITTYPE']._serialized_start=510 + _globals['_UNITTYPE']._serialized_end=811 + _globals['_BLOCKTYPE']._serialized_start=814 + _globals['_BLOCKTYPE']._serialized_end=2244 _globals['_MESSAGEOPTS']._serialized_start=76 _globals['_MESSAGEOPTS']._serialized_end=200 _globals['_FIELDOPTS']._serialized_start=203 - _globals['_FIELDOPTS']._serialized_end=491 + _globals['_FIELDOPTS']._serialized_end=507 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/codec/proto-compiled/command_pb2.py b/brewblox_devcon_spark/codec/proto-compiled/command_pb2.py index fb9efcde..8f68dc00 100644 --- a/brewblox_devcon_spark/codec/proto-compiled/command_pb2.py +++ b/brewblox_devcon_spark/codec/proto-compiled/command_pb2.py @@ -15,7 +15,7 @@ import nanopb_pb2 as nanopb__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\rcommand.proto\x12\x07\x63ommand\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"%\n\tMaskField\x12\x18\n\x07\x61\x64\x64ress\x18\x02 \x03(\rB\x07\x92?\x04\x10\x04\x38\x10\"\xbf\x01\n\x07Payload\x12\x16\n\x07\x62lockId\x18\x01 \x01(\rB\x05\x92?\x02\x38\x10\x12&\n\tblockType\x18\x02 \x01(\x0e\x32\x13.brewblox.BlockType\x12\x16\n\x07subtype\x18\x03 \x01(\rB\x05\x92?\x02\x38\x10\x12\x0f\n\x07\x63ontent\x18\x04 \x01(\t\x12#\n\x08maskMode\x18\x06 \x01(\x0e\x32\x11.command.MaskMode\x12&\n\nmaskFields\x18\x07 \x03(\x0b\x32\x12.command.MaskField\"\\\n\x07Request\x12\r\n\x05msgId\x18\x01 \x01(\r\x12\x1f\n\x06opcode\x18\x02 \x01(\x0e\x32\x0f.command.Opcode\x12!\n\x07payload\x18\x03 \x01(\x0b\x32\x10.command.Payload\"_\n\x08Response\x12\r\n\x05msgId\x18\x01 \x01(\r\x12!\n\x05\x65rror\x18\x02 \x01(\x0e\x32\x12.command.ErrorCode\x12!\n\x07payload\x18\x03 \x03(\x0b\x32\x10.command.Payload*\xbc\x02\n\x06Opcode\x12\x08\n\x04NONE\x10\x00\x12\x0b\n\x07VERSION\x10\x01\x12\x0e\n\nBLOCK_READ\x10\n\x12\x12\n\x0e\x42LOCK_READ_ALL\x10\x0b\x12\x0f\n\x0b\x42LOCK_WRITE\x10\x0c\x12\x10\n\x0c\x42LOCK_CREATE\x10\r\x12\x10\n\x0c\x42LOCK_DELETE\x10\x0e\x12\x12\n\x0e\x42LOCK_DISCOVER\x10\x0f\x12\x15\n\x11\x42LOCK_STORED_READ\x10\x10\x12\x19\n\x15\x42LOCK_STORED_READ_ALL\x10\x11\x12\x10\n\x0cSTORAGE_READ\x10\x14\x12\x14\n\x10STORAGE_READ_ALL\x10\x15\x12\n\n\x06REBOOT\x10\x1e\x12\x10\n\x0c\x43LEAR_BLOCKS\x10\x1f\x12\x0e\n\nCLEAR_WIFI\x10 \x12\x11\n\rFACTORY_RESET\x10!\x12\x13\n\x0f\x46IRMWARE_UPDATE\x10(*\xed\x05\n\tErrorCode\x12\x06\n\x02OK\x10\x00\x12\x11\n\rUNKNOWN_ERROR\x10\x01\x12\x12\n\x0eINVALID_OPCODE\x10\x02\x12\x15\n\x11INSUFFICIENT_HEAP\x10\x04\x12\x18\n\x14INSUFFICIENT_STORAGE\x10\x05\x12\x11\n\rNETWORK_ERROR\x10\n\x12\x16\n\x12NETWORK_READ_ERROR\x10\x0b\x12\x1a\n\x16NETWORK_DECODING_ERROR\x10\x0c\x12\x17\n\x13NETWORK_WRITE_ERROR\x10\r\x12\x1a\n\x16NETWORK_ENCODING_ERROR\x10\x0e\x12\x11\n\rSTORAGE_ERROR\x10\x14\x12\x16\n\x12STORAGE_READ_ERROR\x10\x15\x12\x1a\n\x16STORAGE_DECODING_ERROR\x10\x16\x12\x15\n\x11STORAGE_CRC_ERROR\x10\x17\x12\x17\n\x13STORAGE_WRITE_ERROR\x10\x18\x12\x1a\n\x16STORAGE_ENCODING_ERROR\x10\x19\x12\x16\n\x12\x42LOCK_NOT_WRITABLE\x10\x1e\x12\x16\n\x12\x42LOCK_NOT_READABLE\x10\x1f\x12\x17\n\x13\x42LOCK_NOT_CREATABLE\x10 \x12\x17\n\x13\x42LOCK_NOT_DELETABLE\x10!\x12\x11\n\rINVALID_BLOCK\x10(\x12\x14\n\x10INVALID_BLOCK_ID\x10)\x12\x16\n\x12INVALID_BLOCK_TYPE\x10*\x12\x19\n\x15INVALID_BLOCK_SUBTYPE\x10+\x12\x19\n\x15INVALID_BLOCK_CONTENT\x10,\x12\x18\n\x14INVALID_STORED_BLOCK\x10\x32\x12\x1b\n\x17INVALID_STORED_BLOCK_ID\x10\x33\x12\x1d\n\x19INVALID_STORED_BLOCK_TYPE\x10\x34\x12 \n\x1cINVALID_STORED_BLOCK_SUBTYPE\x10\x35\x12 \n\x1cINVALID_STORED_BLOCK_CONTENT\x10\x36*5\n\x08MaskMode\x12\x0b\n\x07NO_MASK\x10\x00\x12\r\n\tINCLUSIVE\x10\x01\x12\r\n\tEXCLUSIVE\x10\x02\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\rcommand.proto\x12\x07\x63ommand\x1a\x0e\x62rewblox.proto\x1a\x0cnanopb.proto\"%\n\tMaskField\x12\x18\n\x07\x61\x64\x64ress\x18\x02 \x03(\rB\x07\x92?\x04\x10\x04\x38\x10\"\xbf\x01\n\x07Payload\x12\x16\n\x07\x62lockId\x18\x01 \x01(\rB\x05\x92?\x02\x38\x10\x12&\n\tblockType\x18\x02 \x01(\x0e\x32\x13.brewblox.BlockType\x12\x16\n\x07subtype\x18\x03 \x01(\rB\x05\x92?\x02\x38\x10\x12\x0f\n\x07\x63ontent\x18\x04 \x01(\t\x12#\n\x08maskMode\x18\x06 \x01(\x0e\x32\x11.command.MaskMode\x12&\n\nmaskFields\x18\x07 \x03(\x0b\x32\x12.command.MaskField\"}\n\x07Request\x12\r\n\x05msgId\x18\x01 \x01(\x05\x12\x1f\n\x06opcode\x18\x02 \x01(\x0e\x32\x0f.command.Opcode\x12!\n\x07payload\x18\x03 \x01(\x0b\x32\x10.command.Payload\x12\x1f\n\x04mode\x18\x04 \x01(\x0e\x32\x11.command.ReadMode\"\x80\x01\n\x08Response\x12\r\n\x05msgId\x18\x01 \x01(\x05\x12!\n\x05\x65rror\x18\x02 \x01(\x0e\x32\x12.command.ErrorCode\x12!\n\x07payload\x18\x03 \x03(\x0b\x32\x10.command.Payload\x12\x1f\n\x04mode\x18\x04 \x01(\x0e\x32\x11.command.ReadMode*\x8a\x02\n\x06Opcode\x12\x08\n\x04NONE\x10\x00\x12\x0b\n\x07VERSION\x10\x01\x12\x0e\n\nBLOCK_READ\x10\n\x12\x12\n\x0e\x42LOCK_READ_ALL\x10\x0b\x12\x0f\n\x0b\x42LOCK_WRITE\x10\x0c\x12\x10\n\x0c\x42LOCK_CREATE\x10\r\x12\x10\n\x0c\x42LOCK_DELETE\x10\x0e\x12\x12\n\x0e\x42LOCK_DISCOVER\x10\x0f\x12\x10\n\x0cSTORAGE_READ\x10\x14\x12\x14\n\x10STORAGE_READ_ALL\x10\x15\x12\n\n\x06REBOOT\x10\x1e\x12\x10\n\x0c\x43LEAR_BLOCKS\x10\x1f\x12\x0e\n\nCLEAR_WIFI\x10 \x12\x11\n\rFACTORY_RESET\x10!\x12\x13\n\x0f\x46IRMWARE_UPDATE\x10(*\xed\x05\n\tErrorCode\x12\x06\n\x02OK\x10\x00\x12\x11\n\rUNKNOWN_ERROR\x10\x01\x12\x12\n\x0eINVALID_OPCODE\x10\x02\x12\x15\n\x11INSUFFICIENT_HEAP\x10\x04\x12\x18\n\x14INSUFFICIENT_STORAGE\x10\x05\x12\x11\n\rNETWORK_ERROR\x10\n\x12\x16\n\x12NETWORK_READ_ERROR\x10\x0b\x12\x1a\n\x16NETWORK_DECODING_ERROR\x10\x0c\x12\x17\n\x13NETWORK_WRITE_ERROR\x10\r\x12\x1a\n\x16NETWORK_ENCODING_ERROR\x10\x0e\x12\x11\n\rSTORAGE_ERROR\x10\x14\x12\x16\n\x12STORAGE_READ_ERROR\x10\x15\x12\x1a\n\x16STORAGE_DECODING_ERROR\x10\x16\x12\x15\n\x11STORAGE_CRC_ERROR\x10\x17\x12\x17\n\x13STORAGE_WRITE_ERROR\x10\x18\x12\x1a\n\x16STORAGE_ENCODING_ERROR\x10\x19\x12\x16\n\x12\x42LOCK_NOT_WRITABLE\x10\x1e\x12\x16\n\x12\x42LOCK_NOT_READABLE\x10\x1f\x12\x17\n\x13\x42LOCK_NOT_CREATABLE\x10 \x12\x17\n\x13\x42LOCK_NOT_DELETABLE\x10!\x12\x11\n\rINVALID_BLOCK\x10(\x12\x14\n\x10INVALID_BLOCK_ID\x10)\x12\x16\n\x12INVALID_BLOCK_TYPE\x10*\x12\x19\n\x15INVALID_BLOCK_SUBTYPE\x10+\x12\x19\n\x15INVALID_BLOCK_CONTENT\x10,\x12\x18\n\x14INVALID_STORED_BLOCK\x10\x32\x12\x1b\n\x17INVALID_STORED_BLOCK_ID\x10\x33\x12\x1d\n\x19INVALID_STORED_BLOCK_TYPE\x10\x34\x12 \n\x1cINVALID_STORED_BLOCK_SUBTYPE\x10\x35\x12 \n\x1cINVALID_STORED_BLOCK_CONTENT\x10\x36*5\n\x08MaskMode\x12\x0b\n\x07NO_MASK\x10\x00\x12\r\n\tINCLUSIVE\x10\x01\x12\r\n\tEXCLUSIVE\x10\x02*/\n\x08ReadMode\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\n\n\x06STORED\x10\x01\x12\n\n\x06LOGGED\x10\x02\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -28,18 +28,20 @@ _PAYLOAD.fields_by_name['blockId']._serialized_options = b'\222?\0028\020' _PAYLOAD.fields_by_name['subtype']._options = None _PAYLOAD.fields_by_name['subtype']._serialized_options = b'\222?\0028\020' - _globals['_OPCODE']._serialized_start=481 - _globals['_OPCODE']._serialized_end=797 - _globals['_ERRORCODE']._serialized_start=800 - _globals['_ERRORCODE']._serialized_end=1549 - _globals['_MASKMODE']._serialized_start=1551 - _globals['_MASKMODE']._serialized_end=1604 + _globals['_OPCODE']._serialized_start=548 + _globals['_OPCODE']._serialized_end=814 + _globals['_ERRORCODE']._serialized_start=817 + _globals['_ERRORCODE']._serialized_end=1566 + _globals['_MASKMODE']._serialized_start=1568 + _globals['_MASKMODE']._serialized_end=1621 + _globals['_READMODE']._serialized_start=1623 + _globals['_READMODE']._serialized_end=1670 _globals['_MASKFIELD']._serialized_start=56 _globals['_MASKFIELD']._serialized_end=93 _globals['_PAYLOAD']._serialized_start=96 _globals['_PAYLOAD']._serialized_end=287 _globals['_REQUEST']._serialized_start=289 - _globals['_REQUEST']._serialized_end=381 - _globals['_RESPONSE']._serialized_start=383 - _globals['_RESPONSE']._serialized_end=478 + _globals['_REQUEST']._serialized_end=414 + _globals['_RESPONSE']._serialized_start=417 + _globals['_RESPONSE']._serialized_end=545 # @@protoc_insertion_point(module_scope) diff --git a/brewblox_devcon_spark/command.py b/brewblox_devcon_spark/command.py index 8a48995e..6fa5282b 100644 --- a/brewblox_devcon_spark/command.py +++ b/brewblox_devcon_spark/command.py @@ -8,12 +8,11 @@ from contextvars import ContextVar from . import codec, connection, exceptions, state_machine, utils -from .codec.opts import DecodeOpts from .models import (ControllerDescription, DecodedPayload, DeviceDescription, EncodedPayload, ErrorCode, FirmwareBlock, FirmwareBlockIdentity, FirmwareDescription, HandshakeMessage, IntermediateRequest, - IntermediateResponse, MaskMode, Opcode) + IntermediateResponse, MaskMode, Opcode, ReadMode) WELCOME_PREFIX = '!BREWBLOX' HANDSHAKE_KEYS = [ @@ -35,13 +34,6 @@ class CboxCommander: - default_decode_opts = codec.DecodeOpts() - stored_decode_opts = codec.DecodeOpts(enums=codec.ProtoEnumOpt.INT) - logged_decode_opts = codec.DecodeOpts(enums=codec.ProtoEnumOpt.INT, - filter=codec.FilterOpt.LOGGED, - metadata=codec.MetadataOpt.POSTFIX, - dates=codec.DateFormatOpt.SECONDS) - def __init__(self): self.config = utils.get_config() self.state = state_machine.CV.get() @@ -63,7 +55,7 @@ def _next_id(self): def _to_payload(self, block: FirmwareBlock, /, identity_only=False, - patch=False + patch=False, ) -> EncodedPayload: if block.type: (blockType, subtype) = codec.split_type(block.type) @@ -79,8 +71,11 @@ def _to_payload(self, return self.codec.encode_payload(payload) - def _to_block(self, payload: EncodedPayload, opts: DecodeOpts) -> FirmwareBlock: - payload = self.codec.decode_payload(payload, opts=opts) + def _to_block(self, + payload: EncodedPayload, /, + mode: ReadMode = ReadMode.DEFAULT, + ) -> FirmwareBlock: + payload = self.codec.decode_payload(payload, mode=mode) return FirmwareBlock( nid=payload.blockId, type=codec.join_type(payload.blockType, payload.subtype), @@ -128,14 +123,16 @@ async def _on_response(self, msg: str): LOGGER.error(f'Error parsing message `{msg}` : {utils.strex(ex)}') async def _execute(self, - opcode: Opcode, - payload: EncodedPayload | None, + opcode: Opcode, /, + payload: EncodedPayload | None = None, + mode: ReadMode = ReadMode.DEFAULT, ) -> list[EncodedPayload]: msg_id = self._next_id() request = IntermediateRequest( msgId=msg_id, opcode=opcode, + mode=mode, payload=payload ) @@ -167,139 +164,69 @@ async def validate(self, block: FirmwareBlock) -> FirmwareBlock: request = IntermediateRequest( msgId=0, opcode=Opcode.NONE, + mode=ReadMode.DEFAULT, payload=self._to_payload(block), ) self.codec.encode_request(request) return block async def noop(self) -> None: - await self._execute(Opcode.NONE, None) + await self._execute(Opcode.NONE) async def version(self) -> None: - await self._execute(Opcode.VERSION, None) - - async def read_block(self, ident: FirmwareBlockIdentity) -> FirmwareBlock: - payloads = await self._execute( - Opcode.BLOCK_READ, - self._to_payload(ident, identity_only=True), - ) - return self._to_block(payloads[0], self.default_decode_opts) - - async def read_logged_block(self, ident: FirmwareBlockIdentity) -> FirmwareBlock: - payloads = await self._execute( - Opcode.BLOCK_READ, - self._to_payload(ident, identity_only=True), - ) - return self._to_block(payloads[0], self.logged_decode_opts) - - async def read_all_blocks(self) -> list[FirmwareBlock]: - payloads = await self._execute( - Opcode.BLOCK_READ_ALL, - None, - ) - return [self._to_block(v, self.default_decode_opts) - for v in payloads] + await self._execute(Opcode.VERSION) - async def read_all_logged_blocks(self) -> list[FirmwareBlock]: - payloads = await self._execute( - Opcode.BLOCK_READ_ALL, - None, - ) - return [self._to_block(v, self.logged_decode_opts) - for v in payloads] + async def read_block(self, + ident: FirmwareBlockIdentity, + mode: ReadMode = ReadMode.DEFAULT) -> FirmwareBlock: + payloads = await self._execute(Opcode.BLOCK_READ, + mode=mode, + payload=self._to_payload(ident, identity_only=True)) + return self._to_block(payloads[0], mode=mode) - async def read_all_broadcast_blocks(self) -> tuple[list[FirmwareBlock], list[FirmwareBlock]]: - payloads = await self._execute( - Opcode.BLOCK_READ_ALL, - None, - ) - default_retv = [self._to_block(v, self.default_decode_opts) - for v in payloads] - logged_retv = [self._to_block(v, self.logged_decode_opts) - for v in payloads] - return (default_retv, logged_retv) + async def read_all_blocks(self, mode: ReadMode = ReadMode.DEFAULT) -> list[FirmwareBlock]: + payloads = await self._execute(Opcode.BLOCK_READ_ALL, + mode=mode) + return [self._to_block(v, mode=mode) for v in payloads] async def write_block(self, block: FirmwareBlock) -> FirmwareBlock: - payloads = await self._execute( - Opcode.BLOCK_WRITE, - self._to_payload(block), - ) - return self._to_block(payloads[0], self.default_decode_opts) + payloads = await self._execute(Opcode.BLOCK_WRITE, + payload=self._to_payload(block)) + return self._to_block(payloads[0]) async def patch_block(self, block: FirmwareBlock) -> FirmwareBlock: - payloads = await self._execute( - Opcode.BLOCK_WRITE, - self._to_payload(block, patch=True), - ) - return self._to_block(payloads[0], self.default_decode_opts) + payloads = await self._execute(Opcode.BLOCK_WRITE, + payload=self._to_payload(block, patch=True)) + return self._to_block(payloads[0]) async def create_block(self, block: FirmwareBlock) -> FirmwareBlock: - payloads = await self._execute( - Opcode.BLOCK_CREATE, - self._to_payload(block, patch=True), - ) - return self._to_block(payloads[0], self.default_decode_opts) + payloads = await self._execute(Opcode.BLOCK_CREATE, + payload=self._to_payload(block, patch=True)) + return self._to_block(payloads[0]) async def delete_block(self, ident: FirmwareBlockIdentity) -> None: - await self._execute( - Opcode.BLOCK_DELETE, - self._to_payload(ident, identity_only=True), - ) + await self._execute(Opcode.BLOCK_DELETE, + payload=self._to_payload(ident, identity_only=True)) async def discover_blocks(self) -> list[FirmwareBlock]: - payloads = await self._execute( - Opcode.BLOCK_DISCOVER, - None, - ) - return [self._to_block(v, self.default_decode_opts) - for v in payloads] - - async def read_stored_block(self, ident: FirmwareBlockIdentity) -> FirmwareBlock: - payloads = await self._execute( - Opcode.BLOCK_STORED_READ, - self._to_payload(ident, identity_only=True), - ) - return self._to_block(payloads[0], self.stored_decode_opts) - - async def read_all_stored_blocks(self) -> list[FirmwareBlock]: - payloads = await self._execute( - Opcode.BLOCK_STORED_READ_ALL, - None, - ) - return [self._to_block(v, self.stored_decode_opts) - for v in payloads] + payloads = await self._execute(Opcode.BLOCK_DISCOVER) + return [self._to_block(v) for v in payloads] async def reboot(self) -> None: - await self._execute( - Opcode.REBOOT, - None, - ) + await self._execute(Opcode.REBOOT) async def clear_blocks(self) -> list[FirmwareBlock]: - payloads = await self._execute( - Opcode.CLEAR_BLOCKS, - None, - ) - return [self._to_block(v, self.default_decode_opts) - for v in payloads] + payloads = await self._execute(Opcode.CLEAR_BLOCKS) + return [self._to_block(v) for v in payloads] async def clear_wifi(self) -> None: - await self._execute( - Opcode.CLEAR_WIFI, - None, - ) + await self._execute(Opcode.CLEAR_WIFI) async def factory_reset(self) -> None: - await self._execute( - Opcode.FACTORY_RESET, - None, - ) + await self._execute(Opcode.FACTORY_RESET) async def firmware_update(self) -> None: - await self._execute( - Opcode.FIRMWARE_UPDATE, - None, - ) + await self._execute(Opcode.FIRMWARE_UPDATE) async def reset_connection(self) -> None: await self.conn.reset() diff --git a/brewblox_devcon_spark/connection/mock_connection.py b/brewblox_devcon_spark/connection/mock_connection.py index 3c0396e3..23841e94 100644 --- a/brewblox_devcon_spark/connection/mock_connection.py +++ b/brewblox_devcon_spark/connection/mock_connection.py @@ -15,7 +15,7 @@ from ..codec import bloxfield from ..models import (DecodedPayload, EncodedPayload, ErrorCode, FirmwareBlock, IntermediateRequest, IntermediateResponse, Opcode, - ResetData, ResetReason) + ReadMode, ResetData, ResetReason) from .connection_impl import ConnectionCallbacks, ConnectionImplBase LOGGER = logging.getLogger(__name__) @@ -48,11 +48,6 @@ def default_blocks() -> dict[int, FirmwareBlock]: type='WiFiSettings', data={}, ), - FirmwareBlock( - nid=const.TOUCH_SETTINGS_NID, - type='TouchSettings', - data={}, - ), FirmwareBlock( nid=const.DISPLAY_SETTINGS_NID, type='DisplaySettings', @@ -82,11 +77,11 @@ def __init__(self, super().__init__('MOCK', device_id, callbacks) self._start_time = datetime.now() - self._codec = codec.Codec(strip_readonly=False) + self._codec = codec.Codec(filter_values=False) self._id_counter = count(start=const.USER_NID_START) self._blocks: dict[int, FirmwareBlock] = default_blocks() - def _to_payload(self, block: FirmwareBlock) -> EncodedPayload: + def _to_payload(self, block: FirmwareBlock, mode: ReadMode) -> EncodedPayload: (blockType, subtype) = codec.split_type(block.type) return self._codec.encode_payload(DecodedPayload( blockId=block.nid, @@ -153,7 +148,8 @@ async def handle_command(self, response = IntermediateResponse( msgId=request.msgId, error=ErrorCode.OK, - payload=[] + mode=request.mode, + payload=[], ) if NEXT_ERROR: @@ -171,21 +167,19 @@ async def handle_command(self, elif request.opcode in [ Opcode.BLOCK_READ, - Opcode.BLOCK_STORED_READ, Opcode.STORAGE_READ, ]: block = self._blocks.get(request.payload.blockId) if not block: response.error = ErrorCode.INVALID_BLOCK_ID else: - response.payload = [self._to_payload(block)] + response.payload = [self._to_payload(block, request.mode)] elif request.opcode in [ Opcode.BLOCK_READ_ALL, - Opcode.BLOCK_STORED_READ_ALL, Opcode.STORAGE_READ_ALL, ]: - response.payload = [self._to_payload(block) + response.payload = [self._to_payload(block, request.mode) for block in self._blocks.values()] elif request.opcode == Opcode.BLOCK_WRITE: @@ -199,7 +193,7 @@ async def handle_command(self, else: src = self._to_block(request.payload) self._merge_blocks(block, src) - response.payload = [self._to_payload(block)] + response.payload = [self._to_payload(block, request.mode)] elif request.opcode == Opcode.BLOCK_CREATE: nid = request.payload.blockId @@ -216,7 +210,7 @@ async def handle_command(self, block = self._default_block(nid, argblock.type) self._merge_blocks(block, argblock) self._blocks[nid] = block - response.payload = [self._to_payload(block)] + response.payload = [self._to_payload(block, request.mode)] elif request.opcode == Opcode.BLOCK_DELETE: nid = request.payload.blockId @@ -231,14 +225,14 @@ async def handle_command(self, elif request.opcode == Opcode.BLOCK_DISCOVER: # Always return spark pins when discovering blocks block = self._blocks[const.SPARK_PINS_NID] - response.payload = [self._to_payload(block)] + response.payload = [self._to_payload(block, request.mode)] elif request.opcode == Opcode.REBOOT: self._start_time = datetime.now() self.update_systime() elif request.opcode == Opcode.CLEAR_BLOCKS: - response.payload = [self._to_payload(block) + response.payload = [self._to_payload(block, request.mode) for block in self._blocks.values() if block.nid >= const.USER_NID_START] self._blocks = default_blocks() diff --git a/brewblox_devcon_spark/const.py b/brewblox_devcon_spark/const.py index e05664ca..8171cc3e 100644 --- a/brewblox_devcon_spark/const.py +++ b/brewblox_devcon_spark/const.py @@ -16,7 +16,6 @@ SYSINFO_NID = 2 ONEWIREBUS_NID = 4 WIFI_SETTINGS_NID = 5 -TOUCH_SETTINGS_NID = 6 DISPLAY_SETTINGS_NID = 7 SPARK_PINS_NID = 19 @@ -25,7 +24,6 @@ ['SystemInfo', SYSINFO_NID], ['OneWireBus', ONEWIREBUS_NID], ['WiFiSettings', WIFI_SETTINGS_NID], - ['TouchSettings', TOUCH_SETTINGS_NID], ['DisplaySettings', DISPLAY_SETTINGS_NID], ['SparkPins', SPARK_PINS_NID], ] diff --git a/brewblox_devcon_spark/models.py b/brewblox_devcon_spark/models.py index 8e2bbfe7..cc7a18c6 100644 --- a/brewblox_devcon_spark/models.py +++ b/brewblox_devcon_spark/models.py @@ -140,6 +140,7 @@ class FirmwareConfig(BaseModel): firmware_sha: str proto_version: str proto_date: str + proto_sha: str system_version: str @@ -227,8 +228,6 @@ class Opcode(enum.Enum): BLOCK_CREATE = 13 BLOCK_DELETE = 14 BLOCK_DISCOVER = 15 - BLOCK_STORED_READ = 16 - BLOCK_STORED_READ_ALL = 17 STORAGE_READ = 20 STORAGE_READ_ALL = 21 @@ -286,6 +285,12 @@ class ErrorCode(enum.Enum): INVALID_STORED_BLOCK_CONTENT = 54 +class ReadMode(enum.Enum): + DEFAULT = 0 + STORED = 1 + LOGGED = 2 + + class MaskMode(enum.Enum): NO_MASK = 0 INCLUSIVE = 1 @@ -322,6 +327,7 @@ class DecodedPayload(BasePayload): class BaseRequest(BaseModel): msgId: int opcode: Opcode + mode: ReadMode = ReadMode.DEFAULT payload: BasePayload | None = None @field_validator('opcode', mode='before') @@ -329,6 +335,11 @@ class BaseRequest(BaseModel): def parse_opcode(cls, v): return parse_enum(Opcode, v) + @field_validator('mode', mode='before') + @classmethod + def parse_mode(cls, v): + return parse_enum(ReadMode, v) + class IntermediateRequest(BaseRequest): payload: EncodedPayload | None = None @@ -341,6 +352,7 @@ class DecodedRequest(BaseRequest): class BaseResponse(BaseModel): msgId: int error: ErrorCode + mode: ReadMode = ReadMode.DEFAULT payload: list[BasePayload] @field_validator('error', mode='before') @@ -348,6 +360,11 @@ class BaseResponse(BaseModel): def parse_error(cls, v): return parse_enum(ErrorCode, v) + @field_validator('mode', mode='before') + @classmethod + def parse_mode(cls, v): + return parse_enum(ReadMode, v) + class IntermediateResponse(BaseResponse): payload: list[EncodedPayload] diff --git a/brewblox_devcon_spark/spark_api.py b/brewblox_devcon_spark/spark_api.py index bd65e9c8..1e8e64e6 100644 --- a/brewblox_devcon_spark/spark_api.py +++ b/brewblox_devcon_spark/spark_api.py @@ -15,7 +15,8 @@ twinkeydict, utils) from .codec import bloxfield, sequence from .models import (Backup, BackupApplyResult, Block, BlockIdentity, - BlockNameChange, FirmwareBlock, FirmwareBlockIdentity) + BlockNameChange, FirmwareBlock, FirmwareBlockIdentity, + ReadMode) SID_PATTERN = re.compile(r'^[a-zA-Z]{1}[a-zA-Z0-9 _\-\(\)\|]{0,199}$') SID_RULES = """ @@ -287,7 +288,7 @@ async def read_logged_block(self, block: BlockIdentity) -> Block: """ async with self._execute('Read block (logged)'): block = self._to_firmware_block_identity(block) - block = await self.cmder.read_logged_block(block) + block = await self.cmder.read_block(block, ReadMode.LOGGED) block = self._to_block(block) return block @@ -311,7 +312,7 @@ async def read_stored_block(self, block: BlockIdentity) -> Block: """ async with self._execute('Read block (stored)'): block = self._to_firmware_block_identity(block) - block = await self.cmder.read_stored_block(block) + block = await self.cmder.read_block(block, ReadMode.STORED) block = self._to_block(block) return block @@ -453,7 +454,7 @@ async def read_all_logged_blocks(self) -> list[Block]: marked for logging, and units will use the postfixed format. """ async with self._execute('Read all blocks (logged)'): - blocks = await self.cmder.read_all_logged_blocks() + blocks = await self.cmder.read_all_blocks(ReadMode.LOGGED) blocks = self._to_block_list(blocks) return blocks @@ -470,27 +471,10 @@ async def read_all_stored_blocks(self) -> list[Block]: Non-persistent fields will be absent or set to a default value. """ async with self._execute('Read all blocks (stored)'): - blocks = await self.cmder.read_all_stored_blocks() + blocks = await self.cmder.read_all_blocks(ReadMode.STORED) blocks = self._to_block_list(blocks) return blocks - async def read_all_broadcast_blocks(self) -> tuple[list[Block], list[Block]]: - """ - Read all blocks on the controller. - The same raw data is formatted both normally, and suitable for logging. - - Returns: - tuple[list[Block], list[Block]]: - All present blocks on the controller. - The first list in the tuple will be formatted normally, - the second is suitable for logging. - """ - async with self._execute('Read all blocks (broadcast)'): - blocks, logged_blocks = await self.cmder.read_all_broadcast_blocks() - blocks = self._to_block_list(blocks) - logged_blocks = self._to_block_list(logged_blocks) - return (blocks, logged_blocks) - async def discover_blocks(self) -> list[Block]: """ Discover blocks for newly connected OneWire devices. diff --git a/brewblox_devcon_spark/utils.py b/brewblox_devcon_spark/utils.py index 5f2c9e0b..dafc64fd 100644 --- a/brewblox_devcon_spark/utils.py +++ b/brewblox_devcon_spark/utils.py @@ -162,7 +162,9 @@ async def task_context(coro: Coroutine, yield task finally: task.cancel() - await asyncio.wait([task], timeout=cancel_timeout.total_seconds()) + _, pending = await asyncio.wait([task], timeout=cancel_timeout.total_seconds()) + if pending: # pragma: no cover + LOGGER.error(f'Cancelled tasks pending: {pending}') def not_sentinel(value: VT, default_value: DVT) -> VT | DVT: diff --git a/firmware.ini b/firmware.ini index 45962d07..5600a5bb 100644 --- a/firmware.ini +++ b/firmware.ini @@ -1,8 +1,8 @@ [FIRMWARE] -firmware_version=8728fa50 -firmware_date=2024-03-26 -firmware_sha=8728fa50951091a698cdafd7f12833cd5cfe0231 -proto_version=041bfba2 -proto_date=2024-03-11 -proto_sha=041bfba27b044b143cfc907c152cf25509c3274a +firmware_version=1d09d4b7 +firmware_date=2024-04-09 +firmware_sha=1d09d4b7f0c5d2407da114d9a51fc037ca1465c7 +proto_version=619d55b2 +proto_date=2024-04-09 +proto_sha=619d55b27b4b79728f73e74c417c288bda5f03cf system_version=3.2.0 diff --git a/tasks.py b/tasks.py index 620ad098..2383990c 100644 --- a/tasks.py +++ b/tasks.py @@ -72,13 +72,13 @@ def update_firmware(ctx: Context, release='develop'): fw_config = get_fw_config() fw_date = fw_config.firmware_date fw_version = fw_config.firmware_version - proto_version = fw_config.proto_version + proto_sha = fw_config.proto_sha print(f'Updating to firmware release {fw_date}-{fw_version}') with ctx.cd(ROOT / 'brewblox-proto'): ctx.run('git fetch') - ctx.run(f'git checkout --quiet "{proto_version}"') + ctx.run(f'git checkout --quiet "{proto_sha}"') @task diff --git a/test/test_broadcast.py b/test/test_broadcast.py index 5d2bb20a..ecaafebe 100644 --- a/test/test_broadcast.py +++ b/test/test_broadcast.py @@ -70,8 +70,7 @@ async def test_broadcast_unsync(s_publish: Mock): assert s_publish.call_count == 1 -async def test_broadcast(s_publish: Mock): - config = utils.get_config() +async def test_broadcast_recovery(s_publish: Mock): b = broadcast.Broadcaster() await b.run() @@ -82,10 +81,15 @@ async def test_broadcast(s_publish: Mock): s_publish.reset_mock() async with broadcast.lifespan(): - mock_connection.NEXT_ERROR.append(ErrorCode.UNKNOWN_ERROR) + mock_connection.NEXT_ERROR += [ErrorCode.UNKNOWN_ERROR]*100 await asyncio.sleep(0.2) assert s_publish.call_count > 1 + +async def test_broadcast_early_exit(s_publish: Mock): + config = utils.get_config() + b = broadcast.Broadcaster() + # Early exit if interval <= 0 s_publish.reset_mock() config.broadcast_interval = timedelta() diff --git a/test/test_codec.py b/test/test_codec.py index 74746740..6a09ab6d 100644 --- a/test/test_codec.py +++ b/test/test_codec.py @@ -4,10 +4,9 @@ from fastapi import FastAPI from brewblox_devcon_spark import codec, connection, exceptions -from brewblox_devcon_spark.codec import (Codec, DecodeOpts, MetadataOpt, - ProtoEnumOpt) +from brewblox_devcon_spark.codec import Codec from brewblox_devcon_spark.models import (DecodedPayload, EncodedPayload, - MaskField, MaskMode) + MaskField, MaskMode, ReadMode) TEMP_SENSOR_TYPE_INT = 302 @@ -149,7 +148,7 @@ async def test_encode_delta_sec(): blockType='EdgeCase', content={'deltaV': 100} )) - payload = cdc.decode_payload(payload, opts=DecodeOpts(metadata=MetadataOpt.POSTFIX)) + payload = cdc.decode_payload(payload, mode=ReadMode.LOGGED, filter_values=False) assert payload.content['deltaV[delta_degC / second]'] == pytest.approx(100, 0.1) @@ -199,7 +198,7 @@ async def test_transcode_interfaces(): async def test_exclusive_mask(): cdc = codec.CV.get() - rw_cdc = Codec(strip_readonly=False) + rw_cdc = Codec(filter_values=False) enc_payload = rw_cdc.encode_payload(DecodedPayload( blockId=1, @@ -219,7 +218,9 @@ async def test_exclusive_mask(): assert payload.maskMode == MaskMode.EXCLUSIVE assert payload.maskFields == [MaskField(address=[6])] - payload = cdc.decode_payload(enc_payload, opts=DecodeOpts(metadata=MetadataOpt.POSTFIX)) + payload = cdc.decode_payload(enc_payload, + mode=ReadMode.LOGGED, + filter_values=False) assert payload.content['deltaV[delta_degC / second]'] is None @@ -236,7 +237,9 @@ async def test_postfixed_decoding(): } }, )) - payload = cdc.decode_payload(payload, opts=DecodeOpts(metadata=MetadataOpt.POSTFIX)) + payload = cdc.decode_payload(payload, + mode=ReadMode.LOGGED, + filter_values=False) assert payload.content['link'] == 10 assert payload.content['state']['value[degC]'] == pytest.approx(10, 0.01) @@ -311,7 +314,7 @@ async def test_enum_decoding(): payload = cdc.decode_payload(encoded_payload) assert payload.content['storedState'] == 'STATE_ACTIVE' - payload = cdc.decode_payload(encoded_payload, opts=DecodeOpts(enums=ProtoEnumOpt.INT)) + payload = cdc.decode_payload(encoded_payload, mode=ReadMode.STORED) assert payload.content['storedState'] == 1 diff --git a/test/test_codec_processor.py b/test/test_codec_processor.py index e316c623..76bade5c 100644 --- a/test/test_codec_processor.py +++ b/test/test_codec_processor.py @@ -1,7 +1,6 @@ import pytest -from brewblox_devcon_spark.codec import (DecodeOpts, ProtobufProcessor, - unit_conversion) +from brewblox_devcon_spark.codec import ProtobufProcessor, unit_conversion from brewblox_devcon_spark.codec.pb2 import TempSensorOneWire_pb2 from brewblox_devcon_spark.models import DecodedPayload, MaskField, MaskMode @@ -10,7 +9,7 @@ def degf_processor(): unit_conversion.setup() unit_conversion.CV.get().temperature = 'degF' - return ProtobufProcessor(strip_readonly=False) + return ProtobufProcessor() @pytest.fixture @@ -49,9 +48,9 @@ def generate_decoding_data() -> DecodedPayload: ) -def test_pre_encode_fields(degf_processor, desc): +def test_pre_encode_fields(degf_processor: ProtobufProcessor, desc): vals = generate_encoding_data() - degf_processor.pre_encode(desc, vals) + degf_processor.pre_encode(desc, vals, filter_values=False) # converted to (delta) degC # scaled * 256 @@ -59,45 +58,45 @@ def test_pre_encode_fields(degf_processor, desc): assert vals == generate_decoding_data() -def test_post_decode_fields(degf_processor, desc): +def test_post_decode_fields(degf_processor: ProtobufProcessor, desc): vals = generate_decoding_data() - degf_processor.post_decode(desc, vals, DecodeOpts()) + degf_processor.post_decode(desc, vals, filter_values=False) assert vals.content['offset']['value'] == pytest.approx(20, 0.1) assert vals.content['value']['value'] == pytest.approx(100, 0.1) -def test_decode_no_system(degc_processor, desc): +def test_decode_no_system(degc_processor: ProtobufProcessor, desc): vals = generate_decoding_data() - degc_processor.post_decode(desc, vals, DecodeOpts()) + degc_processor.post_decode(desc, vals) assert vals.content['offset']['value'] > 0 assert vals.content['value']['value'] > 0 -def test_pack_bit_flags(degf_processor): +def test_pack_bit_flags(degf_processor: ProtobufProcessor): assert degf_processor.pack_bit_flags([0, 2, 1]) == 7 with pytest.raises(ValueError): degf_processor.pack_bit_flags([8]) -def test_unpack_bit_flags(degf_processor): +def test_unpack_bit_flags(degf_processor: ProtobufProcessor): assert degf_processor.unpack_bit_flags(7) == [0, 1, 2] assert degf_processor.unpack_bit_flags(255) == [i for i in range(8)] -def test_null_values(degf_processor, desc): +def test_null_values(degf_processor: ProtobufProcessor, desc): vals = generate_encoding_data() vals.content['offset[delta_degF]'] = None vals.content['address'] = None - degf_processor.pre_encode(desc, vals) + degf_processor.pre_encode(desc, vals, filter_values=False) assert 'address' not in vals.content -def test_masking(degf_processor, desc): +def test_masking(degf_processor: ProtobufProcessor, desc): vals = generate_encoding_data() vals.maskMode = MaskMode.INCLUSIVE - degf_processor.pre_encode(desc, vals) + degf_processor.pre_encode(desc, vals, filter_values=False) assert sorted(list((f.address for f in vals.maskFields))) == [ [1], # value [3], # offset @@ -107,5 +106,5 @@ def test_masking(degf_processor, desc): vals = generate_decoding_data() vals.maskMode = MaskMode.EXCLUSIVE vals.maskFields = [MaskField(address=[1])] # value - degf_processor.post_decode(desc, vals, DecodeOpts()) + degf_processor.post_decode(desc, vals, filter_values=False) assert vals.content['value']['value'] is None diff --git a/test/test_codec_time_utils.py b/test/test_codec_time_utils.py index 765792b4..92e85826 100644 --- a/test/test_codec_time_utils.py +++ b/test/test_codec_time_utils.py @@ -2,7 +2,8 @@ import pytest -from brewblox_devcon_spark.codec import DateFormatOpt, time_utils +from brewblox_devcon_spark.codec import time_utils +from brewblox_devcon_spark.codec.opts import DateFormatOpt def test_parse_duration():