-\ 4data\18\ 3 \ 1(\ 4"\ 1
-\11TranslatedMessage\12\f
-\ 4name\18\ 1 \ 1( \12\14
-\fstring_value\18\ 2 \ 1( \12\17
-\ fnumerical_value\18\ 3 \ 1(\ 1\12\15
-\rboolean_value\18\ 4 \ 1(\b\12\14
-\fstring_event\18\ 5 \ 1( \12\17
-\ fnumerical_event\18\ 6 \ 1(\ 1\12\15
-\rboolean_event\18\a \ 1(\bB\1c
+\ 4data\18\ 3 \ 1(\f"ö\ 2
+\ eControlCommand\12)
+\ 4type\18\ 1 \ 1(\ e2\e.openxc.ControlCommand.Type\12<
+\12diagnostic_request\18\ 2 \ 1(\v2 .openxc.DiagnosticControlCommand\12G
+\18passthrough_mode_request\18\ 3 \ 1(\v2%.openxc.PassthroughModeControlCommand\12O
+ acceptance_filter_bypass_command\18\ 4 \ 1(\v2%.openxc.AcceptanceFilterBypassCommand"a
+\ 4Type\12\v
+\aVERSION\10\ 1\12\r
+ DEVICE_ID\10\ 2\12\ e
+
+DIAGNOSTIC\10\ 3\12\ f
+\vPASSTHROUGH\10\ 4\12\1c
+\18ACCEPTANCE_FILTER_BYPASS\10\ 5"\9e\ 1
+\18DiagnosticControlCommand\12*
+\arequest\18\ 1 \ 1(\v2\19.openxc.DiagnosticRequest\127
+\ 6action\18\ 2 \ 1(\ e2'.openxc.DiagnosticControlCommand.Action"\1d
+\ 6Action\12\a
+\ 3ADD\10\ 1\12
+
+\ 6CANCEL\10\ 2"=
+\1dPassthroughModeControlCommand\12\v
+\ 3bus\18\ 1 \ 1(\ 5\12\ f
+\aenabled\18\ 2 \ 1(\b"<
+\1dAcceptanceFilterBypassCommand\12\v
+\ 3bus\18\ 1 \ 1(\ 5\12\ e
+\ 6bypass\18\ 2 \ 1(\b"]
+\ fCommandResponse\12)
+\ 4type\18\ 1 \ 1(\ e2\e.openxc.ControlCommand.Type\12\ f
+\amessage\18\ 2 \ 1( \12\ e
+\ 6status\18\ 3 \ 1(\b"ý\ 1
+\11DiagnosticRequest\12\v
+\ 3bus\18\ 1 \ 1(\ 5\12\12
+
+message_id\18\ 2 \ 1(\r\12\f
+\ 4mode\18\ 3 \ 1(\r\12\v
+\ 3pid\18\ 4 \ 1(\r\12\ f
+\apayload\18\ 5 \ 1(\f\12\1a
+\12multiple_responses\18\ 6 \ 1(\b\12\11
+ frequency\18\a \ 1(\ 1\12\f
+\ 4name\18\b \ 1( \12;
+\fdecoded_type\18 \ 1(\ e2%.openxc.DiagnosticRequest.DecodedType"!
+\vDecodedType\12\b
+\ 4NONE\10\ 1\12\b
+\ 4OBD2\10\ 2"¡\ 1
+\12DiagnosticResponse\12\v
+\ 3bus\18\ 1 \ 1(\ 5\12\12
+
+message_id\18\ 2 \ 1(\r\12\f
+\ 4mode\18\ 3 \ 1(\r\12\v
+\ 3pid\18\ 4 \ 1(\r\12\ f
+\asuccess\18\ 5 \ 1(\b\12\1e
+\16negative_response_code\18\ 6 \ 1(\r\12\ f
+\apayload\18\a \ 1(\f\12\r
+\ 5value\18\b \ 1(\ 1"¢\ 1
+\fDynamicField\12'
+\ 4type\18\ 1 \ 1(\ e2\19.openxc.DynamicField.Type\12\14
+\fstring_value\18\ 2 \ 1( \12\15
+\rnumeric_value\18\ 3 \ 1(\ 1\12\15
+\rboolean_value\18\ 4 \ 1(\b"%
+\ 4Type\12
+
+\ 6STRING\10\ 1\12\a
+\ 3NUM\10\ 2\12\b
+\ 4BOOL\10\ 3"÷\ 1
+\11TranslatedMessage\12,
+\ 4type\18\ 1 \ 1(\ e2\1e.openxc.TranslatedMessage.Type\12\f
+\ 4name\18\ 2 \ 1( \12#
+\ 5value\18\ 3 \ 1(\v2\14.openxc.DynamicField\12#
+\ 5event\18\ 4 \ 1(\v2\14.openxc.DynamicField"\
+\ 4Type\12
+
+\ 6STRING\10\ 1\12\a
+\ 3NUM\10\ 2\12\b
+\ 4BOOL\10\ 3\12\12
+\ eEVENTED_STRING\10\ 4\12\ f
+\vEVENTED_NUM\10\ 5\12\10
+\fEVENTED_BOOL\10\ 6B\1c