From 6a1456d972634586d258aae3e310ccfea8d7b6ef Mon Sep 17 00:00:00 2001 From: Ja'mez Stokes <49651248+jstoke53@users.noreply.github.com> Date: Mon, 13 Jul 2020 14:53:33 -0400 Subject: [PATCH 01/28] testing code changes to add get_vin as a openxc control command. --- openxc/controllers/base.py | 8 ++++++++ openxc/tools/control.py | 3 +++ 2 files changed, 11 insertions(+) diff --git a/openxc/controllers/base.py b/openxc/controllers/base.py index 23b81615..07fa46be 100644 --- a/openxc/controllers/base.py +++ b/openxc/controllers/base.py @@ -427,6 +427,14 @@ def device_id(self): } return self._check_command_response_message(request) + def get_vin(self): + """Request vehicle VIN + """ + request = { + "command": "get_vin" + } + return self._check_command_response_message(request) + def write(self, **kwargs): """Serialize a raw or translated write request and send it to the VI, following the OpenXC message format. diff --git a/openxc/tools/control.py b/openxc/tools/control.py index 98e52024..b74ed012 100644 --- a/openxc/tools/control.py +++ b/openxc/tools/control.py @@ -31,6 +31,9 @@ def sd_mount_status(interface): def device_id(interface): print(("Device ID is %s" % interface.device_id())) +def get_vin(interface): + print(("Vehicle VIN is %s" % interface.get_vin())) + def passthrough(interface, bus, passthrough_enabled): if interface.set_passthrough(bus, passthrough_enabled): print(("Bus %u passthrough set to %s" % (bus, passthrough_enabled))) From 88f307a3e5c3ceefc34a143354149a885a8d89c7 Mon Sep 17 00:00:00 2001 From: Ja'mez Stokes <49651248+jstoke53@users.noreply.github.com> Date: Mon, 20 Jul 2020 10:21:12 -0400 Subject: [PATCH 02/28] add git_vin command to main() so openxc-python can understand the new command. --- openxc/tools/control.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/openxc/tools/control.py b/openxc/tools/control.py index b74ed012..5a8fe773 100644 --- a/openxc/tools/control.py +++ b/openxc/tools/control.py @@ -96,7 +96,7 @@ def parse_options(): parser = argparse.ArgumentParser(description="Send control messages to an " "attached OpenXC vehicle interface", parents=[device_options()]) parser.add_argument("command", type=str, - choices=['version', 'platform', 'write', 'id', 'set', 'sd_mount_status']) + choices=['version', 'platform', 'write', 'id', 'set', 'sd_mount_status', 'get_vin']) write_group = parser.add_mutually_exclusive_group() write_group.add_argument("--name", action="store", dest="write_name", help="name for message write request") @@ -187,6 +187,8 @@ def main(): sd_mount_status(interface) elif arguments.command == "id": device_id(interface) + elif arguments.command == "get_vin": + get_vin(interface) elif arguments.command == "set": handle_set_command(arguments, interface) elif arguments.command == "write": From 497600248c74df1c548b2da7df42c470f42abc14 Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Tue, 29 Sep 2020 22:02:02 -0400 Subject: [PATCH 03/28] Update usb.py force backend selection of libusb0 --- openxc/sources/usb.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/openxc/sources/usb.py b/openxc/sources/usb.py index aed7aac4..7242a76b 100644 --- a/openxc/sources/usb.py +++ b/openxc/sources/usb.py @@ -1,9 +1,10 @@ """A USB vehicle interface data source.""" - +import os import logging import usb.core import usb.util +from usb.backend import libusb0 from .base import BytestreamDataSource, DataSourceError @@ -58,8 +59,14 @@ def __init__(self, vendor_id=None, product_id=None, **kwargs): product_id = int(product_id, 0) self.product_id = product_id or self.DEFAULT_PRODUCT_ID - devices = usb.core.find(find_all=True, idVendor=self.vendor_id, + if os.name == 'nt': + be = libusb0.get_backend() + devices = usb.core.find(backend=be, find_all=True, idVendor=self.vendor_id, + idProduct=self.product_id) + else: + devices = usb.core.find(find_all=True, idVendor=self.vendor_id, idProduct=self.product_id) + for device in devices: self.device = device try: From 7e0101778cb33c6aae572e05a3f4da87892ae057 Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Tue, 29 Sep 2020 22:04:51 -0400 Subject: [PATCH 04/28] Update README.rst add driver reinstall instructions --- README.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.rst b/README.rst index ef42bca1..1f4f37a7 100644 --- a/README.rst +++ b/README.rst @@ -30,6 +30,8 @@ In addition to a port of the Android library API, the package also contains a number of command-line tools for connecting to the CAN translator and manipulating previously recorded vehicle data. +If you are getting the error "ValueError: No backend available" on windows please reinstall your libusb0 driver using https://zadig.akeo.ie/ + Due to changes in signals.cpp openxc-python Version 2.0.0 must be used with vi-firmware 8.0.0 or greater. Due to changes with large diagnostic responses Version 2.1.0 must be used with vi-firmware 8.1.0 or greater. From b8c00b920cf3c212d3aaf37bdc2ecdbfa61d3f77 Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Wed, 30 Sep 2020 10:15:07 -0400 Subject: [PATCH 05/28] Update README.rst --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 1f4f37a7..1c70181c 100644 --- a/README.rst +++ b/README.rst @@ -30,7 +30,7 @@ In addition to a port of the Android library API, the package also contains a number of command-line tools for connecting to the CAN translator and manipulating previously recorded vehicle data. -If you are getting the error "ValueError: No backend available" on windows please reinstall your libusb0 driver using https://zadig.akeo.ie/ +If you are getting the error "ValueError: No backend available" on windows please reinstall your libusb0 driver using https://github.com/openxc/vi-windows-driver if you are in a envirment where you can not use an unsigned driver please use https://zadig.akeo.ie/ Due to changes in signals.cpp openxc-python Version 2.0.0 must be used with vi-firmware 8.0.0 or greater. Due to changes with large diagnostic responses Version 2.1.0 must be used with vi-firmware 8.1.0 or greater. From 14f32f7346382c67d149a69ae5218a634f9cb0b4 Mon Sep 17 00:00:00 2001 From: garindae Date: Thu, 15 Oct 2020 14:33:40 -0400 Subject: [PATCH 06/28] Regenerated the Python protobuf file and fixed glue file binary to properly access it --- openxc/formats/binary.py | 86 +++++++------ openxc/openxc_pb2.py | 253 ++++++++++++++++++++++++--------------- 2 files changed, 198 insertions(+), 141 deletions(-) diff --git a/openxc/formats/binary.py b/openxc/formats/binary.py index e6433c15..c24fd64e 100644 --- a/openxc/formats/binary.py +++ b/openxc/formats/binary.py @@ -126,7 +126,8 @@ def _handle_diagnostic_cc_message(cls, data, message): request_command.action = openxc_pb2.DiagnosticControlCommand.CANCEL request = request_command.request request_data = data['request'] - request.bus = request_data['bus'] + if 'bus' in request_data: + request.bus = request_data['bus'] request.message_id = request_data['id'] request.mode = request_data['mode'] if 'frequency' in request_data: @@ -243,63 +244,56 @@ def _dict_to_protobuf(cls, data): @classmethod def _build_can_parsed_message(cls, message, parsed_message): can_message = message.can_message - if can_message.HasField('bus'): + if can_message.bus != 0: parsed_message['bus'] = can_message.bus - if can_message.HasField('id'): + if can_message.id != 0: parsed_message['id'] = can_message.id - if can_message.HasField('data'): + if len(binascii.hexlify(can_message.data).decode("ascii")) > 0: parsed_message['data'] = "0x%s" % binascii.hexlify(can_message.data).decode("ascii") - if can_message.HasField('frame_format'): - if can_message.frame_format == openxc_pb2.CanMessage.STANDARD: - parsed_message['frame_format'] = "standard" - elif can_message.frame_format == openxc_pb2.CanMessage.EXTENDED: - parsed_message['frame_format'] = "extended" + if can_message.frame_format == openxc_pb2.CanMessage.STANDARD: + parsed_message['frame_format'] = "standard" + elif can_message.frame_format == openxc_pb2.CanMessage.EXTENDED: + parsed_message['frame_format'] = "extended" @classmethod def _build_diagnostic_parsed_message(cls, message, parsed_message): diagnostic_message = message.diagnostic_response - if diagnostic_message.HasField('bus'): + if diagnostic_message.bus != 0: parsed_message['bus'] = diagnostic_message.bus - if diagnostic_message.HasField('message_id'): + if diagnostic_message.message_id !=0: parsed_message['id'] = diagnostic_message.message_id - if diagnostic_message.HasField('mode'): + if diagnostic_message.mode != 0: parsed_message['mode'] = diagnostic_message.mode - if diagnostic_message.HasField('pid'): + if diagnostic_message.pid != 0: parsed_message['pid'] = diagnostic_message.pid - if diagnostic_message.HasField('success'): - parsed_message['success'] = diagnostic_message.success - if diagnostic_message.HasField('value'): + parsed_message['success'] = diagnostic_message.success + if diagnostic_message.value.type != openxc_pb2.DynamicField.UNUSED: ##GJA parsed_message['value'] = diagnostic_message.value - if diagnostic_message.HasField('negative_response_code'): + if diagnostic_message.negative_response_code !=0: parsed_message['negative_response_code'] = diagnostic_message.negative_response_code - if diagnostic_message.HasField('payload'): + if len(binascii.hexlify(diagnostic_message.payload).decode("ascii")) > 0: parsed_message['payload'] = "0x%s" % binascii.hexlify(diagnostic_message.payload).decode("ascii") @classmethod def _build_simple_parsed_message(cls, message, parsed_message): simple_message = message.simple_message parsed_message['name'] = simple_message.name - if simple_message.HasField('event'): - event = simple_message.event - if event.HasField('numeric_value'): - parsed_message['event'] = event.numeric_value - elif event.HasField('boolean_value'): - parsed_message['event'] = event.boolean_value - elif event.HasField('string_value'): - parsed_message['event'] = event.string_value - - if simple_message.HasField('value'): - value = simple_message.value - if value.HasField('numeric_value'): - parsed_message['value'] = value.numeric_value - elif value.HasField('boolean_value'): - parsed_message['value'] = value.boolean_value - elif value.HasField('string_value'): - parsed_message['value'] = value.string_value - else: - parsed_message = None + event = simple_message.event + if (len(event.string_value) > 0): + parsed_message['event'] = event.string_value + elif event.numeric_value != 0: + parsed_message['event'] = event.numeric_value else: - parsed_message = None + parsed_message['event'] = event.boolean_value + + value = simple_message.value + if (len(value.string_value) > 0): + parsed_message['value'] = value.string_value + elif value.numeric_value != 0: + parsed_message['value'] = value.numeric_value + else: + parsed_message['value'] = value.boolean_value + @classmethod def _handle_diagnostic_cc_parsed_message(cls, command, parsed_message): @@ -316,16 +310,16 @@ def _handle_diagnostic_cc_parsed_message(cls, command, parsed_message): parsed_message['request']['bus'] = request.bus parsed_message['request']['mode'] = request.mode - if request.HasField('frequency'): + if rrequest.frequency != 0: parsed_message['request']['frequency'] = request.frequency - if request.HasField('name'): + if len(request.name) > 0: parsed_message['request']['name'] = request.name - if request.HasField('multiple_responses'): - parsed_message['request']['multiple_responses'] = request.multiple_responses - if request.HasField('pid'): + parsed_message['request']['multiple_responses'] = request.multiple_responses + if request.pid != 0: parsed_message['request']['pid'] = request.pid - if request.HasField('payload'): + if len(binascii.hexlify(request.payload).decode("ascii")) > 0: parsed_message['request']['payload'] = "0x%s" % binascii.hexlify(request.payload).decode("ascii") + print("Finished _handle_diagnostic_cc_parsed_message") @classmethod def _handle_passthrough_cc_parsed_message(cls, command, parsed_message): @@ -393,14 +387,14 @@ def _build_command_response_parsed_message(cls, message, parsed_message): raise UnrecognizedBinaryCommandError(response.type) parsed_message['status'] = response.status - if response.HasField('message'): + if len(response.message) > 0: parsed_message['message'] = response.message @classmethod def _protobuf_to_dict(cls, message): parsed_message = {} if message is not None: - if message.type == message.CAN and message.HasField('can_message'): + if message.type == message.CAN: cls._build_can_parsed_message(message, parsed_message) elif message.type == message.DIAGNOSTIC: cls._build_diagnostic_parsed_message(message, parsed_message) diff --git a/openxc/openxc_pb2.py b/openxc/openxc_pb2.py index c3e04d97..48e040ba 100644 --- a/openxc/openxc_pb2.py +++ b/openxc/openxc_pb2.py @@ -18,7 +18,8 @@ DESCRIPTOR = _descriptor.FileDescriptor( name='openxc.proto', package='openxc', - serialized_pb=_b('\n\x0copenxc.proto\x12\x06openxc\"\x9b\x03\n\x0eVehicleMessage\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.VehicleMessage.Type\x12\'\n\x0b\x63\x61n_message\x18\x02 \x01(\x0b\x32\x12.openxc.CanMessage\x12-\n\x0esimple_message\x18\x03 \x01(\x0b\x32\x15.openxc.SimpleMessage\x12\x37\n\x13\x64iagnostic_response\x18\x04 \x01(\x0b\x32\x1a.openxc.DiagnosticResponse\x12/\n\x0f\x63ontrol_command\x18\x05 \x01(\x0b\x32\x16.openxc.ControlCommand\x12\x31\n\x10\x63ommand_response\x18\x06 \x01(\x0b\x32\x17.openxc.CommandResponse\x12\x11\n\ttimestamp\x18\x07 \x01(\x04\"V\n\x04Type\x12\x07\n\x03\x43\x41N\x10\x01\x12\n\n\x06SIMPLE\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x13\n\x0f\x43ONTROL_COMMAND\x10\x04\x12\x14\n\x10\x43OMMAND_RESPONSE\x10\x05\"\x94\x01\n\nCanMessage\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\n\n\x02id\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\x12\x34\n\x0c\x66rame_format\x18\x04 \x01(\x0e\x32\x1e.openxc.CanMessage.FrameFormat\")\n\x0b\x46rameFormat\x12\x0c\n\x08STANDARD\x10\x01\x12\x0c\n\x08\x45XTENDED\x10\x02\"\x97\x06\n\x0e\x43ontrolCommand\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.ControlCommand.Type\x12<\n\x12\x64iagnostic_request\x18\x02 \x01(\x0b\x32 .openxc.DiagnosticControlCommand\x12G\n\x18passthrough_mode_request\x18\x03 \x01(\x0b\x32%.openxc.PassthroughModeControlCommand\x12O\n acceptance_filter_bypass_command\x18\x04 \x01(\x0b\x32%.openxc.AcceptanceFilterBypassCommand\x12<\n\x16payload_format_command\x18\x05 \x01(\x0b\x32\x1c.openxc.PayloadFormatCommand\x12O\n predefined_obd2_requests_command\x18\x06 \x01(\x0b\x32%.openxc.PredefinedObd2RequestsCommand\x12\x46\n\x1bmodem_configuration_command\x18\x07 \x01(\x0b\x32!.openxc.ModemConfigurationCommand\x12\x42\n\x19rtc_configuration_command\x18\x08 \x01(\x0b\x32\x1f.openxc.RTCConfigurationCommand\"\xe6\x01\n\x04Type\x12\x0b\n\x07VERSION\x10\x01\x12\r\n\tDEVICE_ID\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x0f\n\x0bPASSTHROUGH\x10\x04\x12\x1c\n\x18\x41\x43\x43\x45PTANCE_FILTER_BYPASS\x10\x05\x12\x12\n\x0ePAYLOAD_FORMAT\x10\x06\x12\x1c\n\x18PREDEFINED_OBD2_REQUESTS\x10\x07\x12\x17\n\x13MODEM_CONFIGURATION\x10\x08\x12\x15\n\x11RTC_CONFIGURATION\x10\t\x12\x13\n\x0fSD_MOUNT_STATUS\x10\n\x12\x0c\n\x08PLATFORM\x10\x0b\"\x9e\x01\n\x18\x44iagnosticControlCommand\x12*\n\x07request\x18\x01 \x01(\x0b\x32\x19.openxc.DiagnosticRequest\x12\x37\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\'.openxc.DiagnosticControlCommand.Action\"\x1d\n\x06\x41\x63tion\x12\x07\n\x03\x41\x44\x44\x10\x01\x12\n\n\x06\x43\x41NCEL\x10\x02\"=\n\x1dPassthroughModeControlCommand\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\"<\n\x1d\x41\x63\x63\x65ptanceFilterBypassCommand\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x0e\n\x06\x62ypass\x18\x02 \x01(\x08\"\x8c\x01\n\x14PayloadFormatCommand\x12:\n\x06\x66ormat\x18\x01 \x01(\x0e\x32*.openxc.PayloadFormatCommand.PayloadFormat\"8\n\rPayloadFormat\x12\x08\n\x04JSON\x10\x01\x12\x0c\n\x08PROTOBUF\x10\x02\x12\x0f\n\x0bMESSAGEPACK\x10\x03\"0\n\x1dPredefinedObd2RequestsCommand\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\"\xd1\x03\n\x17NetworkOperatorSettings\x12\x18\n\x10\x61llowDataRoaming\x18\x01 \x01(\x08\x12N\n\x12operatorSelectMode\x18\x02 \x01(\x0e\x32\x32.openxc.NetworkOperatorSettings.OperatorSelectMode\x12L\n\x11networkDescriptor\x18\x03 \x01(\x0b\x32\x31.openxc.NetworkOperatorSettings.NetworkDescriptor\x1a\x98\x01\n\x11NetworkDescriptor\x12\x0c\n\x04PLMN\x18\x01 \x01(\r\x12R\n\x0bnetworkType\x18\x02 \x01(\x0e\x32=.openxc.NetworkOperatorSettings.NetworkDescriptor.NetworkType\"!\n\x0bNetworkType\x12\x07\n\x03GSM\x10\x00\x12\t\n\x05UTRAN\x10\x02\"c\n\x12OperatorSelectMode\x12\r\n\tAUTOMATIC\x10\x00\x12\n\n\x06MANUAL\x10\x01\x12\x0e\n\nDEREGISTER\x10\x02\x12\x0c\n\x08SET_ONLY\x10\x03\x12\x14\n\x10MANUAL_AUTOMATIC\x10\x04\"\"\n\x13NetworkDataSettings\x12\x0b\n\x03\x41PN\x18\x01 \x01(\t\"3\n\x15ServerConnectSettings\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\r\"\xd5\x01\n\x19ModemConfigurationCommand\x12@\n\x17networkOperatorSettings\x18\x01 \x01(\x0b\x32\x1f.openxc.NetworkOperatorSettings\x12\x38\n\x13networkDataSettings\x18\x02 \x01(\x0b\x32\x1b.openxc.NetworkDataSettings\x12<\n\x15serverConnectSettings\x18\x03 \x01(\x0b\x32\x1d.openxc.ServerConnectSettings\",\n\x17RTCConfigurationCommand\x12\x11\n\tunix_time\x18\x01 \x01(\r\"]\n\x0f\x43ommandResponse\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.ControlCommand.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\x08\"\xfd\x01\n\x11\x44iagnosticRequest\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04mode\x18\x03 \x01(\r\x12\x0b\n\x03pid\x18\x04 \x01(\r\x12\x0f\n\x07payload\x18\x05 \x01(\x0c\x12\x1a\n\x12multiple_responses\x18\x06 \x01(\x08\x12\x11\n\tfrequency\x18\x07 \x01(\x01\x12\x0c\n\x04name\x18\x08 \x01(\t\x12;\n\x0c\x64\x65\x63oded_type\x18\t \x01(\x0e\x32%.openxc.DiagnosticRequest.DecodedType\"!\n\x0b\x44\x65\x63odedType\x12\x08\n\x04NONE\x10\x01\x12\x08\n\x04OBD2\x10\x02\"\xa1\x01\n\x12\x44iagnosticResponse\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04mode\x18\x03 \x01(\r\x12\x0b\n\x03pid\x18\x04 \x01(\r\x12\x0f\n\x07success\x18\x05 \x01(\x08\x12\x1e\n\x16negative_response_code\x18\x06 \x01(\r\x12\x0f\n\x07payload\x18\x07 \x01(\x0c\x12\r\n\x05value\x18\x08 \x01(\x01\"\xa2\x01\n\x0c\x44ynamicField\x12\'\n\x04type\x18\x01 \x01(\x0e\x32\x19.openxc.DynamicField.Type\x12\x14\n\x0cstring_value\x18\x02 \x01(\t\x12\x15\n\rnumeric_value\x18\x03 \x01(\x01\x12\x15\n\rboolean_value\x18\x04 \x01(\x08\"%\n\x04Type\x12\n\n\x06STRING\x10\x01\x12\x07\n\x03NUM\x10\x02\x12\x08\n\x04\x42OOL\x10\x03\"g\n\rSimpleMessage\x12\x0c\n\x04name\x18\x01 \x01(\t\x12#\n\x05value\x18\x02 \x01(\x0b\x32\x14.openxc.DynamicField\x12#\n\x05\x65vent\x18\x03 \x01(\x0b\x32\x14.openxc.DynamicFieldB\x1c\n\ncom.openxcB\x0e\x42inaryMessages') + syntax='proto3', + serialized_pb=_b('\n\x0copenxc.proto\x12\x06openxc\"\xa7\x03\n\x0eVehicleMessage\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.VehicleMessage.Type\x12\'\n\x0b\x63\x61n_message\x18\x02 \x01(\x0b\x32\x12.openxc.CanMessage\x12-\n\x0esimple_message\x18\x03 \x01(\x0b\x32\x15.openxc.SimpleMessage\x12\x37\n\x13\x64iagnostic_response\x18\x04 \x01(\x0b\x32\x1a.openxc.DiagnosticResponse\x12/\n\x0f\x63ontrol_command\x18\x05 \x01(\x0b\x32\x16.openxc.ControlCommand\x12\x31\n\x10\x63ommand_response\x18\x06 \x01(\x0b\x32\x17.openxc.CommandResponse\x12\x11\n\ttimestamp\x18\x07 \x01(\x04\"b\n\x04Type\x12\n\n\x06UNUSED\x10\x00\x12\x07\n\x03\x43\x41N\x10\x01\x12\n\n\x06SIMPLE\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x13\n\x0f\x43ONTROL_COMMAND\x10\x04\x12\x14\n\x10\x43OMMAND_RESPONSE\x10\x05\"\xa0\x01\n\nCanMessage\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\n\n\x02id\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\x12\x34\n\x0c\x66rame_format\x18\x04 \x01(\x0e\x32\x1e.openxc.CanMessage.FrameFormat\"5\n\x0b\x46rameFormat\x12\n\n\x06UNUSED\x10\x00\x12\x0c\n\x08STANDARD\x10\x01\x12\x0c\n\x08\x45XTENDED\x10\x02\"\xa3\x06\n\x0e\x43ontrolCommand\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.ControlCommand.Type\x12<\n\x12\x64iagnostic_request\x18\x02 \x01(\x0b\x32 .openxc.DiagnosticControlCommand\x12G\n\x18passthrough_mode_request\x18\x03 \x01(\x0b\x32%.openxc.PassthroughModeControlCommand\x12O\n acceptance_filter_bypass_command\x18\x04 \x01(\x0b\x32%.openxc.AcceptanceFilterBypassCommand\x12<\n\x16payload_format_command\x18\x05 \x01(\x0b\x32\x1c.openxc.PayloadFormatCommand\x12O\n predefined_obd2_requests_command\x18\x06 \x01(\x0b\x32%.openxc.PredefinedObd2RequestsCommand\x12\x46\n\x1bmodem_configuration_command\x18\x07 \x01(\x0b\x32!.openxc.ModemConfigurationCommand\x12\x42\n\x19rtc_configuration_command\x18\x08 \x01(\x0b\x32\x1f.openxc.RTCConfigurationCommand\"\xf2\x01\n\x04Type\x12\n\n\x06UNUSED\x10\x00\x12\x0b\n\x07VERSION\x10\x01\x12\r\n\tDEVICE_ID\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x0f\n\x0bPASSTHROUGH\x10\x04\x12\x1c\n\x18\x41\x43\x43\x45PTANCE_FILTER_BYPASS\x10\x05\x12\x12\n\x0ePAYLOAD_FORMAT\x10\x06\x12\x1c\n\x18PREDEFINED_OBD2_REQUESTS\x10\x07\x12\x17\n\x13MODEM_CONFIGURATION\x10\x08\x12\x15\n\x11RTC_CONFIGURATION\x10\t\x12\x13\n\x0fSD_MOUNT_STATUS\x10\n\x12\x0c\n\x08PLATFORM\x10\x0b\"\xaa\x01\n\x18\x44iagnosticControlCommand\x12*\n\x07request\x18\x01 \x01(\x0b\x32\x19.openxc.DiagnosticRequest\x12\x37\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\'.openxc.DiagnosticControlCommand.Action\")\n\x06\x41\x63tion\x12\n\n\x06UNUSED\x10\x00\x12\x07\n\x03\x41\x44\x44\x10\x01\x12\n\n\x06\x43\x41NCEL\x10\x02\"=\n\x1dPassthroughModeControlCommand\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\"<\n\x1d\x41\x63\x63\x65ptanceFilterBypassCommand\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x0e\n\x06\x62ypass\x18\x02 \x01(\x08\"\x98\x01\n\x14PayloadFormatCommand\x12:\n\x06\x66ormat\x18\x01 \x01(\x0e\x32*.openxc.PayloadFormatCommand.PayloadFormat\"D\n\rPayloadFormat\x12\n\n\x06UNUSED\x10\x00\x12\x08\n\x04JSON\x10\x01\x12\x0c\n\x08PROTOBUF\x10\x02\x12\x0f\n\x0bMESSAGEPACK\x10\x03\"0\n\x1dPredefinedObd2RequestsCommand\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\"\xd1\x03\n\x17NetworkOperatorSettings\x12\x18\n\x10\x61llowDataRoaming\x18\x01 \x01(\x08\x12N\n\x12operatorSelectMode\x18\x02 \x01(\x0e\x32\x32.openxc.NetworkOperatorSettings.OperatorSelectMode\x12L\n\x11networkDescriptor\x18\x03 \x01(\x0b\x32\x31.openxc.NetworkOperatorSettings.NetworkDescriptor\x1a\x98\x01\n\x11NetworkDescriptor\x12\x0c\n\x04PLMN\x18\x01 \x01(\r\x12R\n\x0bnetworkType\x18\x02 \x01(\x0e\x32=.openxc.NetworkOperatorSettings.NetworkDescriptor.NetworkType\"!\n\x0bNetworkType\x12\x07\n\x03GSM\x10\x00\x12\t\n\x05UTRAN\x10\x02\"c\n\x12OperatorSelectMode\x12\r\n\tAUTOMATIC\x10\x00\x12\n\n\x06MANUAL\x10\x01\x12\x0e\n\nDEREGISTER\x10\x02\x12\x0c\n\x08SET_ONLY\x10\x03\x12\x14\n\x10MANUAL_AUTOMATIC\x10\x04\"\"\n\x13NetworkDataSettings\x12\x0b\n\x03\x61pn\x18\x01 \x01(\t\"3\n\x15ServerConnectSettings\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\r\"\xd5\x01\n\x19ModemConfigurationCommand\x12@\n\x17networkOperatorSettings\x18\x01 \x01(\x0b\x32\x1f.openxc.NetworkOperatorSettings\x12\x38\n\x13networkDataSettings\x18\x02 \x01(\x0b\x32\x1b.openxc.NetworkDataSettings\x12<\n\x15serverConnectSettings\x18\x03 \x01(\x0b\x32\x1d.openxc.ServerConnectSettings\",\n\x17RTCConfigurationCommand\x12\x11\n\tunix_time\x18\x01 \x01(\r\"]\n\x0f\x43ommandResponse\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.ControlCommand.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\x08\"\x89\x02\n\x11\x44iagnosticRequest\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04mode\x18\x03 \x01(\r\x12\x0b\n\x03pid\x18\x04 \x01(\r\x12\x0f\n\x07payload\x18\x05 \x01(\x0c\x12\x1a\n\x12multiple_responses\x18\x06 \x01(\x08\x12\x11\n\tfrequency\x18\x07 \x01(\x01\x12\x0c\n\x04name\x18\x08 \x01(\t\x12;\n\x0c\x64\x65\x63oded_type\x18\t \x01(\x0e\x32%.openxc.DiagnosticRequest.DecodedType\"-\n\x0b\x44\x65\x63odedType\x12\n\n\x06UNUSED\x10\x00\x12\x08\n\x04NONE\x10\x01\x12\x08\n\x04OBD2\x10\x02\"\xda\x01\n\x12\x44iagnosticResponse\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04mode\x18\x03 \x01(\r\x12\x0b\n\x03pid\x18\x04 \x01(\r\x12\x0f\n\x07success\x18\x05 \x01(\x08\x12\x1e\n\x16negative_response_code\x18\x06 \x01(\r\x12\x0f\n\x07payload\x18\x07 \x01(\x0c\x12#\n\x05value\x18\x08 \x01(\x0b\x32\x14.openxc.DynamicField\x12\r\n\x05\x66rame\x18\t \x01(\x05\x12\x12\n\ntotal_size\x18\n \x01(\r\"\xae\x01\n\x0c\x44ynamicField\x12\'\n\x04type\x18\x01 \x01(\x0e\x32\x19.openxc.DynamicField.Type\x12\x14\n\x0cstring_value\x18\x02 \x01(\t\x12\x15\n\rnumeric_value\x18\x03 \x01(\x01\x12\x15\n\rboolean_value\x18\x04 \x01(\x08\"1\n\x04Type\x12\n\n\x06UNUSED\x10\x00\x12\n\n\x06STRING\x10\x01\x12\x07\n\x03NUM\x10\x02\x12\x08\n\x04\x42OOL\x10\x03\"g\n\rSimpleMessage\x12\x0c\n\x04name\x18\x01 \x01(\t\x12#\n\x05value\x18\x02 \x01(\x0b\x32\x14.openxc.DynamicField\x12#\n\x05\x65vent\x18\x03 \x01(\x0b\x32\x14.openxc.DynamicFieldB\x1c\n\ncom.openxcB\x0e\x42inaryMessagesb\x06proto3') ) _sym_db.RegisterFileDescriptor(DESCRIPTOR) @@ -31,30 +32,34 @@ file=DESCRIPTOR, values=[ _descriptor.EnumValueDescriptor( - name='CAN', index=0, number=1, + name='UNUSED', index=0, number=0, options=None, type=None), _descriptor.EnumValueDescriptor( - name='SIMPLE', index=1, number=2, + name='CAN', index=1, number=1, options=None, type=None), _descriptor.EnumValueDescriptor( - name='DIAGNOSTIC', index=2, number=3, + name='SIMPLE', index=2, number=2, options=None, type=None), _descriptor.EnumValueDescriptor( - name='CONTROL_COMMAND', index=3, number=4, + name='DIAGNOSTIC', index=3, number=3, options=None, type=None), _descriptor.EnumValueDescriptor( - name='COMMAND_RESPONSE', index=4, number=5, + name='CONTROL_COMMAND', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='COMMAND_RESPONSE', index=5, number=5, options=None, type=None), ], containing_type=None, options=None, serialized_start=350, - serialized_end=436, + serialized_end=448, ) _sym_db.RegisterEnumDescriptor(_VEHICLEMESSAGE_TYPE) @@ -65,18 +70,22 @@ file=DESCRIPTOR, values=[ _descriptor.EnumValueDescriptor( - name='STANDARD', index=0, number=1, + name='UNUSED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='STANDARD', index=1, number=1, options=None, type=None), _descriptor.EnumValueDescriptor( - name='EXTENDED', index=1, number=2, + name='EXTENDED', index=2, number=2, options=None, type=None), ], containing_type=None, options=None, - serialized_start=546, - serialized_end=587, + serialized_start=558, + serialized_end=611, ) _sym_db.RegisterEnumDescriptor(_CANMESSAGE_FRAMEFORMAT) @@ -87,54 +96,58 @@ file=DESCRIPTOR, values=[ _descriptor.EnumValueDescriptor( - name='VERSION', index=0, number=1, + name='UNUSED', index=0, number=0, options=None, type=None), _descriptor.EnumValueDescriptor( - name='DEVICE_ID', index=1, number=2, + name='VERSION', index=1, number=1, options=None, type=None), _descriptor.EnumValueDescriptor( - name='DIAGNOSTIC', index=2, number=3, + name='DEVICE_ID', index=2, number=2, options=None, type=None), _descriptor.EnumValueDescriptor( - name='PASSTHROUGH', index=3, number=4, + name='DIAGNOSTIC', index=3, number=3, options=None, type=None), _descriptor.EnumValueDescriptor( - name='ACCEPTANCE_FILTER_BYPASS', index=4, number=5, + name='PASSTHROUGH', index=4, number=4, options=None, type=None), _descriptor.EnumValueDescriptor( - name='PAYLOAD_FORMAT', index=5, number=6, + name='ACCEPTANCE_FILTER_BYPASS', index=5, number=5, options=None, type=None), _descriptor.EnumValueDescriptor( - name='PREDEFINED_OBD2_REQUESTS', index=6, number=7, + name='PAYLOAD_FORMAT', index=6, number=6, options=None, type=None), _descriptor.EnumValueDescriptor( - name='MODEM_CONFIGURATION', index=7, number=8, + name='PREDEFINED_OBD2_REQUESTS', index=7, number=7, options=None, type=None), _descriptor.EnumValueDescriptor( - name='RTC_CONFIGURATION', index=8, number=9, + name='MODEM_CONFIGURATION', index=8, number=8, options=None, type=None), _descriptor.EnumValueDescriptor( - name='SD_MOUNT_STATUS', index=9, number=10, + name='RTC_CONFIGURATION', index=9, number=9, options=None, type=None), _descriptor.EnumValueDescriptor( - name='PLATFORM', index=10, number=11, + name='SD_MOUNT_STATUS', index=10, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PLATFORM', index=11, number=11, options=None, type=None), ], containing_type=None, options=None, - serialized_start=1151, - serialized_end=1381, + serialized_start=1175, + serialized_end=1417, ) _sym_db.RegisterEnumDescriptor(_CONTROLCOMMAND_TYPE) @@ -145,18 +158,22 @@ file=DESCRIPTOR, values=[ _descriptor.EnumValueDescriptor( - name='ADD', index=0, number=1, + name='UNUSED', index=0, number=0, options=None, type=None), _descriptor.EnumValueDescriptor( - name='CANCEL', index=1, number=2, + name='ADD', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANCEL', index=2, number=2, options=None, type=None), ], containing_type=None, options=None, - serialized_start=1513, - serialized_end=1542, + serialized_start=1549, + serialized_end=1590, ) _sym_db.RegisterEnumDescriptor(_DIAGNOSTICCONTROLCOMMAND_ACTION) @@ -167,22 +184,26 @@ file=DESCRIPTOR, values=[ _descriptor.EnumValueDescriptor( - name='JSON', index=0, number=1, + name='UNUSED', index=0, number=0, options=None, type=None), _descriptor.EnumValueDescriptor( - name='PROTOBUF', index=1, number=2, + name='JSON', index=1, number=1, options=None, type=None), _descriptor.EnumValueDescriptor( - name='MESSAGEPACK', index=2, number=3, + name='PROTOBUF', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MESSAGEPACK', index=3, number=3, options=None, type=None), ], containing_type=None, options=None, - serialized_start=1754, - serialized_end=1810, + serialized_start=1802, + serialized_end=1870, ) _sym_db.RegisterEnumDescriptor(_PAYLOADFORMATCOMMAND_PAYLOADFORMAT) @@ -203,8 +224,8 @@ ], containing_type=None, options=None, - serialized_start=2194, - serialized_end=2227, + serialized_start=2254, + serialized_end=2287, ) _sym_db.RegisterEnumDescriptor(_NETWORKOPERATORSETTINGS_NETWORKDESCRIPTOR_NETWORKTYPE) @@ -237,8 +258,8 @@ ], containing_type=None, options=None, - serialized_start=2229, - serialized_end=2328, + serialized_start=2289, + serialized_end=2388, ) _sym_db.RegisterEnumDescriptor(_NETWORKOPERATORSETTINGS_OPERATORSELECTMODE) @@ -249,18 +270,22 @@ file=DESCRIPTOR, values=[ _descriptor.EnumValueDescriptor( - name='NONE', index=0, number=1, + name='UNUSED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NONE', index=1, number=1, options=None, type=None), _descriptor.EnumValueDescriptor( - name='OBD2', index=1, number=2, + name='OBD2', index=2, number=2, options=None, type=None), ], containing_type=None, options=None, - serialized_start=2997, - serialized_end=3030, + serialized_start=3057, + serialized_end=3102, ) _sym_db.RegisterEnumDescriptor(_DIAGNOSTICREQUEST_DECODEDTYPE) @@ -271,22 +296,26 @@ file=DESCRIPTOR, values=[ _descriptor.EnumValueDescriptor( - name='STRING', index=0, number=1, + name='UNUSED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='STRING', index=1, number=1, options=None, type=None), _descriptor.EnumValueDescriptor( - name='NUM', index=1, number=2, + name='NUM', index=2, number=2, options=None, type=None), _descriptor.EnumValueDescriptor( - name='BOOL', index=2, number=3, + name='BOOL', index=3, number=3, options=None, type=None), ], containing_type=None, options=None, - serialized_start=3322, - serialized_end=3359, + serialized_start=3451, + serialized_end=3500, ) _sym_db.RegisterEnumDescriptor(_DYNAMICFIELD_TYPE) @@ -301,7 +330,7 @@ _descriptor.FieldDescriptor( name='type', full_name='openxc.VehicleMessage.type', index=0, number=1, type=14, cpp_type=8, label=1, - has_default_value=False, default_value=1, + has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None), @@ -356,11 +385,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], serialized_start=25, - serialized_end=436, + serialized_end=448, ) @@ -395,7 +425,7 @@ _descriptor.FieldDescriptor( name='frame_format', full_name='openxc.CanMessage.frame_format', index=3, number=4, type=14, cpp_type=8, label=1, - has_default_value=False, default_value=1, + has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None), @@ -408,11 +438,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=439, - serialized_end=587, + serialized_start=451, + serialized_end=611, ) @@ -426,7 +457,7 @@ _descriptor.FieldDescriptor( name='type', full_name='openxc.ControlCommand.type', index=0, number=1, type=14, cpp_type=8, label=1, - has_default_value=False, default_value=1, + has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None), @@ -488,11 +519,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=590, - serialized_end=1381, + serialized_start=614, + serialized_end=1417, ) @@ -513,7 +545,7 @@ _descriptor.FieldDescriptor( name='action', full_name='openxc.DiagnosticControlCommand.action', index=1, number=2, type=14, cpp_type=8, label=1, - has_default_value=False, default_value=1, + has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None), @@ -526,11 +558,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=1384, - serialized_end=1542, + serialized_start=1420, + serialized_end=1590, ) @@ -563,11 +596,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=1544, - serialized_end=1605, + serialized_start=1592, + serialized_end=1653, ) @@ -600,11 +634,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=1607, - serialized_end=1667, + serialized_start=1655, + serialized_end=1715, ) @@ -618,7 +653,7 @@ _descriptor.FieldDescriptor( name='format', full_name='openxc.PayloadFormatCommand.format', index=0, number=1, type=14, cpp_type=8, label=1, - has_default_value=False, default_value=1, + has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None), @@ -631,11 +666,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=1670, - serialized_end=1810, + serialized_start=1718, + serialized_end=1870, ) @@ -661,11 +697,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=1812, - serialized_end=1860, + serialized_start=1872, + serialized_end=1920, ) @@ -699,11 +736,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=2075, - serialized_end=2227, + serialized_start=2135, + serialized_end=2287, ) _NETWORKOPERATORSETTINGS = _descriptor.Descriptor( @@ -743,11 +781,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=1863, - serialized_end=2328, + serialized_start=1923, + serialized_end=2388, ) @@ -759,7 +798,7 @@ containing_type=None, fields=[ _descriptor.FieldDescriptor( - name='APN', full_name='openxc.NetworkDataSettings.APN', index=0, + name='apn', full_name='openxc.NetworkDataSettings.apn', index=0, number=1, type=9, cpp_type=9, label=1, has_default_value=False, default_value=_b("").decode('utf-8'), message_type=None, enum_type=None, containing_type=None, @@ -773,11 +812,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=2330, - serialized_end=2364, + serialized_start=2390, + serialized_end=2424, ) @@ -810,11 +850,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=2366, - serialized_end=2417, + serialized_start=2426, + serialized_end=2477, ) @@ -854,11 +895,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=2420, - serialized_end=2633, + serialized_start=2480, + serialized_end=2693, ) @@ -884,11 +926,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=2635, - serialized_end=2679, + serialized_start=2695, + serialized_end=2739, ) @@ -902,7 +945,7 @@ _descriptor.FieldDescriptor( name='type', full_name='openxc.CommandResponse.type', index=0, number=1, type=14, cpp_type=8, label=1, - has_default_value=False, default_value=1, + has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None), @@ -928,11 +971,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=2681, - serialized_end=2774, + serialized_start=2741, + serialized_end=2834, ) @@ -988,7 +1032,7 @@ _descriptor.FieldDescriptor( name='frequency', full_name='openxc.DiagnosticRequest.frequency', index=6, number=7, type=1, cpp_type=5, label=1, - has_default_value=False, default_value=0, + has_default_value=False, default_value=float(0), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None), @@ -1002,7 +1046,7 @@ _descriptor.FieldDescriptor( name='decoded_type', full_name='openxc.DiagnosticRequest.decoded_type', index=8, number=9, type=14, cpp_type=8, label=1, - has_default_value=False, default_value=1, + has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None), @@ -1015,11 +1059,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=2777, - serialized_end=3030, + serialized_start=2837, + serialized_end=3102, ) @@ -1081,7 +1126,21 @@ options=None), _descriptor.FieldDescriptor( name='value', full_name='openxc.DiagnosticResponse.value', index=7, - number=8, type=1, cpp_type=5, label=1, + number=8, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='frame', full_name='openxc.DiagnosticResponse.frame', index=8, + number=9, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='total_size', full_name='openxc.DiagnosticResponse.total_size', index=9, + number=10, type=13, cpp_type=3, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, @@ -1094,11 +1153,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=3033, - serialized_end=3194, + serialized_start=3105, + serialized_end=3323, ) @@ -1112,7 +1172,7 @@ _descriptor.FieldDescriptor( name='type', full_name='openxc.DynamicField.type', index=0, number=1, type=14, cpp_type=8, label=1, - has_default_value=False, default_value=1, + has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None), @@ -1126,7 +1186,7 @@ _descriptor.FieldDescriptor( name='numeric_value', full_name='openxc.DynamicField.numeric_value', index=2, number=3, type=1, cpp_type=5, label=1, - has_default_value=False, default_value=0, + has_default_value=False, default_value=float(0), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None), @@ -1146,11 +1206,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=3197, - serialized_end=3359, + serialized_start=3326, + serialized_end=3500, ) @@ -1190,11 +1251,12 @@ ], options=None, is_extendable=False, + syntax='proto3', extension_ranges=[], oneofs=[ ], - serialized_start=3361, - serialized_end=3464, + serialized_start=3502, + serialized_end=3605, ) _VEHICLEMESSAGE.fields_by_name['type'].enum_type = _VEHICLEMESSAGE_TYPE @@ -1232,6 +1294,7 @@ _COMMANDRESPONSE.fields_by_name['type'].enum_type = _CONTROLCOMMAND_TYPE _DIAGNOSTICREQUEST.fields_by_name['decoded_type'].enum_type = _DIAGNOSTICREQUEST_DECODEDTYPE _DIAGNOSTICREQUEST_DECODEDTYPE.containing_type = _DIAGNOSTICREQUEST +_DIAGNOSTICRESPONSE.fields_by_name['value'].message_type = _DYNAMICFIELD _DYNAMICFIELD.fields_by_name['type'].enum_type = _DYNAMICFIELD_TYPE _DYNAMICFIELD_TYPE.containing_type = _DYNAMICFIELD _SIMPLEMESSAGE.fields_by_name['value'].message_type = _DYNAMICFIELD From 26ed7fa2488d2a4c32af20982b29db9f8fc8de6b Mon Sep 17 00:00:00 2001 From: garindae Date: Mon, 19 Oct 2020 17:35:23 -0400 Subject: [PATCH 07/28] Unit test failure fixes --- openxc/formats/binary.py | 2 +- tests/streamer_test_utils.py | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/openxc/formats/binary.py b/openxc/formats/binary.py index c24fd64e..758b695d 100644 --- a/openxc/formats/binary.py +++ b/openxc/formats/binary.py @@ -310,7 +310,7 @@ def _handle_diagnostic_cc_parsed_message(cls, command, parsed_message): parsed_message['request']['bus'] = request.bus parsed_message['request']['mode'] = request.mode - if rrequest.frequency != 0: + if request.frequency != 0: parsed_message['request']['frequency'] = request.frequency if len(request.name) > 0: parsed_message['request']['name'] = request.name diff --git a/tests/streamer_test_utils.py b/tests/streamer_test_utils.py index 5c935b71..4a2f528f 100644 --- a/tests/streamer_test_utils.py +++ b/tests/streamer_test_utils.py @@ -97,13 +97,14 @@ def test_diagnostic_request(self): }) def test_diagnostic_response(self): - self._check_serialized_deserialize_equal({"bus": 1, + self._check_serialized_deserialize_equal( + {"bus": 1, "id": 1234, "mode": 1, "pid": 5, "success": True, - "payload": "0x1234", - "value": 4660}) + "payload": "0x1234" + }) def test_negative_diagnostic_response(self): self._check_serialized_deserialize_equal({"bus": 1, From 8db96a8e37f86dec210f8c851a7d3d8f9b1e9403 Mon Sep 17 00:00:00 2001 From: garindae Date: Mon, 19 Oct 2020 17:44:20 -0400 Subject: [PATCH 08/28] Python unit tests must define certain subfields --- tests/streamer_test_utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/streamer_test_utils.py b/tests/streamer_test_utils.py index 4a2f528f..2bc10483 100644 --- a/tests/streamer_test_utils.py +++ b/tests/streamer_test_utils.py @@ -52,7 +52,7 @@ def _check_serialized_deserialize_equal(self, deserialized): eq_(deserialized, self.formatter.deserialize(serialized)) def test_simple_vehicle_message(self): - self._check_serialized_deserialize_equal({'name': "foo", 'value': 42}) + self._check_serialized_deserialize_equal({'name': "foo", 'event': False, 'value': 42}) def test_command(self): self._check_serialized_deserialize_equal({'command': "version"}) From e5a932b26fd36f6700823ee0072392338dcc54cc Mon Sep 17 00:00:00 2001 From: garindae Date: Tue, 20 Oct 2020 18:57:01 -0400 Subject: [PATCH 09/28] Fixed Protobuf diag response by fixing python memory management issue --- openxc/controllers/base.py | 18 +++++++++++++----- openxc/formats/base.py | 2 -- openxc/formats/binary.py | 18 +++++++++++++----- openxc/sources/base.py | 5 +++-- openxc/sources/usb.py | 3 ++- 5 files changed, 31 insertions(+), 15 deletions(-) diff --git a/openxc/controllers/base.py b/openxc/controllers/base.py index 4eb0ddeb..8f134660 100644 --- a/openxc/controllers/base.py +++ b/openxc/controllers/base.py @@ -90,7 +90,10 @@ def handle_responses(self): else: self.diag_dict[response['id']] = MultiframeDiagnosticMessage(response) if self._return_final(response): - self.responses.append(self.diag_dict[response['id']].getResponse()) + save = self.responses.pop() + dentry = self.diag_dict[response['id']].getResponse() # DO NOT REMOVE This MUST be saved to a local variable to prevent deallocation + self.responses.append(dentry) # DO NOT REMOVE This MUST be saved to a local variable to prevent deallocation + self.responses.append(save) self.diag_dict.pop(response['id']) self.responses.append(response) if self.quit_after_first: @@ -101,14 +104,14 @@ def handle_responses(self): class MultiframeDiagnosticMessage: def __init__(self, response): - self.id = response['id'] - 16 + self.id = response['id'] self.mode = response['mode'] self.bus = response['bus'] self.pid = response['pid'] self.payload = '0x' + response['payload'][8:] def addFrame(self, response): - self.payload += response['payload'][8:] + self.payload += response['payload'][2:] def getResponse(self): request = { @@ -132,6 +135,7 @@ def _response_matches_request(self, response): original request. """ return response.get('command_response', None) == self.request['command'] + ##return True class DiagnosticResponseReceiver(ResponseReceiver): """A receiver that matches the bus, ID, mode and PID from a @@ -170,8 +174,12 @@ def _response_matches_request(self, response): return response.get('mode', None) == self.diagnostic_request['mode'] def _response_is_multiframe(self, response): - if 'frame' in response: - return True + #if 'frame' in response: + # return True + print(response) + if 'total_size' in response.keys(): + if response["total_size"] > 0: + return True return False def _return_final(self, response): diff --git a/openxc/formats/base.py b/openxc/formats/base.py index 01e3a970..c2bc07a2 100644 --- a/openxc/formats/base.py +++ b/openxc/formats/base.py @@ -3,8 +3,6 @@ class VehicleMessageStreamer(object): bytes_received = 0 def receive(self, payload): - if not isinstance(payload, bytes): - payload = payload.encode("utf-8") if len(payload) > 0: self.message_buffer += payload self.bytes_received += len(payload) diff --git a/openxc/formats/binary.py b/openxc/formats/binary.py index 758b695d..033e35b4 100644 --- a/openxc/formats/binary.py +++ b/openxc/formats/binary.py @@ -30,6 +30,9 @@ def parse_next_message(self): # 3. if it worked, great, we're oriented in the stream - continue # 4. if either couldn't be parsed, skip to the next byte and repeat while message is None and len(self.message_buffer) > 1: + ##print(self.message_buffer) + if (b"8a" in self.message_buffer): + print("8a found") message_length, message_start = _DecodeVarint(self.message_buffer, 0) # sanity check to make sure we didn't parse some huge number that's # clearly not the length prefix @@ -185,6 +188,10 @@ def _build_diagnostic_message(cls, data, message): response.bus = data['bus'] response.message_id = data['id'] response.mode = data['mode'] + if 'total_size' in data: + response.total_size = data['total_size'] + if 'frame' in data: + response.frame = data['frame'] if 'pid' in data: response.pid = data['pid'] if 'success' in data: @@ -260,12 +267,13 @@ def _build_diagnostic_parsed_message(cls, message, parsed_message): diagnostic_message = message.diagnostic_response if diagnostic_message.bus != 0: parsed_message['bus'] = diagnostic_message.bus - if diagnostic_message.message_id !=0: + if diagnostic_message.message_id != 0: parsed_message['id'] = diagnostic_message.message_id - if diagnostic_message.mode != 0: - parsed_message['mode'] = diagnostic_message.mode - if diagnostic_message.pid != 0: - parsed_message['pid'] = diagnostic_message.pid + parsed_message['mode'] = diagnostic_message.mode + parsed_message['pid'] = diagnostic_message.pid + if diagnostic_message.total_size != 0: + parsed_message['total_size'] = diagnostic_message.total_size + parsed_message['frame'] = diagnostic_message.frame parsed_message['success'] = diagnostic_message.success if diagnostic_message.value.type != openxc_pb2.DynamicField.UNUSED: ##GJA parsed_message['value'] = diagnostic_message.value diff --git a/openxc/sources/base.py b/openxc/sources/base.py index 5afe1adf..4f8213bc 100644 --- a/openxc/sources/base.py +++ b/openxc/sources/base.py @@ -206,8 +206,10 @@ def run(self): """ while self.running: payload = "" + payloadsave = "" try: payload = self.read() + payloadsave = str(payload, "cp437", "ignore") except DataSourceError as e: if self.running: LOG.warn("Can't read from data source -- stopping: %s", e) @@ -218,12 +220,11 @@ def run(self): except MissingPayloadFormatError: json_chars = ['\x00'] json_chars.extend(string.printable) - if all((char in json_chars for char in payload)): + if all((char in json_chars for char in payloadsave)): self.format = "json" else: self.format = "protobuf" self.streamer.receive(payload) - self.parse_messages() def _receive_command_response(self, message): diff --git a/openxc/sources/usb.py b/openxc/sources/usb.py index 7242a76b..865ac582 100644 --- a/openxc/sources/usb.py +++ b/openxc/sources/usb.py @@ -93,7 +93,8 @@ def _read(self, endpoint_address, timeout=None, timeout = timeout or self.DEFAULT_READ_TIMEOUT try: raw_binary = self.device.read(0x80 + endpoint_address,read_size, self.DEFAULT_INTERFACE_NUMBER, timeout) - return str(raw_binary, 'utf-8', 'ignore') # Formerly - Causes byte tranlation str(temp, 'ISO-8859-1') + return raw_binary + except (usb.core.USBError, AttributeError) as e: if e.backend_error_code in [self.LIBUSB0_TIMEOUT_CODE, self.LIBUSB1_TIMEOUT_CODE, self.OPENUSB_TIMEOUT_CODE]: # Timeout, it may just not be sending From 2606b03d0d78b199a520ab6957bf61edb2c80e3e Mon Sep 17 00:00:00 2001 From: garindae Date: Tue, 20 Oct 2020 19:05:46 -0400 Subject: [PATCH 10/28] Fixed unit tests depending on binary protobuf message structure --- tests/streamer_test_utils.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/streamer_test_utils.py b/tests/streamer_test_utils.py index 2bc10483..d01d04ac 100644 --- a/tests/streamer_test_utils.py +++ b/tests/streamer_test_utils.py @@ -102,6 +102,7 @@ def test_diagnostic_response(self): "id": 1234, "mode": 1, "pid": 5, + "frame": 0, "success": True, "payload": "0x1234" }) @@ -109,6 +110,7 @@ def test_diagnostic_response(self): def test_negative_diagnostic_response(self): self._check_serialized_deserialize_equal({"bus": 1, "id": 1234, + "pid": 0, "mode": 1, "success": False, "negative_response_code": 17}) From ce8d48bd7555f8e5858cfb8dc8cc90a6fd49dae8 Mon Sep 17 00:00:00 2001 From: garindae Date: Tue, 20 Oct 2020 19:08:55 -0400 Subject: [PATCH 11/28] More unit tests fixes for message elements --- tests/streamer_test_utils.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/streamer_test_utils.py b/tests/streamer_test_utils.py index d01d04ac..c935a2b1 100644 --- a/tests/streamer_test_utils.py +++ b/tests/streamer_test_utils.py @@ -111,6 +111,7 @@ def test_negative_diagnostic_response(self): self._check_serialized_deserialize_equal({"bus": 1, "id": 1234, "pid": 0, + "frame": 0, "mode": 1, "success": False, "negative_response_code": 17}) From e845ad15a1da19d06835fbb8766ddd6cb0bf6cf9 Mon Sep 17 00:00:00 2001 From: garindae Date: Tue, 20 Oct 2020 19:13:44 -0400 Subject: [PATCH 12/28] protected string conversion line --- openxc/sources/base.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/openxc/sources/base.py b/openxc/sources/base.py index 4f8213bc..1192c07b 100644 --- a/openxc/sources/base.py +++ b/openxc/sources/base.py @@ -209,7 +209,10 @@ def run(self): payloadsave = "" try: payload = self.read() - payloadsave = str(payload, "cp437", "ignore") + try: + payloadsave = str(payload, "cp437", "ignore") + except: + payloadsave = "" except DataSourceError as e: if self.running: LOG.warn("Can't read from data source -- stopping: %s", e) From 3585f067f2991379cb456aa5415d2725bd73bc3d Mon Sep 17 00:00:00 2001 From: garindae Date: Tue, 20 Oct 2020 19:28:44 -0400 Subject: [PATCH 13/28] Unit tests --- openxc/formats/binary.py | 3 --- openxc/sources/trace.py | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/openxc/formats/binary.py b/openxc/formats/binary.py index 033e35b4..6b7a00b9 100644 --- a/openxc/formats/binary.py +++ b/openxc/formats/binary.py @@ -30,9 +30,6 @@ def parse_next_message(self): # 3. if it worked, great, we're oriented in the stream - continue # 4. if either couldn't be parsed, skip to the next byte and repeat while message is None and len(self.message_buffer) > 1: - ##print(self.message_buffer) - if (b"8a" in self.message_buffer): - print("8a found") message_length, message_start = _DecodeVarint(self.message_buffer, 0) # sanity check to make sure we didn't parse some huge number that's # clearly not the length prefix diff --git a/openxc/sources/trace.py b/openxc/sources/trace.py index 4ddbdff9..b9d87c0a 100644 --- a/openxc/sources/trace.py +++ b/openxc/sources/trace.py @@ -67,7 +67,7 @@ def read(self): if self.realtime and timestamp is not None: self._store_timestamp(timestamp) self._wait(self.starting_time, self.first_timestamp, timestamp) - return line + "\x00" + return (line + "\x00").encode("cp437") @staticmethod def _open_file(filename): From 25d5e1c296e5b1824787945426eb5274a74a3529 Mon Sep 17 00:00:00 2001 From: vinodsama Date: Mon, 7 Dec 2020 15:00:04 -0500 Subject: [PATCH 14/28] Fixed the sonar major issues --- openxc/controllers/base.py | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/openxc/controllers/base.py b/openxc/controllers/base.py index 8f134660..f284f728 100644 --- a/openxc/controllers/base.py +++ b/openxc/controllers/base.py @@ -83,8 +83,7 @@ def handle_responses(self): response = self.queue.get( timeout=self.COMMAND_RESPONSE_TIMEOUT_S) if self._response_matches_request(response): - if type(self) == DiagnosticResponseReceiver: - if self._response_is_multiframe(response): + if type(self) == DiagnosticResponseReceiver and self._response_is_multiframe(response): if response['id'] in self.diag_dict: self.diag_dict[response['id']].addFrame(response) else: @@ -135,7 +134,6 @@ def _response_matches_request(self, response): original request. """ return response.get('command_response', None) == self.request['command'] - ##return True class DiagnosticResponseReceiver(ResponseReceiver): """A receiver that matches the bus, ID, mode and PID from a @@ -174,11 +172,8 @@ def _response_matches_request(self, response): return response.get('mode', None) == self.diagnostic_request['mode'] def _response_is_multiframe(self, response): - #if 'frame' in response: - # return True print(response) - if 'total_size' in response.keys(): - if response["total_size"] > 0: + if 'total_size' in response.keys() and response["total_size"] > 0: return True return False From f7ba31cbff4b23a5e8fb926f4a87d40162b7707c Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Tue, 9 Feb 2021 10:15:06 -0500 Subject: [PATCH 15/28] Create initial github actions yml --- .github/workflows/python-test.yml | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 .github/workflows/python-test.yml diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml new file mode 100644 index 00000000..a2719c0a --- /dev/null +++ b/.github/workflows/python-test.yml @@ -0,0 +1,31 @@ +# This workflow will install Python dependencies, run tests and lint with a variety of Python versions +# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions + +name: Python package + +on: [ push, pull_request ] + +jobs: + build: + + runs-on: ubuntu-latest + strategy: + matrix: + python-version: [3.7, 3.8, 3.9] + + steps: + - uses: actions/checkout@v2 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: | + sudo apt-get install python-bluetooth -qq -y + python -m pip install --upgrade pip + python -m pip install pytest pyserial==3.1.1 coveralls + if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + + - name: Test + run: | + python setup.py test From 015e014b42605a9cb04e3a9072806b9b70efc343 Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Tue, 9 Feb 2021 10:16:53 -0500 Subject: [PATCH 16/28] Update python-test.yml --- .github/workflows/python-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml index a2719c0a..d37b4dd3 100644 --- a/.github/workflows/python-test.yml +++ b/.github/workflows/python-test.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [3.7, 3.8, 3.9] + python-version: [3.6.7] steps: - uses: actions/checkout@v2 From f7a1316ea06154f12a7ba12f7b7a67cd37a701e2 Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Tue, 9 Feb 2021 10:37:25 -0500 Subject: [PATCH 17/28] Update python-test.yml --- .github/workflows/python-test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml index d37b4dd3..899edcc3 100644 --- a/.github/workflows/python-test.yml +++ b/.github/workflows/python-test.yml @@ -3,7 +3,7 @@ name: Python package -on: [ push, pull_request ] +on: [ pull_request ] jobs: build: @@ -29,3 +29,4 @@ jobs: - name: Test run: | python setup.py test + From b8f76caabdade8627bfe6781ab163ef37a45d892 Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Tue, 9 Feb 2021 10:44:58 -0500 Subject: [PATCH 18/28] Create python-publish.yml --- .github/workflows/python-publish.yml | 31 ++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 .github/workflows/python-publish.yml diff --git a/.github/workflows/python-publish.yml b/.github/workflows/python-publish.yml new file mode 100644 index 00000000..1a03a7b6 --- /dev/null +++ b/.github/workflows/python-publish.yml @@ -0,0 +1,31 @@ +# This workflow will upload a Python Package using Twine when a release is created +# For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries + +name: Upload Python Package + +on: + release: + types: [created] + +jobs: + deploy: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: '3.x' + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install setuptools wheel twine + - name: Build and publish + env: + TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} + TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} + run: | + python setup.py sdist bdist_wheel + twine upload dist/* From ee47e524058ffc2ddf76cf0261b0c2f845c9cafc Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Tue, 9 Feb 2021 10:51:29 -0500 Subject: [PATCH 19/28] update badge --- README.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.rst b/README.rst index ef42bca1..fe317feb 100644 --- a/README.rst +++ b/README.rst @@ -11,8 +11,8 @@ OpenXC for Python :Source: http://github.com/openxc/openxc-python/ :Keywords: vehicle, openxc, python -.. image:: https://travis-ci.org/openxc/openxc-python.svg?branch=master - :target: https://travis-ci.org/openxc/openxc-python +.. image:: https://github.com/openxc/openxc-python/workflows/Python%20package/badge.svg + :target: https://github.com/openxc/openxc-python/actions?query=workflow%3A%22Python+package%22 .. image:: https://coveralls.io/repos/openxc/openxc-python/badge.png?branch=master :target: https://coveralls.io/r/openxc/openxc-python?branch=master From b7876232abc809abb949dc2b97d0c276873aea69 Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Tue, 9 Feb 2021 10:52:46 -0500 Subject: [PATCH 20/28] update name --- .github/workflows/python-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml index 899edcc3..92b0fd25 100644 --- a/.github/workflows/python-test.yml +++ b/.github/workflows/python-test.yml @@ -1,7 +1,7 @@ # This workflow will install Python dependencies, run tests and lint with a variety of Python versions # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions -name: Python package +name: Test Open XC Pyton on: [ pull_request ] From f4d33745f615a86e1dcdd12a98d06e717311f4ec Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Tue, 9 Feb 2021 10:54:58 -0500 Subject: [PATCH 21/28] fix link --- README.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.rst b/README.rst index fe317feb..02e2f6dc 100644 --- a/README.rst +++ b/README.rst @@ -11,8 +11,8 @@ OpenXC for Python :Source: http://github.com/openxc/openxc-python/ :Keywords: vehicle, openxc, python -.. image:: https://github.com/openxc/openxc-python/workflows/Python%20package/badge.svg - :target: https://github.com/openxc/openxc-python/actions?query=workflow%3A%22Python+package%22 +.. image:: https://github.com/openxc/openxc-python/workflows/Test%20Open%20XC%20Pyton/badge.svg + :target: https://github.com/openxc/openxc-python/actions?query=workflow%3A%2Test%20Open%20XC%20Pyton%22 .. image:: https://coveralls.io/repos/openxc/openxc-python/badge.png?branch=master :target: https://coveralls.io/r/openxc/openxc-python?branch=master From d222e256979d57ceeffcd1b223bdd15a71f85e8b Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Tue, 9 Feb 2021 10:56:19 -0500 Subject: [PATCH 22/28] fix link --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 02e2f6dc..927bbf36 100644 --- a/README.rst +++ b/README.rst @@ -12,7 +12,7 @@ OpenXC for Python :Keywords: vehicle, openxc, python .. image:: https://github.com/openxc/openxc-python/workflows/Test%20Open%20XC%20Pyton/badge.svg - :target: https://github.com/openxc/openxc-python/actions?query=workflow%3A%2Test%20Open%20XC%20Pyton%22 + :target: https://github.com/openxc/openxc-python/actions?query=workflow%3A%22Test+Open+XC+Pyton%22 .. image:: https://coveralls.io/repos/openxc/openxc-python/badge.png?branch=master :target: https://coveralls.io/r/openxc/openxc-python?branch=master From 45792439cd859e917e299e33e11ffcb1e5580186 Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Tue, 23 Feb 2021 12:42:23 -0500 Subject: [PATCH 23/28] Travis Decommission --- .travis.yml | 20 -------------------- 1 file changed, 20 deletions(-) delete mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index a25607fb..00000000 --- a/.travis.yml +++ /dev/null @@ -1,20 +0,0 @@ -language: python -dist: xenial -python: - - "3.6.7" -before_install: - - sudo apt-get -o Acquire::https::No-Cache=True -o Acquire::http::No-Cache=True update -qq - - sudo apt-get install python-bluetooth -qq -y - - pip install pyserial==3.1.1 - - pip install coveralls -install: pip install -q -e . -script: python setup.py test -after_success: - - coverage run --source=openxc setup.py test - - coveralls -deploy: - provider: pypi - user: "__token__" - password: $PYPI_PASSWORD - on: - branch: master From 09fee20d26b32c144c72dd8ba9571f1880821112 Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Tue, 1 Jun 2021 14:39:26 -0400 Subject: [PATCH 24/28] Update proto file --- openxc/openxc_pb2.py | 615 ++++++++++++++++++++++++------------------- setup.py | 2 +- 2 files changed, 343 insertions(+), 274 deletions(-) diff --git a/openxc/openxc_pb2.py b/openxc/openxc_pb2.py index 48e040ba..0739579a 100644 --- a/openxc/openxc_pb2.py +++ b/openxc/openxc_pb2.py @@ -1,13 +1,11 @@ +# -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! # source: openxc.proto - -import sys -_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +"""Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import message as _message from google.protobuf import reflection as _reflection from google.protobuf import symbol_database as _symbol_database -from google.protobuf import descriptor_pb2 # @@protoc_insertion_point(imports) _sym_db = _symbol_database.Default() @@ -19,9 +17,10 @@ name='openxc.proto', package='openxc', syntax='proto3', - serialized_pb=_b('\n\x0copenxc.proto\x12\x06openxc\"\xa7\x03\n\x0eVehicleMessage\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.VehicleMessage.Type\x12\'\n\x0b\x63\x61n_message\x18\x02 \x01(\x0b\x32\x12.openxc.CanMessage\x12-\n\x0esimple_message\x18\x03 \x01(\x0b\x32\x15.openxc.SimpleMessage\x12\x37\n\x13\x64iagnostic_response\x18\x04 \x01(\x0b\x32\x1a.openxc.DiagnosticResponse\x12/\n\x0f\x63ontrol_command\x18\x05 \x01(\x0b\x32\x16.openxc.ControlCommand\x12\x31\n\x10\x63ommand_response\x18\x06 \x01(\x0b\x32\x17.openxc.CommandResponse\x12\x11\n\ttimestamp\x18\x07 \x01(\x04\"b\n\x04Type\x12\n\n\x06UNUSED\x10\x00\x12\x07\n\x03\x43\x41N\x10\x01\x12\n\n\x06SIMPLE\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x13\n\x0f\x43ONTROL_COMMAND\x10\x04\x12\x14\n\x10\x43OMMAND_RESPONSE\x10\x05\"\xa0\x01\n\nCanMessage\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\n\n\x02id\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\x12\x34\n\x0c\x66rame_format\x18\x04 \x01(\x0e\x32\x1e.openxc.CanMessage.FrameFormat\"5\n\x0b\x46rameFormat\x12\n\n\x06UNUSED\x10\x00\x12\x0c\n\x08STANDARD\x10\x01\x12\x0c\n\x08\x45XTENDED\x10\x02\"\xa3\x06\n\x0e\x43ontrolCommand\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.ControlCommand.Type\x12<\n\x12\x64iagnostic_request\x18\x02 \x01(\x0b\x32 .openxc.DiagnosticControlCommand\x12G\n\x18passthrough_mode_request\x18\x03 \x01(\x0b\x32%.openxc.PassthroughModeControlCommand\x12O\n acceptance_filter_bypass_command\x18\x04 \x01(\x0b\x32%.openxc.AcceptanceFilterBypassCommand\x12<\n\x16payload_format_command\x18\x05 \x01(\x0b\x32\x1c.openxc.PayloadFormatCommand\x12O\n predefined_obd2_requests_command\x18\x06 \x01(\x0b\x32%.openxc.PredefinedObd2RequestsCommand\x12\x46\n\x1bmodem_configuration_command\x18\x07 \x01(\x0b\x32!.openxc.ModemConfigurationCommand\x12\x42\n\x19rtc_configuration_command\x18\x08 \x01(\x0b\x32\x1f.openxc.RTCConfigurationCommand\"\xf2\x01\n\x04Type\x12\n\n\x06UNUSED\x10\x00\x12\x0b\n\x07VERSION\x10\x01\x12\r\n\tDEVICE_ID\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x0f\n\x0bPASSTHROUGH\x10\x04\x12\x1c\n\x18\x41\x43\x43\x45PTANCE_FILTER_BYPASS\x10\x05\x12\x12\n\x0ePAYLOAD_FORMAT\x10\x06\x12\x1c\n\x18PREDEFINED_OBD2_REQUESTS\x10\x07\x12\x17\n\x13MODEM_CONFIGURATION\x10\x08\x12\x15\n\x11RTC_CONFIGURATION\x10\t\x12\x13\n\x0fSD_MOUNT_STATUS\x10\n\x12\x0c\n\x08PLATFORM\x10\x0b\"\xaa\x01\n\x18\x44iagnosticControlCommand\x12*\n\x07request\x18\x01 \x01(\x0b\x32\x19.openxc.DiagnosticRequest\x12\x37\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\'.openxc.DiagnosticControlCommand.Action\")\n\x06\x41\x63tion\x12\n\n\x06UNUSED\x10\x00\x12\x07\n\x03\x41\x44\x44\x10\x01\x12\n\n\x06\x43\x41NCEL\x10\x02\"=\n\x1dPassthroughModeControlCommand\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\"<\n\x1d\x41\x63\x63\x65ptanceFilterBypassCommand\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x0e\n\x06\x62ypass\x18\x02 \x01(\x08\"\x98\x01\n\x14PayloadFormatCommand\x12:\n\x06\x66ormat\x18\x01 \x01(\x0e\x32*.openxc.PayloadFormatCommand.PayloadFormat\"D\n\rPayloadFormat\x12\n\n\x06UNUSED\x10\x00\x12\x08\n\x04JSON\x10\x01\x12\x0c\n\x08PROTOBUF\x10\x02\x12\x0f\n\x0bMESSAGEPACK\x10\x03\"0\n\x1dPredefinedObd2RequestsCommand\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\"\xd1\x03\n\x17NetworkOperatorSettings\x12\x18\n\x10\x61llowDataRoaming\x18\x01 \x01(\x08\x12N\n\x12operatorSelectMode\x18\x02 \x01(\x0e\x32\x32.openxc.NetworkOperatorSettings.OperatorSelectMode\x12L\n\x11networkDescriptor\x18\x03 \x01(\x0b\x32\x31.openxc.NetworkOperatorSettings.NetworkDescriptor\x1a\x98\x01\n\x11NetworkDescriptor\x12\x0c\n\x04PLMN\x18\x01 \x01(\r\x12R\n\x0bnetworkType\x18\x02 \x01(\x0e\x32=.openxc.NetworkOperatorSettings.NetworkDescriptor.NetworkType\"!\n\x0bNetworkType\x12\x07\n\x03GSM\x10\x00\x12\t\n\x05UTRAN\x10\x02\"c\n\x12OperatorSelectMode\x12\r\n\tAUTOMATIC\x10\x00\x12\n\n\x06MANUAL\x10\x01\x12\x0e\n\nDEREGISTER\x10\x02\x12\x0c\n\x08SET_ONLY\x10\x03\x12\x14\n\x10MANUAL_AUTOMATIC\x10\x04\"\"\n\x13NetworkDataSettings\x12\x0b\n\x03\x61pn\x18\x01 \x01(\t\"3\n\x15ServerConnectSettings\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\r\"\xd5\x01\n\x19ModemConfigurationCommand\x12@\n\x17networkOperatorSettings\x18\x01 \x01(\x0b\x32\x1f.openxc.NetworkOperatorSettings\x12\x38\n\x13networkDataSettings\x18\x02 \x01(\x0b\x32\x1b.openxc.NetworkDataSettings\x12<\n\x15serverConnectSettings\x18\x03 \x01(\x0b\x32\x1d.openxc.ServerConnectSettings\",\n\x17RTCConfigurationCommand\x12\x11\n\tunix_time\x18\x01 \x01(\r\"]\n\x0f\x43ommandResponse\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.ControlCommand.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\x08\"\x89\x02\n\x11\x44iagnosticRequest\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04mode\x18\x03 \x01(\r\x12\x0b\n\x03pid\x18\x04 \x01(\r\x12\x0f\n\x07payload\x18\x05 \x01(\x0c\x12\x1a\n\x12multiple_responses\x18\x06 \x01(\x08\x12\x11\n\tfrequency\x18\x07 \x01(\x01\x12\x0c\n\x04name\x18\x08 \x01(\t\x12;\n\x0c\x64\x65\x63oded_type\x18\t \x01(\x0e\x32%.openxc.DiagnosticRequest.DecodedType\"-\n\x0b\x44\x65\x63odedType\x12\n\n\x06UNUSED\x10\x00\x12\x08\n\x04NONE\x10\x01\x12\x08\n\x04OBD2\x10\x02\"\xda\x01\n\x12\x44iagnosticResponse\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04mode\x18\x03 \x01(\r\x12\x0b\n\x03pid\x18\x04 \x01(\r\x12\x0f\n\x07success\x18\x05 \x01(\x08\x12\x1e\n\x16negative_response_code\x18\x06 \x01(\r\x12\x0f\n\x07payload\x18\x07 \x01(\x0c\x12#\n\x05value\x18\x08 \x01(\x0b\x32\x14.openxc.DynamicField\x12\r\n\x05\x66rame\x18\t \x01(\x05\x12\x12\n\ntotal_size\x18\n \x01(\r\"\xae\x01\n\x0c\x44ynamicField\x12\'\n\x04type\x18\x01 \x01(\x0e\x32\x19.openxc.DynamicField.Type\x12\x14\n\x0cstring_value\x18\x02 \x01(\t\x12\x15\n\rnumeric_value\x18\x03 \x01(\x01\x12\x15\n\rboolean_value\x18\x04 \x01(\x08\"1\n\x04Type\x12\n\n\x06UNUSED\x10\x00\x12\n\n\x06STRING\x10\x01\x12\x07\n\x03NUM\x10\x02\x12\x08\n\x04\x42OOL\x10\x03\"g\n\rSimpleMessage\x12\x0c\n\x04name\x18\x01 \x01(\t\x12#\n\x05value\x18\x02 \x01(\x0b\x32\x14.openxc.DynamicField\x12#\n\x05\x65vent\x18\x03 \x01(\x0b\x32\x14.openxc.DynamicFieldB\x1c\n\ncom.openxcB\x0e\x42inaryMessagesb\x06proto3') + serialized_options=b'\n\ncom.openxcB\016BinaryMessages', + create_key=_descriptor._internal_create_key, + serialized_pb=b'\n\x0copenxc.proto\x12\x06openxc\"\xa7\x03\n\x0eVehicleMessage\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.VehicleMessage.Type\x12\'\n\x0b\x63\x61n_message\x18\x02 \x01(\x0b\x32\x12.openxc.CanMessage\x12-\n\x0esimple_message\x18\x03 \x01(\x0b\x32\x15.openxc.SimpleMessage\x12\x37\n\x13\x64iagnostic_response\x18\x04 \x01(\x0b\x32\x1a.openxc.DiagnosticResponse\x12/\n\x0f\x63ontrol_command\x18\x05 \x01(\x0b\x32\x16.openxc.ControlCommand\x12\x31\n\x10\x63ommand_response\x18\x06 \x01(\x0b\x32\x17.openxc.CommandResponse\x12\x11\n\ttimestamp\x18\x07 \x01(\x04\"b\n\x04Type\x12\n\n\x06UNUSED\x10\x00\x12\x07\n\x03\x43\x41N\x10\x01\x12\n\n\x06SIMPLE\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x13\n\x0f\x43ONTROL_COMMAND\x10\x04\x12\x14\n\x10\x43OMMAND_RESPONSE\x10\x05\"\xa0\x01\n\nCanMessage\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\n\n\x02id\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\x12\x34\n\x0c\x66rame_format\x18\x04 \x01(\x0e\x32\x1e.openxc.CanMessage.FrameFormat\"5\n\x0b\x46rameFormat\x12\n\n\x06UNUSED\x10\x00\x12\x0c\n\x08STANDARD\x10\x01\x12\x0c\n\x08\x45XTENDED\x10\x02\"\xa3\x06\n\x0e\x43ontrolCommand\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.ControlCommand.Type\x12<\n\x12\x64iagnostic_request\x18\x02 \x01(\x0b\x32 .openxc.DiagnosticControlCommand\x12G\n\x18passthrough_mode_request\x18\x03 \x01(\x0b\x32%.openxc.PassthroughModeControlCommand\x12O\n acceptance_filter_bypass_command\x18\x04 \x01(\x0b\x32%.openxc.AcceptanceFilterBypassCommand\x12<\n\x16payload_format_command\x18\x05 \x01(\x0b\x32\x1c.openxc.PayloadFormatCommand\x12O\n predefined_obd2_requests_command\x18\x06 \x01(\x0b\x32%.openxc.PredefinedObd2RequestsCommand\x12\x46\n\x1bmodem_configuration_command\x18\x07 \x01(\x0b\x32!.openxc.ModemConfigurationCommand\x12\x42\n\x19rtc_configuration_command\x18\x08 \x01(\x0b\x32\x1f.openxc.RTCConfigurationCommand\"\xf2\x01\n\x04Type\x12\n\n\x06UNUSED\x10\x00\x12\x0b\n\x07VERSION\x10\x01\x12\r\n\tDEVICE_ID\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x0f\n\x0bPASSTHROUGH\x10\x04\x12\x1c\n\x18\x41\x43\x43\x45PTANCE_FILTER_BYPASS\x10\x05\x12\x12\n\x0ePAYLOAD_FORMAT\x10\x06\x12\x1c\n\x18PREDEFINED_OBD2_REQUESTS\x10\x07\x12\x17\n\x13MODEM_CONFIGURATION\x10\x08\x12\x15\n\x11RTC_CONFIGURATION\x10\t\x12\x13\n\x0fSD_MOUNT_STATUS\x10\n\x12\x0c\n\x08PLATFORM\x10\x0b\"\xaa\x01\n\x18\x44iagnosticControlCommand\x12*\n\x07request\x18\x01 \x01(\x0b\x32\x19.openxc.DiagnosticRequest\x12\x37\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\'.openxc.DiagnosticControlCommand.Action\")\n\x06\x41\x63tion\x12\n\n\x06UNUSED\x10\x00\x12\x07\n\x03\x41\x44\x44\x10\x01\x12\n\n\x06\x43\x41NCEL\x10\x02\"=\n\x1dPassthroughModeControlCommand\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\"<\n\x1d\x41\x63\x63\x65ptanceFilterBypassCommand\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x0e\n\x06\x62ypass\x18\x02 \x01(\x08\"\x98\x01\n\x14PayloadFormatCommand\x12:\n\x06\x66ormat\x18\x01 \x01(\x0e\x32*.openxc.PayloadFormatCommand.PayloadFormat\"D\n\rPayloadFormat\x12\n\n\x06UNUSED\x10\x00\x12\x08\n\x04JSON\x10\x01\x12\x0c\n\x08PROTOBUF\x10\x02\x12\x0f\n\x0bMESSAGEPACK\x10\x03\"0\n\x1dPredefinedObd2RequestsCommand\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\"\xd1\x03\n\x17NetworkOperatorSettings\x12\x18\n\x10\x61llowDataRoaming\x18\x01 \x01(\x08\x12N\n\x12operatorSelectMode\x18\x02 \x01(\x0e\x32\x32.openxc.NetworkOperatorSettings.OperatorSelectMode\x12L\n\x11networkDescriptor\x18\x03 \x01(\x0b\x32\x31.openxc.NetworkOperatorSettings.NetworkDescriptor\x1a\x98\x01\n\x11NetworkDescriptor\x12\x0c\n\x04PLMN\x18\x01 \x01(\r\x12R\n\x0bnetworkType\x18\x02 \x01(\x0e\x32=.openxc.NetworkOperatorSettings.NetworkDescriptor.NetworkType\"!\n\x0bNetworkType\x12\x07\n\x03GSM\x10\x00\x12\t\n\x05UTRAN\x10\x02\"c\n\x12OperatorSelectMode\x12\r\n\tAUTOMATIC\x10\x00\x12\n\n\x06MANUAL\x10\x01\x12\x0e\n\nDEREGISTER\x10\x02\x12\x0c\n\x08SET_ONLY\x10\x03\x12\x14\n\x10MANUAL_AUTOMATIC\x10\x04\"\"\n\x13NetworkDataSettings\x12\x0b\n\x03\x61pn\x18\x01 \x01(\t\"3\n\x15ServerConnectSettings\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\r\"\xd5\x01\n\x19ModemConfigurationCommand\x12@\n\x17networkOperatorSettings\x18\x01 \x01(\x0b\x32\x1f.openxc.NetworkOperatorSettings\x12\x38\n\x13networkDataSettings\x18\x02 \x01(\x0b\x32\x1b.openxc.NetworkDataSettings\x12<\n\x15serverConnectSettings\x18\x03 \x01(\x0b\x32\x1d.openxc.ServerConnectSettings\",\n\x17RTCConfigurationCommand\x12\x11\n\tunix_time\x18\x01 \x01(\r\"]\n\x0f\x43ommandResponse\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.ControlCommand.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\x08\"\x89\x02\n\x11\x44iagnosticRequest\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04mode\x18\x03 \x01(\r\x12\x0b\n\x03pid\x18\x04 \x01(\r\x12\x0f\n\x07payload\x18\x05 \x01(\x0c\x12\x1a\n\x12multiple_responses\x18\x06 \x01(\x08\x12\x11\n\tfrequency\x18\x07 \x01(\x01\x12\x0c\n\x04name\x18\x08 \x01(\t\x12;\n\x0c\x64\x65\x63oded_type\x18\t \x01(\x0e\x32%.openxc.DiagnosticRequest.DecodedType\"-\n\x0b\x44\x65\x63odedType\x12\n\n\x06UNUSED\x10\x00\x12\x08\n\x04NONE\x10\x01\x12\x08\n\x04OBD2\x10\x02\"\xda\x01\n\x12\x44iagnosticResponse\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04mode\x18\x03 \x01(\r\x12\x0b\n\x03pid\x18\x04 \x01(\r\x12\x0f\n\x07success\x18\x05 \x01(\x08\x12\x1e\n\x16negative_response_code\x18\x06 \x01(\r\x12\x0f\n\x07payload\x18\x07 \x01(\x0c\x12#\n\x05value\x18\x08 \x01(\x0b\x32\x14.openxc.DynamicField\x12\r\n\x05\x66rame\x18\t \x01(\x05\x12\x12\n\ntotal_size\x18\n \x01(\r\"\xae\x01\n\x0c\x44ynamicField\x12\'\n\x04type\x18\x01 \x01(\x0e\x32\x19.openxc.DynamicField.Type\x12\x14\n\x0cstring_value\x18\x02 \x01(\t\x12\x15\n\rnumeric_value\x18\x03 \x01(\x01\x12\x15\n\rboolean_value\x18\x04 \x01(\x08\"1\n\x04Type\x12\n\n\x06UNUSED\x10\x00\x12\n\n\x06STRING\x10\x01\x12\x07\n\x03NUM\x10\x02\x12\x08\n\x04\x42OOL\x10\x03\"g\n\rSimpleMessage\x12\x0c\n\x04name\x18\x01 \x01(\t\x12#\n\x05value\x18\x02 \x01(\x0b\x32\x14.openxc.DynamicField\x12#\n\x05\x65vent\x18\x03 \x01(\x0b\x32\x14.openxc.DynamicFieldB\x1c\n\ncom.openxcB\x0e\x42inaryMessagesb\x06proto3' ) -_sym_db.RegisterFileDescriptor(DESCRIPTOR) @@ -30,34 +29,41 @@ full_name='openxc.VehicleMessage.Type', filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name='UNUSED', index=0, number=0, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='CAN', index=1, number=1, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='SIMPLE', index=2, number=2, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='DIAGNOSTIC', index=3, number=3, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='CONTROL_COMMAND', index=4, number=4, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='COMMAND_RESPONSE', index=5, number=5, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), ], containing_type=None, - options=None, + serialized_options=None, serialized_start=350, serialized_end=448, ) @@ -68,22 +74,26 @@ full_name='openxc.CanMessage.FrameFormat', filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name='UNUSED', index=0, number=0, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='STANDARD', index=1, number=1, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='EXTENDED', index=2, number=2, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), ], containing_type=None, - options=None, + serialized_options=None, serialized_start=558, serialized_end=611, ) @@ -94,58 +104,71 @@ full_name='openxc.ControlCommand.Type', filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name='UNUSED', index=0, number=0, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='VERSION', index=1, number=1, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='DEVICE_ID', index=2, number=2, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='DIAGNOSTIC', index=3, number=3, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='PASSTHROUGH', index=4, number=4, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='ACCEPTANCE_FILTER_BYPASS', index=5, number=5, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='PAYLOAD_FORMAT', index=6, number=6, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='PREDEFINED_OBD2_REQUESTS', index=7, number=7, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='MODEM_CONFIGURATION', index=8, number=8, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='RTC_CONFIGURATION', index=9, number=9, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='SD_MOUNT_STATUS', index=10, number=10, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='PLATFORM', index=11, number=11, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), ], containing_type=None, - options=None, + serialized_options=None, serialized_start=1175, serialized_end=1417, ) @@ -156,22 +179,26 @@ full_name='openxc.DiagnosticControlCommand.Action', filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name='UNUSED', index=0, number=0, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='ADD', index=1, number=1, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='CANCEL', index=2, number=2, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), ], containing_type=None, - options=None, + serialized_options=None, serialized_start=1549, serialized_end=1590, ) @@ -182,26 +209,31 @@ full_name='openxc.PayloadFormatCommand.PayloadFormat', filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name='UNUSED', index=0, number=0, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='JSON', index=1, number=1, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='PROTOBUF', index=2, number=2, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='MESSAGEPACK', index=3, number=3, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), ], containing_type=None, - options=None, + serialized_options=None, serialized_start=1802, serialized_end=1870, ) @@ -212,18 +244,21 @@ full_name='openxc.NetworkOperatorSettings.NetworkDescriptor.NetworkType', filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name='GSM', index=0, number=0, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='UTRAN', index=1, number=2, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), ], containing_type=None, - options=None, + serialized_options=None, serialized_start=2254, serialized_end=2287, ) @@ -234,30 +269,36 @@ full_name='openxc.NetworkOperatorSettings.OperatorSelectMode', filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name='AUTOMATIC', index=0, number=0, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='MANUAL', index=1, number=1, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='DEREGISTER', index=2, number=2, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='SET_ONLY', index=3, number=3, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='MANUAL_AUTOMATIC', index=4, number=4, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), ], containing_type=None, - options=None, + serialized_options=None, serialized_start=2289, serialized_end=2388, ) @@ -268,22 +309,26 @@ full_name='openxc.DiagnosticRequest.DecodedType', filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name='UNUSED', index=0, number=0, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='NONE', index=1, number=1, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='OBD2', index=2, number=2, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), ], containing_type=None, - options=None, + serialized_options=None, serialized_start=3057, serialized_end=3102, ) @@ -294,26 +339,31 @@ full_name='openxc.DynamicField.Type', filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name='UNUSED', index=0, number=0, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='STRING', index=1, number=1, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='NUM', index=2, number=2, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( name='BOOL', index=3, number=3, - options=None, - type=None), + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), ], containing_type=None, - options=None, + serialized_options=None, serialized_start=3451, serialized_end=3500, ) @@ -326,6 +376,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='type', full_name='openxc.VehicleMessage.type', index=0, @@ -333,49 +384,49 @@ has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='can_message', full_name='openxc.VehicleMessage.can_message', index=1, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='simple_message', full_name='openxc.VehicleMessage.simple_message', index=2, number=3, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='diagnostic_response', full_name='openxc.VehicleMessage.diagnostic_response', index=3, number=4, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='control_command', full_name='openxc.VehicleMessage.control_command', index=4, number=5, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='command_response', full_name='openxc.VehicleMessage.command_response', index=5, number=6, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='timestamp', full_name='openxc.VehicleMessage.timestamp', index=6, number=7, type=4, cpp_type=4, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], @@ -383,7 +434,7 @@ enum_types=[ _VEHICLEMESSAGE_TYPE, ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -400,6 +451,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='bus', full_name='openxc.CanMessage.bus', index=0, @@ -407,28 +459,28 @@ has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='id', full_name='openxc.CanMessage.id', index=1, number=2, type=13, cpp_type=3, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='data', full_name='openxc.CanMessage.data', index=2, number=3, type=12, cpp_type=9, label=1, - has_default_value=False, default_value=_b(""), + has_default_value=False, default_value=b"", message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='frame_format', full_name='openxc.CanMessage.frame_format', index=3, number=4, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], @@ -436,7 +488,7 @@ enum_types=[ _CANMESSAGE_FRAMEFORMAT, ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -453,6 +505,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='type', full_name='openxc.ControlCommand.type', index=0, @@ -460,56 +513,56 @@ has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='diagnostic_request', full_name='openxc.ControlCommand.diagnostic_request', index=1, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='passthrough_mode_request', full_name='openxc.ControlCommand.passthrough_mode_request', index=2, number=3, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='acceptance_filter_bypass_command', full_name='openxc.ControlCommand.acceptance_filter_bypass_command', index=3, number=4, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='payload_format_command', full_name='openxc.ControlCommand.payload_format_command', index=4, number=5, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='predefined_obd2_requests_command', full_name='openxc.ControlCommand.predefined_obd2_requests_command', index=5, number=6, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='modem_configuration_command', full_name='openxc.ControlCommand.modem_configuration_command', index=6, number=7, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='rtc_configuration_command', full_name='openxc.ControlCommand.rtc_configuration_command', index=7, number=8, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], @@ -517,7 +570,7 @@ enum_types=[ _CONTROLCOMMAND_TYPE, ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -534,6 +587,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='request', full_name='openxc.DiagnosticControlCommand.request', index=0, @@ -541,14 +595,14 @@ has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='action', full_name='openxc.DiagnosticControlCommand.action', index=1, number=2, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], @@ -556,7 +610,7 @@ enum_types=[ _DIAGNOSTICCONTROLCOMMAND_ACTION, ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -573,6 +627,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='bus', full_name='openxc.PassthroughModeControlCommand.bus', index=0, @@ -580,21 +635,21 @@ has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='enabled', full_name='openxc.PassthroughModeControlCommand.enabled', index=1, number=2, type=8, cpp_type=7, label=1, has_default_value=False, default_value=False, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], nested_types=[], enum_types=[ ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -611,6 +666,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='bus', full_name='openxc.AcceptanceFilterBypassCommand.bus', index=0, @@ -618,21 +674,21 @@ has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='bypass', full_name='openxc.AcceptanceFilterBypassCommand.bypass', index=1, number=2, type=8, cpp_type=7, label=1, has_default_value=False, default_value=False, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], nested_types=[], enum_types=[ ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -649,6 +705,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='format', full_name='openxc.PayloadFormatCommand.format', index=0, @@ -656,7 +713,7 @@ has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], @@ -664,7 +721,7 @@ enum_types=[ _PAYLOADFORMATCOMMAND_PAYLOADFORMAT, ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -681,6 +738,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='enabled', full_name='openxc.PredefinedObd2RequestsCommand.enabled', index=0, @@ -688,14 +746,14 @@ has_default_value=False, default_value=False, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], nested_types=[], enum_types=[ ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -712,6 +770,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='PLMN', full_name='openxc.NetworkOperatorSettings.NetworkDescriptor.PLMN', index=0, @@ -719,14 +778,14 @@ has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='networkType', full_name='openxc.NetworkOperatorSettings.NetworkDescriptor.networkType', index=1, number=2, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], @@ -734,7 +793,7 @@ enum_types=[ _NETWORKOPERATORSETTINGS_NETWORKDESCRIPTOR_NETWORKTYPE, ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -750,6 +809,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='allowDataRoaming', full_name='openxc.NetworkOperatorSettings.allowDataRoaming', index=0, @@ -757,21 +817,21 @@ has_default_value=False, default_value=False, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='operatorSelectMode', full_name='openxc.NetworkOperatorSettings.operatorSelectMode', index=1, number=2, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='networkDescriptor', full_name='openxc.NetworkOperatorSettings.networkDescriptor', index=2, number=3, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], @@ -779,7 +839,7 @@ enum_types=[ _NETWORKOPERATORSETTINGS_OPERATORSELECTMODE, ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -796,21 +856,22 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='apn', full_name='openxc.NetworkDataSettings.apn', index=0, number=1, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=_b("").decode('utf-8'), + has_default_value=False, default_value=b"".decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], nested_types=[], enum_types=[ ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -827,28 +888,29 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='host', full_name='openxc.ServerConnectSettings.host', index=0, number=1, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=_b("").decode('utf-8'), + has_default_value=False, default_value=b"".decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='port', full_name='openxc.ServerConnectSettings.port', index=1, number=2, type=13, cpp_type=3, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], nested_types=[], enum_types=[ ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -865,6 +927,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='networkOperatorSettings', full_name='openxc.ModemConfigurationCommand.networkOperatorSettings', index=0, @@ -872,28 +935,28 @@ has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='networkDataSettings', full_name='openxc.ModemConfigurationCommand.networkDataSettings', index=1, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='serverConnectSettings', full_name='openxc.ModemConfigurationCommand.serverConnectSettings', index=2, number=3, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], nested_types=[], enum_types=[ ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -910,6 +973,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='unix_time', full_name='openxc.RTCConfigurationCommand.unix_time', index=0, @@ -917,14 +981,14 @@ has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], nested_types=[], enum_types=[ ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -941,6 +1005,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='type', full_name='openxc.CommandResponse.type', index=0, @@ -948,28 +1013,28 @@ has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='message', full_name='openxc.CommandResponse.message', index=1, number=2, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=_b("").decode('utf-8'), + has_default_value=False, default_value=b"".decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='status', full_name='openxc.CommandResponse.status', index=2, number=3, type=8, cpp_type=7, label=1, has_default_value=False, default_value=False, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], nested_types=[], enum_types=[ ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -986,6 +1051,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='bus', full_name='openxc.DiagnosticRequest.bus', index=0, @@ -993,63 +1059,63 @@ has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='message_id', full_name='openxc.DiagnosticRequest.message_id', index=1, number=2, type=13, cpp_type=3, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='mode', full_name='openxc.DiagnosticRequest.mode', index=2, number=3, type=13, cpp_type=3, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='pid', full_name='openxc.DiagnosticRequest.pid', index=3, number=4, type=13, cpp_type=3, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='payload', full_name='openxc.DiagnosticRequest.payload', index=4, number=5, type=12, cpp_type=9, label=1, - has_default_value=False, default_value=_b(""), + has_default_value=False, default_value=b"", message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='multiple_responses', full_name='openxc.DiagnosticRequest.multiple_responses', index=5, number=6, type=8, cpp_type=7, label=1, has_default_value=False, default_value=False, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='frequency', full_name='openxc.DiagnosticRequest.frequency', index=6, number=7, type=1, cpp_type=5, label=1, has_default_value=False, default_value=float(0), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='name', full_name='openxc.DiagnosticRequest.name', index=7, number=8, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=_b("").decode('utf-8'), + has_default_value=False, default_value=b"".decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='decoded_type', full_name='openxc.DiagnosticRequest.decoded_type', index=8, number=9, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], @@ -1057,7 +1123,7 @@ enum_types=[ _DIAGNOSTICREQUEST_DECODEDTYPE, ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -1074,6 +1140,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='bus', full_name='openxc.DiagnosticResponse.bus', index=0, @@ -1081,77 +1148,77 @@ has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='message_id', full_name='openxc.DiagnosticResponse.message_id', index=1, number=2, type=13, cpp_type=3, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='mode', full_name='openxc.DiagnosticResponse.mode', index=2, number=3, type=13, cpp_type=3, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='pid', full_name='openxc.DiagnosticResponse.pid', index=3, number=4, type=13, cpp_type=3, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='success', full_name='openxc.DiagnosticResponse.success', index=4, number=5, type=8, cpp_type=7, label=1, has_default_value=False, default_value=False, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='negative_response_code', full_name='openxc.DiagnosticResponse.negative_response_code', index=5, number=6, type=13, cpp_type=3, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='payload', full_name='openxc.DiagnosticResponse.payload', index=6, number=7, type=12, cpp_type=9, label=1, - has_default_value=False, default_value=_b(""), + has_default_value=False, default_value=b"", message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='value', full_name='openxc.DiagnosticResponse.value', index=7, number=8, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='frame', full_name='openxc.DiagnosticResponse.frame', index=8, number=9, type=5, cpp_type=1, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='total_size', full_name='openxc.DiagnosticResponse.total_size', index=9, number=10, type=13, cpp_type=3, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], nested_types=[], enum_types=[ ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -1168,6 +1235,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='type', full_name='openxc.DynamicField.type', index=0, @@ -1175,28 +1243,28 @@ has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='string_value', full_name='openxc.DynamicField.string_value', index=1, number=2, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=_b("").decode('utf-8'), + has_default_value=False, default_value=b"".decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='numeric_value', full_name='openxc.DynamicField.numeric_value', index=2, number=3, type=1, cpp_type=5, label=1, has_default_value=False, default_value=float(0), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='boolean_value', full_name='openxc.DynamicField.boolean_value', index=3, number=4, type=8, cpp_type=7, label=1, has_default_value=False, default_value=False, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], @@ -1204,7 +1272,7 @@ enum_types=[ _DYNAMICFIELD_TYPE, ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -1221,35 +1289,36 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name='name', full_name='openxc.SimpleMessage.name', index=0, number=1, type=9, cpp_type=9, label=1, - has_default_value=False, default_value=_b("").decode('utf-8'), + has_default_value=False, default_value=b"".decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='value', full_name='openxc.SimpleMessage.value', index=1, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), _descriptor.FieldDescriptor( name='event', full_name='openxc.SimpleMessage.event', index=2, number=3, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, - options=None), + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], nested_types=[], enum_types=[ ], - options=None, + serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], @@ -1317,142 +1386,142 @@ DESCRIPTOR.message_types_by_name['DiagnosticResponse'] = _DIAGNOSTICRESPONSE DESCRIPTOR.message_types_by_name['DynamicField'] = _DYNAMICFIELD DESCRIPTOR.message_types_by_name['SimpleMessage'] = _SIMPLEMESSAGE +_sym_db.RegisterFileDescriptor(DESCRIPTOR) -VehicleMessage = _reflection.GeneratedProtocolMessageType('VehicleMessage', (_message.Message,), dict( - DESCRIPTOR = _VEHICLEMESSAGE, - __module__ = 'openxc_pb2' +VehicleMessage = _reflection.GeneratedProtocolMessageType('VehicleMessage', (_message.Message,), { + 'DESCRIPTOR' : _VEHICLEMESSAGE, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.VehicleMessage) - )) + }) _sym_db.RegisterMessage(VehicleMessage) -CanMessage = _reflection.GeneratedProtocolMessageType('CanMessage', (_message.Message,), dict( - DESCRIPTOR = _CANMESSAGE, - __module__ = 'openxc_pb2' +CanMessage = _reflection.GeneratedProtocolMessageType('CanMessage', (_message.Message,), { + 'DESCRIPTOR' : _CANMESSAGE, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.CanMessage) - )) + }) _sym_db.RegisterMessage(CanMessage) -ControlCommand = _reflection.GeneratedProtocolMessageType('ControlCommand', (_message.Message,), dict( - DESCRIPTOR = _CONTROLCOMMAND, - __module__ = 'openxc_pb2' +ControlCommand = _reflection.GeneratedProtocolMessageType('ControlCommand', (_message.Message,), { + 'DESCRIPTOR' : _CONTROLCOMMAND, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.ControlCommand) - )) + }) _sym_db.RegisterMessage(ControlCommand) -DiagnosticControlCommand = _reflection.GeneratedProtocolMessageType('DiagnosticControlCommand', (_message.Message,), dict( - DESCRIPTOR = _DIAGNOSTICCONTROLCOMMAND, - __module__ = 'openxc_pb2' +DiagnosticControlCommand = _reflection.GeneratedProtocolMessageType('DiagnosticControlCommand', (_message.Message,), { + 'DESCRIPTOR' : _DIAGNOSTICCONTROLCOMMAND, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.DiagnosticControlCommand) - )) + }) _sym_db.RegisterMessage(DiagnosticControlCommand) -PassthroughModeControlCommand = _reflection.GeneratedProtocolMessageType('PassthroughModeControlCommand', (_message.Message,), dict( - DESCRIPTOR = _PASSTHROUGHMODECONTROLCOMMAND, - __module__ = 'openxc_pb2' +PassthroughModeControlCommand = _reflection.GeneratedProtocolMessageType('PassthroughModeControlCommand', (_message.Message,), { + 'DESCRIPTOR' : _PASSTHROUGHMODECONTROLCOMMAND, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.PassthroughModeControlCommand) - )) + }) _sym_db.RegisterMessage(PassthroughModeControlCommand) -AcceptanceFilterBypassCommand = _reflection.GeneratedProtocolMessageType('AcceptanceFilterBypassCommand', (_message.Message,), dict( - DESCRIPTOR = _ACCEPTANCEFILTERBYPASSCOMMAND, - __module__ = 'openxc_pb2' +AcceptanceFilterBypassCommand = _reflection.GeneratedProtocolMessageType('AcceptanceFilterBypassCommand', (_message.Message,), { + 'DESCRIPTOR' : _ACCEPTANCEFILTERBYPASSCOMMAND, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.AcceptanceFilterBypassCommand) - )) + }) _sym_db.RegisterMessage(AcceptanceFilterBypassCommand) -PayloadFormatCommand = _reflection.GeneratedProtocolMessageType('PayloadFormatCommand', (_message.Message,), dict( - DESCRIPTOR = _PAYLOADFORMATCOMMAND, - __module__ = 'openxc_pb2' +PayloadFormatCommand = _reflection.GeneratedProtocolMessageType('PayloadFormatCommand', (_message.Message,), { + 'DESCRIPTOR' : _PAYLOADFORMATCOMMAND, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.PayloadFormatCommand) - )) + }) _sym_db.RegisterMessage(PayloadFormatCommand) -PredefinedObd2RequestsCommand = _reflection.GeneratedProtocolMessageType('PredefinedObd2RequestsCommand', (_message.Message,), dict( - DESCRIPTOR = _PREDEFINEDOBD2REQUESTSCOMMAND, - __module__ = 'openxc_pb2' +PredefinedObd2RequestsCommand = _reflection.GeneratedProtocolMessageType('PredefinedObd2RequestsCommand', (_message.Message,), { + 'DESCRIPTOR' : _PREDEFINEDOBD2REQUESTSCOMMAND, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.PredefinedObd2RequestsCommand) - )) + }) _sym_db.RegisterMessage(PredefinedObd2RequestsCommand) -NetworkOperatorSettings = _reflection.GeneratedProtocolMessageType('NetworkOperatorSettings', (_message.Message,), dict( +NetworkOperatorSettings = _reflection.GeneratedProtocolMessageType('NetworkOperatorSettings', (_message.Message,), { - NetworkDescriptor = _reflection.GeneratedProtocolMessageType('NetworkDescriptor', (_message.Message,), dict( - DESCRIPTOR = _NETWORKOPERATORSETTINGS_NETWORKDESCRIPTOR, - __module__ = 'openxc_pb2' + 'NetworkDescriptor' : _reflection.GeneratedProtocolMessageType('NetworkDescriptor', (_message.Message,), { + 'DESCRIPTOR' : _NETWORKOPERATORSETTINGS_NETWORKDESCRIPTOR, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.NetworkOperatorSettings.NetworkDescriptor) - )) + }) , - DESCRIPTOR = _NETWORKOPERATORSETTINGS, - __module__ = 'openxc_pb2' + 'DESCRIPTOR' : _NETWORKOPERATORSETTINGS, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.NetworkOperatorSettings) - )) + }) _sym_db.RegisterMessage(NetworkOperatorSettings) _sym_db.RegisterMessage(NetworkOperatorSettings.NetworkDescriptor) -NetworkDataSettings = _reflection.GeneratedProtocolMessageType('NetworkDataSettings', (_message.Message,), dict( - DESCRIPTOR = _NETWORKDATASETTINGS, - __module__ = 'openxc_pb2' +NetworkDataSettings = _reflection.GeneratedProtocolMessageType('NetworkDataSettings', (_message.Message,), { + 'DESCRIPTOR' : _NETWORKDATASETTINGS, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.NetworkDataSettings) - )) + }) _sym_db.RegisterMessage(NetworkDataSettings) -ServerConnectSettings = _reflection.GeneratedProtocolMessageType('ServerConnectSettings', (_message.Message,), dict( - DESCRIPTOR = _SERVERCONNECTSETTINGS, - __module__ = 'openxc_pb2' +ServerConnectSettings = _reflection.GeneratedProtocolMessageType('ServerConnectSettings', (_message.Message,), { + 'DESCRIPTOR' : _SERVERCONNECTSETTINGS, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.ServerConnectSettings) - )) + }) _sym_db.RegisterMessage(ServerConnectSettings) -ModemConfigurationCommand = _reflection.GeneratedProtocolMessageType('ModemConfigurationCommand', (_message.Message,), dict( - DESCRIPTOR = _MODEMCONFIGURATIONCOMMAND, - __module__ = 'openxc_pb2' +ModemConfigurationCommand = _reflection.GeneratedProtocolMessageType('ModemConfigurationCommand', (_message.Message,), { + 'DESCRIPTOR' : _MODEMCONFIGURATIONCOMMAND, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.ModemConfigurationCommand) - )) + }) _sym_db.RegisterMessage(ModemConfigurationCommand) -RTCConfigurationCommand = _reflection.GeneratedProtocolMessageType('RTCConfigurationCommand', (_message.Message,), dict( - DESCRIPTOR = _RTCCONFIGURATIONCOMMAND, - __module__ = 'openxc_pb2' +RTCConfigurationCommand = _reflection.GeneratedProtocolMessageType('RTCConfigurationCommand', (_message.Message,), { + 'DESCRIPTOR' : _RTCCONFIGURATIONCOMMAND, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.RTCConfigurationCommand) - )) + }) _sym_db.RegisterMessage(RTCConfigurationCommand) -CommandResponse = _reflection.GeneratedProtocolMessageType('CommandResponse', (_message.Message,), dict( - DESCRIPTOR = _COMMANDRESPONSE, - __module__ = 'openxc_pb2' +CommandResponse = _reflection.GeneratedProtocolMessageType('CommandResponse', (_message.Message,), { + 'DESCRIPTOR' : _COMMANDRESPONSE, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.CommandResponse) - )) + }) _sym_db.RegisterMessage(CommandResponse) -DiagnosticRequest = _reflection.GeneratedProtocolMessageType('DiagnosticRequest', (_message.Message,), dict( - DESCRIPTOR = _DIAGNOSTICREQUEST, - __module__ = 'openxc_pb2' +DiagnosticRequest = _reflection.GeneratedProtocolMessageType('DiagnosticRequest', (_message.Message,), { + 'DESCRIPTOR' : _DIAGNOSTICREQUEST, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.DiagnosticRequest) - )) + }) _sym_db.RegisterMessage(DiagnosticRequest) -DiagnosticResponse = _reflection.GeneratedProtocolMessageType('DiagnosticResponse', (_message.Message,), dict( - DESCRIPTOR = _DIAGNOSTICRESPONSE, - __module__ = 'openxc_pb2' +DiagnosticResponse = _reflection.GeneratedProtocolMessageType('DiagnosticResponse', (_message.Message,), { + 'DESCRIPTOR' : _DIAGNOSTICRESPONSE, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.DiagnosticResponse) - )) + }) _sym_db.RegisterMessage(DiagnosticResponse) -DynamicField = _reflection.GeneratedProtocolMessageType('DynamicField', (_message.Message,), dict( - DESCRIPTOR = _DYNAMICFIELD, - __module__ = 'openxc_pb2' +DynamicField = _reflection.GeneratedProtocolMessageType('DynamicField', (_message.Message,), { + 'DESCRIPTOR' : _DYNAMICFIELD, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.DynamicField) - )) + }) _sym_db.RegisterMessage(DynamicField) -SimpleMessage = _reflection.GeneratedProtocolMessageType('SimpleMessage', (_message.Message,), dict( - DESCRIPTOR = _SIMPLEMESSAGE, - __module__ = 'openxc_pb2' +SimpleMessage = _reflection.GeneratedProtocolMessageType('SimpleMessage', (_message.Message,), { + 'DESCRIPTOR' : _SIMPLEMESSAGE, + '__module__' : 'openxc_pb2' # @@protoc_insertion_point(class_scope:openxc.SimpleMessage) - )) + }) _sym_db.RegisterMessage(SimpleMessage) -DESCRIPTOR.has_options = True -DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\ncom.openxcB\016BinaryMessages')) +DESCRIPTOR._options = None # @@protoc_insertion_point(module_scope) diff --git a/setup.py b/setup.py index 9811fee5..1d209b9d 100644 --- a/setup.py +++ b/setup.py @@ -12,7 +12,7 @@ long_description = open('README.rst').read() install_reqs = ['pyusb==1.0.0a3', 'units >= 0.5', 'argparse', 'requests==2.20.0', - 'protobuf==3.9.1'] + 'protobuf==3.17.1'] setup(name='openxc', version=get_version(), From 26275d93d619e33cb1fa9ea6d7c011a3a8825140 Mon Sep 17 00:00:00 2001 From: pjt0620 Date: Mon, 21 Jun 2021 16:50:32 -0400 Subject: [PATCH 25/28] Update python-test.yml --- .github/workflows/python-test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml index 92b0fd25..39757fe4 100644 --- a/.github/workflows/python-test.yml +++ b/.github/workflows/python-test.yml @@ -21,6 +21,7 @@ jobs: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | + sudo apt-get update sudo apt-get install python-bluetooth -qq -y python -m pip install --upgrade pip python -m pip install pytest pyserial==3.1.1 coveralls From 9077b605ecf6a1f51661c063bf7ec91ec78e689d Mon Sep 17 00:00:00 2001 From: GenoJAFord Date: Thu, 29 Jul 2021 18:23:28 +0000 Subject: [PATCH 26/28] parse the --new_payload-format option before using it --- openxc/tools/control.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/openxc/tools/control.py b/openxc/tools/control.py index 5a8fe773..ca87ed3c 100644 --- a/openxc/tools/control.py +++ b/openxc/tools/control.py @@ -179,6 +179,8 @@ def main(): interface = interface_class(**interface_kwargs) interface.start() + handle_set_command(arguments, interface) + if arguments.command == "version": version(interface) elif arguments.command == "platform": From cc6765c86959e0f9df0e227364a3c2c022f5a920 Mon Sep 17 00:00:00 2001 From: garindae Date: Mon, 2 Aug 2021 15:31:16 -0400 Subject: [PATCH 27/28] Protobuf format argument now properly streaming out protobuf binary --- openxc/sources/base.py | 1 + 1 file changed, 1 insertion(+) diff --git a/openxc/sources/base.py b/openxc/sources/base.py index 1192c07b..733bed7a 100644 --- a/openxc/sources/base.py +++ b/openxc/sources/base.py @@ -40,6 +40,7 @@ def __init__(self, callback=None, log_mode=None, payload_format=None): self._streamer = None self._formatter = None self._format = payload_format + self.format = payload_format # Added 7/30/2021 to fix protobuf streaming out self.logger = SourceLogger(self, log_mode) From 77dab4dcd99930590639386e6d545c519a2a66b9 Mon Sep 17 00:00:00 2001 From: GenoJAFord Date: Mon, 9 Aug 2021 21:02:03 +0000 Subject: [PATCH 28/28] Updated python openxc version to 2.2.0 and added update notes --- CHANGELOG.rst | 10 ++++++++++ README.rst | 2 +- docs/index.rst | 2 +- openxc/version.py | 2 +- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 9d78a4b6..29a1d93d 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,6 +1,16 @@ OpenXC Python Library Changelog =============================== +v2.2.0 +---------- +* Improvements to usb traffic handling +* Updated message format based upton the protobuf file +* Improved memory management for protobuf +* SonarQube updates +* Github actions updated,travis decommissioned +* Support for the new get_vin command + openxc-control get_vin + v2.1.0 ---------- * SonarQube integration diff --git a/README.rst b/README.rst index 9fa12c63..873c8946 100644 --- a/README.rst +++ b/README.rst @@ -4,7 +4,7 @@ OpenXC for Python .. image:: https://github.com/openxc/openxc-python/raw/master/docs/_static/logo.png -:Version: 2.1.0 +:Version: 2.2.0 :Web: http://openxcplatform.com :Download: http://pypi.python.org/pypi/openxc/ :Documentation: http://python.openxcplatform.com diff --git a/docs/index.rst b/docs/index.rst index c9efc4a7..1070fb42 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -4,7 +4,7 @@ OpenXC for Python .. image:: https://github.com/openxc/openxc-python/raw/master/docs/_static/logo.png -:Version: 2.1.0 +:Version: 2.2.0 :Web: http://openxcplatform.com :Download: http://pypi.python.org/pypi/openxc/ :Documentation: http://python.openxcplatform.com diff --git a/openxc/version.py b/openxc/version.py index b122ea39..5f07b805 100644 --- a/openxc/version.py +++ b/openxc/version.py @@ -6,7 +6,7 @@ which in turn needs access to this version information.) """ -VERSION = (2, 1, 0) +VERSION = (2, 2, 0) __version__ = '.'.join(map(str, VERSION))