Deprecate "translated" and "raw" names in binary format.
authorChristopher Peplin <chris.peplin@rhubarbtech.com>
Tue, 7 Oct 2014 03:12:02 +0000 (23:12 -0400)
committerChristopher Peplin <chris.peplin@rhubarbtech.com>
Tue, 7 Oct 2014 03:12:30 +0000 (23:12 -0400)
Fixed #16.

gen/cpp/openxc.pb
gen/cpp/openxc.pb.c
gen/cpp/openxc.pb.h
gen/java/com/openxc/BinaryMessages.java
gen/python/openxc_pb2.py
openxc.proto

index e89c253..88993ab 100644 (file)
@@ -1,28 +1,28 @@
 
-\94\14
-\fopenxc.proto\12\ 6openxc"\94\ 3
+\80\14
+\fopenxc.proto\12\ 6openxc"\88\ 3
 \ eVehicleMessage\12)
 \ 4type\18\ 1 \ 1(\ e2\e.openxc.VehicleMessage.Type\12'
-\vraw_message\18\ 2 \ 1(\v2\12.openxc.RawMessage\125
-\12translated_message\18\ 3 \ 1(\v2\19.openxc.TranslatedMessage\127
+\vcan_message\18\ 2 \ 1(\v2\12.openxc.CanMessage\12-
+\ esimple_message\18\ 3 \ 1(\v2\15.openxc.SimpleMessage\127
 \13diagnostic_response\18\ 4 \ 1(\v2\1a.openxc.DiagnosticResponse\12/
 \ fcontrol_command\18\ 5 \ 1(\v2\16.openxc.ControlCommand\121
-\10command_response\18\ 6 \ 1(\v2\17.openxc.CommandResponse"Z
+\10command_response\18\ 6 \ 1(\v2\17.openxc.CommandResponse"V
 \ 4Type\12\a
-\ 3RAW\10\ 1\12\ e
+\ 3CAN\10\ 1\12
 
-TRANSLATED\10\ 2\12\ e
+\ 6SIMPLE\10\ 2\12\ e
 
 DIAGNOSTIC\10\ 3\12\13
 \ fCONTROL_COMMAND\10\ 4\12\14
 \10COMMAND_RESPONSE\10\ 5"\9c\ 1
 
-RawMessage\12\v
+CanMessage\12\v
 \ 3bus\18\ 1 \ 1(\ 5\12\12
 
 message_id\18\ 2 \ 1(\r\12\f
 \ 4data\18\ 3 \ 1(\f\124
-\fframe_format\18\ 4 \ 1(\ e2\1e.openxc.RawMessage.FrameFormat")
+\fframe_format\18\ 4 \ 1(\ e2\1e.openxc.CanMessage.FrameFormat")
 \vFrameFormat\12\f
 \bSTANDARD\10\ 1\12\f
 \bEXTENDED\10\ 2\ 4
@@ -99,9 +99,9 @@ message_id\18\ 2 \ 1(\r\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
+\ 4BOOL\10\ 3"ï\ 1
+\rSimpleMessage\12(
+\ 4type\18\ 1 \ 1(\ e2\1a.openxc.SimpleMessage.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"\
index a99c7dd..b9d6d95 100644 (file)
@@ -1,5 +1,5 @@
 /* Automatically generated nanopb constant definitions */
-/* Generated by nanopb-0.3.1 at Mon Oct  6 22:07:24 2014. */
+/* Generated by nanopb-0.3.1 at Mon Oct  6 23:12:27 2014. */
 
 #include "openxc.pb.h"
 
 
 const pb_field_t openxc_VehicleMessage_fields[7] = {
     PB_FIELD(  1, ENUM    , OPTIONAL, STATIC  , FIRST, openxc_VehicleMessage, type, type, 0),
-    PB_FIELD(  2, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_VehicleMessage, raw_message, type, &openxc_RawMessage_fields),
-    PB_FIELD(  3, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_VehicleMessage, translated_message, raw_message, &openxc_TranslatedMessage_fields),
-    PB_FIELD(  4, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_VehicleMessage, diagnostic_response, translated_message, &openxc_DiagnosticResponse_fields),
+    PB_FIELD(  2, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_VehicleMessage, can_message, type, &openxc_CanMessage_fields),
+    PB_FIELD(  3, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_VehicleMessage, simple_message, can_message, &openxc_SimpleMessage_fields),
+    PB_FIELD(  4, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_VehicleMessage, diagnostic_response, simple_message, &openxc_DiagnosticResponse_fields),
     PB_FIELD(  5, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_VehicleMessage, control_command, diagnostic_response, &openxc_ControlCommand_fields),
     PB_FIELD(  6, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_VehicleMessage, command_response, control_command, &openxc_CommandResponse_fields),
     PB_LAST_FIELD
 };
 
-const pb_field_t openxc_RawMessage_fields[5] = {
-    PB_FIELD(  1, INT32   , OPTIONAL, STATIC  , FIRST, openxc_RawMessage, bus, bus, 0),
-    PB_FIELD(  2, UINT32  , OPTIONAL, STATIC  , OTHER, openxc_RawMessage, message_id, bus, 0),
-    PB_FIELD(  3, BYTES   , OPTIONAL, STATIC  , OTHER, openxc_RawMessage, data, message_id, 0),
-    PB_FIELD(  4, ENUM    , OPTIONAL, STATIC  , OTHER, openxc_RawMessage, frame_format, data, 0),
+const pb_field_t openxc_CanMessage_fields[5] = {
+    PB_FIELD(  1, INT32   , OPTIONAL, STATIC  , FIRST, openxc_CanMessage, bus, bus, 0),
+    PB_FIELD(  2, UINT32  , OPTIONAL, STATIC  , OTHER, openxc_CanMessage, message_id, bus, 0),
+    PB_FIELD(  3, BYTES   , OPTIONAL, CALLBACK, OTHER, openxc_CanMessage, data, message_id, 0),
+    PB_FIELD(  4, ENUM    , OPTIONAL, STATIC  , OTHER, openxc_CanMessage, frame_format, data, 0),
     PB_LAST_FIELD
 };
 
@@ -105,11 +105,11 @@ const pb_field_t openxc_DynamicField_fields[5] = {
     PB_LAST_FIELD
 };
 
-const pb_field_t openxc_TranslatedMessage_fields[5] = {
-    PB_FIELD(  1, ENUM    , OPTIONAL, STATIC  , FIRST, openxc_TranslatedMessage, type, type, 0),
-    PB_FIELD(  2, STRING  , OPTIONAL, STATIC  , OTHER, openxc_TranslatedMessage, name, type, 0),
-    PB_FIELD(  3, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_TranslatedMessage, value, name, &openxc_DynamicField_fields),
-    PB_FIELD(  4, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_TranslatedMessage, event, value, &openxc_DynamicField_fields),
+const pb_field_t openxc_SimpleMessage_fields[5] = {
+    PB_FIELD(  1, ENUM    , OPTIONAL, STATIC  , FIRST, openxc_SimpleMessage, type, type, 0),
+    PB_FIELD(  2, STRING  , OPTIONAL, CALLBACK, OTHER, openxc_SimpleMessage, name, type, 0),
+    PB_FIELD(  3, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_SimpleMessage, value, name, &openxc_DynamicField_fields),
+    PB_FIELD(  4, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_SimpleMessage, event, value, &openxc_DynamicField_fields),
     PB_LAST_FIELD
 };
 
@@ -123,7 +123,7 @@ const pb_field_t openxc_TranslatedMessage_fields[5] = {
  * numbers or field sizes that are larger than what can fit in 8 or 16 bit
  * field descriptors.
  */
-PB_STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, raw_message) < 65536 && pb_membersize(openxc_VehicleMessage, translated_message) < 65536 && pb_membersize(openxc_VehicleMessage, diagnostic_response) < 65536 && pb_membersize(openxc_VehicleMessage, control_command) < 65536 && pb_membersize(openxc_VehicleMessage, command_response) < 65536 && pb_membersize(openxc_ControlCommand, diagnostic_request) < 65536 && pb_membersize(openxc_ControlCommand, passthrough_mode_request) < 65536 && pb_membersize(openxc_ControlCommand, acceptance_filter_bypass_command) < 65536 && pb_membersize(openxc_ControlCommand, payload_format_command) < 65536 && pb_membersize(openxc_ControlCommand, predefined_obd2_requests_command) < 65536 && pb_membersize(openxc_DiagnosticControlCommand, request) < 65536 && pb_membersize(openxc_TranslatedMessage, value) < 65536 && pb_membersize(openxc_TranslatedMessage, event) < 65536), YOU_MUST_DEFINE_PB_FIELD_32BIT_FOR_MESSAGES_openxc_VehicleMessage_openxc_RawMessage_openxc_ControlCommand_openxc_DiagnosticControlCommand_openxc_PassthroughModeControlCommand_openxc_AcceptanceFilterBypassCommand_openxc_PayloadFormatCommand_openxc_PredefinedObd2RequestsCommand_openxc_CommandResponse_openxc_DiagnosticRequest_openxc_DiagnosticResponse_openxc_DynamicField_openxc_TranslatedMessage)
+PB_STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, can_message) < 65536 && pb_membersize(openxc_VehicleMessage, simple_message) < 65536 && pb_membersize(openxc_VehicleMessage, diagnostic_response) < 65536 && pb_membersize(openxc_VehicleMessage, control_command) < 65536 && pb_membersize(openxc_VehicleMessage, command_response) < 65536 && pb_membersize(openxc_ControlCommand, diagnostic_request) < 65536 && pb_membersize(openxc_ControlCommand, passthrough_mode_request) < 65536 && pb_membersize(openxc_ControlCommand, acceptance_filter_bypass_command) < 65536 && pb_membersize(openxc_ControlCommand, payload_format_command) < 65536 && pb_membersize(openxc_ControlCommand, predefined_obd2_requests_command) < 65536 && pb_membersize(openxc_DiagnosticControlCommand, request) < 65536 && pb_membersize(openxc_SimpleMessage, value) < 65536 && pb_membersize(openxc_SimpleMessage, event) < 65536), YOU_MUST_DEFINE_PB_FIELD_32BIT_FOR_MESSAGES_openxc_VehicleMessage_openxc_CanMessage_openxc_ControlCommand_openxc_DiagnosticControlCommand_openxc_PassthroughModeControlCommand_openxc_AcceptanceFilterBypassCommand_openxc_PayloadFormatCommand_openxc_PredefinedObd2RequestsCommand_openxc_CommandResponse_openxc_DiagnosticRequest_openxc_DiagnosticResponse_openxc_DynamicField_openxc_SimpleMessage)
 #endif
 
 #if !defined(PB_FIELD_16BIT) && !defined(PB_FIELD_32BIT)
@@ -134,7 +134,7 @@ PB_STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, raw_message) < 65536 && p
  * numbers or field sizes that are larger than what can fit in the default
  * 8 bit descriptors.
  */
-PB_STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, raw_message) < 256 && pb_membersize(openxc_VehicleMessage, translated_message) < 256 && pb_membersize(openxc_VehicleMessage, diagnostic_response) < 256 && pb_membersize(openxc_VehicleMessage, control_command) < 256 && pb_membersize(openxc_VehicleMessage, command_response) < 256 && pb_membersize(openxc_ControlCommand, diagnostic_request) < 256 && pb_membersize(openxc_ControlCommand, passthrough_mode_request) < 256 && pb_membersize(openxc_ControlCommand, acceptance_filter_bypass_command) < 256 && pb_membersize(openxc_ControlCommand, payload_format_command) < 256 && pb_membersize(openxc_ControlCommand, predefined_obd2_requests_command) < 256 && pb_membersize(openxc_DiagnosticControlCommand, request) < 256 && pb_membersize(openxc_TranslatedMessage, value) < 256 && pb_membersize(openxc_TranslatedMessage, event) < 256), YOU_MUST_DEFINE_PB_FIELD_16BIT_FOR_MESSAGES_openxc_VehicleMessage_openxc_RawMessage_openxc_ControlCommand_openxc_DiagnosticControlCommand_openxc_PassthroughModeControlCommand_openxc_AcceptanceFilterBypassCommand_openxc_PayloadFormatCommand_openxc_PredefinedObd2RequestsCommand_openxc_CommandResponse_openxc_DiagnosticRequest_openxc_DiagnosticResponse_openxc_DynamicField_openxc_TranslatedMessage)
+PB_STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, can_message) < 256 && pb_membersize(openxc_VehicleMessage, simple_message) < 256 && pb_membersize(openxc_VehicleMessage, diagnostic_response) < 256 && pb_membersize(openxc_VehicleMessage, control_command) < 256 && pb_membersize(openxc_VehicleMessage, command_response) < 256 && pb_membersize(openxc_ControlCommand, diagnostic_request) < 256 && pb_membersize(openxc_ControlCommand, passthrough_mode_request) < 256 && pb_membersize(openxc_ControlCommand, acceptance_filter_bypass_command) < 256 && pb_membersize(openxc_ControlCommand, payload_format_command) < 256 && pb_membersize(openxc_ControlCommand, predefined_obd2_requests_command) < 256 && pb_membersize(openxc_DiagnosticControlCommand, request) < 256 && pb_membersize(openxc_SimpleMessage, value) < 256 && pb_membersize(openxc_SimpleMessage, event) < 256), YOU_MUST_DEFINE_PB_FIELD_16BIT_FOR_MESSAGES_openxc_VehicleMessage_openxc_CanMessage_openxc_ControlCommand_openxc_DiagnosticControlCommand_openxc_PassthroughModeControlCommand_openxc_AcceptanceFilterBypassCommand_openxc_PayloadFormatCommand_openxc_PredefinedObd2RequestsCommand_openxc_CommandResponse_openxc_DiagnosticRequest_openxc_DiagnosticResponse_openxc_DynamicField_openxc_SimpleMessage)
 #endif
 
 
index ca87e0b..38107b3 100644 (file)
@@ -1,5 +1,5 @@
 /* Automatically generated nanopb header */
-/* Generated by nanopb-0.3.1 at Mon Oct  6 22:07:24 2014. */
+/* Generated by nanopb-0.3.1 at Mon Oct  6 23:12:27 2014. */
 
 #ifndef PB_OPENXC_PB_H_INCLUDED
 #define PB_OPENXC_PB_H_INCLUDED
@@ -15,17 +15,17 @@ extern "C" {
 
 /* Enum definitions */
 typedef enum _openxc_VehicleMessage_Type {
-    openxc_VehicleMessage_Type_RAW = 1,
-    openxc_VehicleMessage_Type_TRANSLATED = 2,
+    openxc_VehicleMessage_Type_CAN = 1,
+    openxc_VehicleMessage_Type_SIMPLE = 2,
     openxc_VehicleMessage_Type_DIAGNOSTIC = 3,
     openxc_VehicleMessage_Type_CONTROL_COMMAND = 4,
     openxc_VehicleMessage_Type_COMMAND_RESPONSE = 5
 } openxc_VehicleMessage_Type;
 
-typedef enum _openxc_RawMessage_FrameFormat {
-    openxc_RawMessage_FrameFormat_STANDARD = 1,
-    openxc_RawMessage_FrameFormat_EXTENDED = 2
-} openxc_RawMessage_FrameFormat;
+typedef enum _openxc_CanMessage_FrameFormat {
+    openxc_CanMessage_FrameFormat_STANDARD = 1,
+    openxc_CanMessage_FrameFormat_EXTENDED = 2
+} openxc_CanMessage_FrameFormat;
 
 typedef enum _openxc_ControlCommand_Type {
     openxc_ControlCommand_Type_VERSION = 1,
@@ -58,14 +58,14 @@ typedef enum _openxc_DynamicField_Type {
     openxc_DynamicField_Type_BOOL = 3
 } openxc_DynamicField_Type;
 
-typedef enum _openxc_TranslatedMessage_Type {
-    openxc_TranslatedMessage_Type_STRING = 1,
-    openxc_TranslatedMessage_Type_NUM = 2,
-    openxc_TranslatedMessage_Type_BOOL = 3,
-    openxc_TranslatedMessage_Type_EVENTED_STRING = 4,
-    openxc_TranslatedMessage_Type_EVENTED_NUM = 5,
-    openxc_TranslatedMessage_Type_EVENTED_BOOL = 6
-} openxc_TranslatedMessage_Type;
+typedef enum _openxc_SimpleMessage_Type {
+    openxc_SimpleMessage_Type_STRING = 1,
+    openxc_SimpleMessage_Type_NUM = 2,
+    openxc_SimpleMessage_Type_BOOL = 3,
+    openxc_SimpleMessage_Type_EVENTED_STRING = 4,
+    openxc_SimpleMessage_Type_EVENTED_NUM = 5,
+    openxc_SimpleMessage_Type_EVENTED_BOOL = 6
+} openxc_SimpleMessage_Type;
 
 /* Struct definitions */
 typedef struct _openxc_AcceptanceFilterBypassCommand {
@@ -75,6 +75,16 @@ typedef struct _openxc_AcceptanceFilterBypassCommand {
     bool bypass;
 } openxc_AcceptanceFilterBypassCommand;
 
+typedef struct _openxc_CanMessage {
+    bool has_bus;
+    int32_t bus;
+    bool has_message_id;
+    uint32_t message_id;
+    pb_callback_t data;
+    bool has_frame_format;
+    openxc_CanMessage_FrameFormat frame_format;
+} openxc_CanMessage;
+
 typedef struct _openxc_CommandResponse {
     bool has_type;
     openxc_ControlCommand_Type type;
@@ -156,19 +166,6 @@ typedef struct _openxc_PredefinedObd2RequestsCommand {
     bool enabled;
 } openxc_PredefinedObd2RequestsCommand;
 
-typedef PB_BYTES_ARRAY_T(8) openxc_RawMessage_data_t;
-
-typedef struct _openxc_RawMessage {
-    bool has_bus;
-    int32_t bus;
-    bool has_message_id;
-    uint32_t message_id;
-    bool has_data;
-    openxc_RawMessage_data_t data;
-    bool has_frame_format;
-    openxc_RawMessage_FrameFormat frame_format;
-} openxc_RawMessage;
-
 typedef struct _openxc_DiagnosticControlCommand {
     bool has_request;
     openxc_DiagnosticRequest request;
@@ -176,16 +173,15 @@ typedef struct _openxc_DiagnosticControlCommand {
     openxc_DiagnosticControlCommand_Action action;
 } openxc_DiagnosticControlCommand;
 
-typedef struct _openxc_TranslatedMessage {
+typedef struct _openxc_SimpleMessage {
     bool has_type;
-    openxc_TranslatedMessage_Type type;
-    bool has_name;
-    char name[100];
+    openxc_SimpleMessage_Type type;
+    pb_callback_t name;
     bool has_value;
     openxc_DynamicField value;
     bool has_event;
     openxc_DynamicField event;
-} openxc_TranslatedMessage;
+} openxc_SimpleMessage;
 
 typedef struct _openxc_ControlCommand {
     bool has_type;
@@ -205,10 +201,10 @@ typedef struct _openxc_ControlCommand {
 typedef struct _openxc_VehicleMessage {
     bool has_type;
     openxc_VehicleMessage_Type type;
-    bool has_raw_message;
-    openxc_RawMessage raw_message;
-    bool has_translated_message;
-    openxc_TranslatedMessage translated_message;
+    bool has_can_message;
+    openxc_CanMessage can_message;
+    bool has_simple_message;
+    openxc_SimpleMessage simple_message;
     bool has_diagnostic_response;
     openxc_DiagnosticResponse diagnostic_response;
     bool has_control_command;
@@ -220,8 +216,8 @@ typedef struct _openxc_VehicleMessage {
 /* Default values for struct fields */
 
 /* Initializer values for message structs */
-#define openxc_VehicleMessage_init_default       {false, (openxc_VehicleMessage_Type)0, false, openxc_RawMessage_init_default, false, openxc_TranslatedMessage_init_default, false, openxc_DiagnosticResponse_init_default, false, openxc_ControlCommand_init_default, false, openxc_CommandResponse_init_default}
-#define openxc_RawMessage_init_default           {false, 0, false, 0, false, {0, {0}}, false, (openxc_RawMessage_FrameFormat)0}
+#define openxc_VehicleMessage_init_default       {false, (openxc_VehicleMessage_Type)0, false, openxc_CanMessage_init_default, false, openxc_SimpleMessage_init_default, false, openxc_DiagnosticResponse_init_default, false, openxc_ControlCommand_init_default, false, openxc_CommandResponse_init_default}
+#define openxc_CanMessage_init_default           {false, 0, false, 0, {{NULL}, NULL}, false, (openxc_CanMessage_FrameFormat)0}
 #define openxc_ControlCommand_init_default       {false, (openxc_ControlCommand_Type)0, false, openxc_DiagnosticControlCommand_init_default, false, openxc_PassthroughModeControlCommand_init_default, false, openxc_AcceptanceFilterBypassCommand_init_default, false, openxc_PayloadFormatCommand_init_default, false, openxc_PredefinedObd2RequestsCommand_init_default}
 #define openxc_DiagnosticControlCommand_init_default {false, openxc_DiagnosticRequest_init_default, false, (openxc_DiagnosticControlCommand_Action)0}
 #define openxc_PassthroughModeControlCommand_init_default {false, 0, false, 0}
@@ -232,9 +228,9 @@ typedef struct _openxc_VehicleMessage {
 #define openxc_DiagnosticRequest_init_default    {false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0, false, 0, false, "", false, (openxc_DiagnosticRequest_DecodedType)0}
 #define openxc_DiagnosticResponse_init_default   {false, 0, false, 0, false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0}
 #define openxc_DynamicField_init_default         {false, (openxc_DynamicField_Type)0, false, "", false, 0, false, 0}
-#define openxc_TranslatedMessage_init_default    {false, (openxc_TranslatedMessage_Type)0, false, "", false, openxc_DynamicField_init_default, false, openxc_DynamicField_init_default}
-#define openxc_VehicleMessage_init_zero          {false, (openxc_VehicleMessage_Type)0, false, openxc_RawMessage_init_zero, false, openxc_TranslatedMessage_init_zero, false, openxc_DiagnosticResponse_init_zero, false, openxc_ControlCommand_init_zero, false, openxc_CommandResponse_init_zero}
-#define openxc_RawMessage_init_zero              {false, 0, false, 0, false, {0, {0}}, false, (openxc_RawMessage_FrameFormat)0}
+#define openxc_SimpleMessage_init_default        {false, (openxc_SimpleMessage_Type)0, {{NULL}, NULL}, false, openxc_DynamicField_init_default, false, openxc_DynamicField_init_default}
+#define openxc_VehicleMessage_init_zero          {false, (openxc_VehicleMessage_Type)0, false, openxc_CanMessage_init_zero, false, openxc_SimpleMessage_init_zero, false, openxc_DiagnosticResponse_init_zero, false, openxc_ControlCommand_init_zero, false, openxc_CommandResponse_init_zero}
+#define openxc_CanMessage_init_zero              {false, 0, false, 0, {{NULL}, NULL}, false, (openxc_CanMessage_FrameFormat)0}
 #define openxc_ControlCommand_init_zero          {false, (openxc_ControlCommand_Type)0, false, openxc_DiagnosticControlCommand_init_zero, false, openxc_PassthroughModeControlCommand_init_zero, false, openxc_AcceptanceFilterBypassCommand_init_zero, false, openxc_PayloadFormatCommand_init_zero, false, openxc_PredefinedObd2RequestsCommand_init_zero}
 #define openxc_DiagnosticControlCommand_init_zero {false, openxc_DiagnosticRequest_init_zero, false, (openxc_DiagnosticControlCommand_Action)0}
 #define openxc_PassthroughModeControlCommand_init_zero {false, 0, false, 0}
@@ -245,11 +241,15 @@ typedef struct _openxc_VehicleMessage {
 #define openxc_DiagnosticRequest_init_zero       {false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0, false, 0, false, "", false, (openxc_DiagnosticRequest_DecodedType)0}
 #define openxc_DiagnosticResponse_init_zero      {false, 0, false, 0, false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0}
 #define openxc_DynamicField_init_zero            {false, (openxc_DynamicField_Type)0, false, "", false, 0, false, 0}
-#define openxc_TranslatedMessage_init_zero       {false, (openxc_TranslatedMessage_Type)0, false, "", false, openxc_DynamicField_init_zero, false, openxc_DynamicField_init_zero}
+#define openxc_SimpleMessage_init_zero           {false, (openxc_SimpleMessage_Type)0, {{NULL}, NULL}, false, openxc_DynamicField_init_zero, false, openxc_DynamicField_init_zero}
 
 /* Field tags (for use in manual encoding/decoding) */
 #define openxc_AcceptanceFilterBypassCommand_bus_tag 1
 #define openxc_AcceptanceFilterBypassCommand_bypass_tag 2
+#define openxc_CanMessage_bus_tag                1
+#define openxc_CanMessage_message_id_tag         2
+#define openxc_CanMessage_data_tag               3
+#define openxc_CanMessage_frame_format_tag       4
 #define openxc_CommandResponse_type_tag          1
 #define openxc_CommandResponse_message_tag       2
 #define openxc_CommandResponse_status_tag        3
@@ -278,16 +278,12 @@ typedef struct _openxc_VehicleMessage {
 #define openxc_PassthroughModeControlCommand_enabled_tag 2
 #define openxc_PayloadFormatCommand_format_tag   1
 #define openxc_PredefinedObd2RequestsCommand_enabled_tag 1
-#define openxc_RawMessage_bus_tag                1
-#define openxc_RawMessage_message_id_tag         2
-#define openxc_RawMessage_data_tag               3
-#define openxc_RawMessage_frame_format_tag       4
 #define openxc_DiagnosticControlCommand_request_tag 1
 #define openxc_DiagnosticControlCommand_action_tag 2
-#define openxc_TranslatedMessage_type_tag        1
-#define openxc_TranslatedMessage_name_tag        2
-#define openxc_TranslatedMessage_value_tag       3
-#define openxc_TranslatedMessage_event_tag       4
+#define openxc_SimpleMessage_type_tag            1
+#define openxc_SimpleMessage_name_tag            2
+#define openxc_SimpleMessage_value_tag           3
+#define openxc_SimpleMessage_event_tag           4
 #define openxc_ControlCommand_type_tag           1
 #define openxc_ControlCommand_diagnostic_request_tag 2
 #define openxc_ControlCommand_passthrough_mode_request_tag 3
@@ -295,15 +291,15 @@ typedef struct _openxc_VehicleMessage {
 #define openxc_ControlCommand_payload_format_command_tag 5
 #define openxc_ControlCommand_predefined_obd2_requests_command_tag 6
 #define openxc_VehicleMessage_type_tag           1
-#define openxc_VehicleMessage_raw_message_tag    2
-#define openxc_VehicleMessage_translated_message_tag 3
+#define openxc_VehicleMessage_can_message_tag    2
+#define openxc_VehicleMessage_simple_message_tag 3
 #define openxc_VehicleMessage_diagnostic_response_tag 4
 #define openxc_VehicleMessage_control_command_tag 5
 #define openxc_VehicleMessage_command_response_tag 6
 
 /* Struct field encoding specification for nanopb */
 extern const pb_field_t openxc_VehicleMessage_fields[7];
-extern const pb_field_t openxc_RawMessage_fields[5];
+extern const pb_field_t openxc_CanMessage_fields[5];
 extern const pb_field_t openxc_ControlCommand_fields[7];
 extern const pb_field_t openxc_DiagnosticControlCommand_fields[3];
 extern const pb_field_t openxc_PassthroughModeControlCommand_fields[3];
@@ -314,11 +310,9 @@ extern const pb_field_t openxc_CommandResponse_fields[4];
 extern const pb_field_t openxc_DiagnosticRequest_fields[10];
 extern const pb_field_t openxc_DiagnosticResponse_fields[9];
 extern const pb_field_t openxc_DynamicField_fields[5];
-extern const pb_field_t openxc_TranslatedMessage_fields[5];
+extern const pb_field_t openxc_SimpleMessage_fields[5];
 
 /* Maximum encoded size of messages (where known) */
-#define openxc_VehicleMessage_size               722
-#define openxc_RawMessage_size                   33
 #define openxc_ControlCommand_size               126
 #define openxc_DiagnosticControlCommand_size     76
 #define openxc_PassthroughModeControlCommand_size 13
@@ -329,7 +323,6 @@ extern const pb_field_t openxc_TranslatedMessage_fields[5];
 #define openxc_DiagnosticRequest_size            68
 #define openxc_DiagnosticResponse_size           56
 #define openxc_DynamicField_size                 119
-#define openxc_TranslatedMessage_size            350
 
 #ifdef __cplusplus
 } /* extern "C" */
index 2e3cd56..cb49929 100644 (file)
@@ -21,33 +21,33 @@ public final class BinaryMessages {
      */
     com.openxc.BinaryMessages.VehicleMessage.Type getType();
 
-    // optional .openxc.RawMessage raw_message = 2;
+    // optional .openxc.CanMessage can_message = 2;
     /**
-     * <code>optional .openxc.RawMessage raw_message = 2;</code>
+     * <code>optional .openxc.CanMessage can_message = 2;</code>
      */
-    boolean hasRawMessage();
+    boolean hasCanMessage();
     /**
-     * <code>optional .openxc.RawMessage raw_message = 2;</code>
+     * <code>optional .openxc.CanMessage can_message = 2;</code>
      */
-    com.openxc.BinaryMessages.RawMessage getRawMessage();
+    com.openxc.BinaryMessages.CanMessage getCanMessage();
     /**
-     * <code>optional .openxc.RawMessage raw_message = 2;</code>
+     * <code>optional .openxc.CanMessage can_message = 2;</code>
      */
-    com.openxc.BinaryMessages.RawMessageOrBuilder getRawMessageOrBuilder();
+    com.openxc.BinaryMessages.CanMessageOrBuilder getCanMessageOrBuilder();
 
-    // optional .openxc.TranslatedMessage translated_message = 3;
+    // optional .openxc.SimpleMessage simple_message = 3;
     /**
-     * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+     * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
      */
-    boolean hasTranslatedMessage();
+    boolean hasSimpleMessage();
     /**
-     * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+     * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
      */
-    com.openxc.BinaryMessages.TranslatedMessage getTranslatedMessage();
+    com.openxc.BinaryMessages.SimpleMessage getSimpleMessage();
     /**
-     * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+     * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
      */
-    com.openxc.BinaryMessages.TranslatedMessageOrBuilder getTranslatedMessageOrBuilder();
+    com.openxc.BinaryMessages.SimpleMessageOrBuilder getSimpleMessageOrBuilder();
 
     // optional .openxc.DiagnosticResponse diagnostic_response = 4;
     /**
@@ -154,27 +154,27 @@ public final class BinaryMessages {
               break;
             }
             case 18: {
-              com.openxc.BinaryMessages.RawMessage.Builder subBuilder = null;
+              com.openxc.BinaryMessages.CanMessage.Builder subBuilder = null;
               if (((bitField0_ & 0x00000002) == 0x00000002)) {
-                subBuilder = rawMessage_.toBuilder();
+                subBuilder = canMessage_.toBuilder();
               }
-              rawMessage_ = input.readMessage(com.openxc.BinaryMessages.RawMessage.PARSER, extensionRegistry);
+              canMessage_ = input.readMessage(com.openxc.BinaryMessages.CanMessage.PARSER, extensionRegistry);
               if (subBuilder != null) {
-                subBuilder.mergeFrom(rawMessage_);
-                rawMessage_ = subBuilder.buildPartial();
+                subBuilder.mergeFrom(canMessage_);
+                canMessage_ = subBuilder.buildPartial();
               }
               bitField0_ |= 0x00000002;
               break;
             }
             case 26: {
-              com.openxc.BinaryMessages.TranslatedMessage.Builder subBuilder = null;
+              com.openxc.BinaryMessages.SimpleMessage.Builder subBuilder = null;
               if (((bitField0_ & 0x00000004) == 0x00000004)) {
-                subBuilder = translatedMessage_.toBuilder();
+                subBuilder = simpleMessage_.toBuilder();
               }
-              translatedMessage_ = input.readMessage(com.openxc.BinaryMessages.TranslatedMessage.PARSER, extensionRegistry);
+              simpleMessage_ = input.readMessage(com.openxc.BinaryMessages.SimpleMessage.PARSER, extensionRegistry);
               if (subBuilder != null) {
-                subBuilder.mergeFrom(translatedMessage_);
-                translatedMessage_ = subBuilder.buildPartial();
+                subBuilder.mergeFrom(simpleMessage_);
+                simpleMessage_ = subBuilder.buildPartial();
               }
               bitField0_ |= 0x00000004;
               break;
@@ -263,13 +263,13 @@ public final class BinaryMessages {
     public enum Type
         implements com.google.protobuf.ProtocolMessageEnum {
       /**
-       * <code>RAW = 1;</code>
+       * <code>CAN = 1;</code>
        */
-      RAW(0, 1),
+      CAN(0, 1),
       /**
-       * <code>TRANSLATED = 2;</code>
+       * <code>SIMPLE = 2;</code>
        */
-      TRANSLATED(1, 2),
+      SIMPLE(1, 2),
       /**
        * <code>DIAGNOSTIC = 3;</code>
        */
@@ -285,13 +285,13 @@ public final class BinaryMessages {
       ;
 
       /**
-       * <code>RAW = 1;</code>
+       * <code>CAN = 1;</code>
        */
-      public static final int RAW_VALUE = 1;
+      public static final int CAN_VALUE = 1;
       /**
-       * <code>TRANSLATED = 2;</code>
+       * <code>SIMPLE = 2;</code>
        */
-      public static final int TRANSLATED_VALUE = 2;
+      public static final int SIMPLE_VALUE = 2;
       /**
        * <code>DIAGNOSTIC = 3;</code>
        */
@@ -310,8 +310,8 @@ public final class BinaryMessages {
 
       public static Type valueOf(int value) {
         switch (value) {
-          case 1: return RAW;
-          case 2: return TRANSLATED;
+          case 1: return CAN;
+          case 2: return SIMPLE;
           case 3: return DIAGNOSTIC;
           case 4: return CONTROL_COMMAND;
           case 5: return COMMAND_RESPONSE;
@@ -383,48 +383,48 @@ public final class BinaryMessages {
       return type_;
     }
 
-    // optional .openxc.RawMessage raw_message = 2;
-    public static final int RAW_MESSAGE_FIELD_NUMBER = 2;
-    private com.openxc.BinaryMessages.RawMessage rawMessage_;
+    // optional .openxc.CanMessage can_message = 2;
+    public static final int CAN_MESSAGE_FIELD_NUMBER = 2;
+    private com.openxc.BinaryMessages.CanMessage canMessage_;
     /**
-     * <code>optional .openxc.RawMessage raw_message = 2;</code>
+     * <code>optional .openxc.CanMessage can_message = 2;</code>
      */
-    public boolean hasRawMessage() {
+    public boolean hasCanMessage() {
       return ((bitField0_ & 0x00000002) == 0x00000002);
     }
     /**
-     * <code>optional .openxc.RawMessage raw_message = 2;</code>
+     * <code>optional .openxc.CanMessage can_message = 2;</code>
      */
-    public com.openxc.BinaryMessages.RawMessage getRawMessage() {
-      return rawMessage_;
+    public com.openxc.BinaryMessages.CanMessage getCanMessage() {
+      return canMessage_;
     }
     /**
-     * <code>optional .openxc.RawMessage raw_message = 2;</code>
+     * <code>optional .openxc.CanMessage can_message = 2;</code>
      */
-    public com.openxc.BinaryMessages.RawMessageOrBuilder getRawMessageOrBuilder() {
-      return rawMessage_;
+    public com.openxc.BinaryMessages.CanMessageOrBuilder getCanMessageOrBuilder() {
+      return canMessage_;
     }
 
-    // optional .openxc.TranslatedMessage translated_message = 3;
-    public static final int TRANSLATED_MESSAGE_FIELD_NUMBER = 3;
-    private com.openxc.BinaryMessages.TranslatedMessage translatedMessage_;
+    // optional .openxc.SimpleMessage simple_message = 3;
+    public static final int SIMPLE_MESSAGE_FIELD_NUMBER = 3;
+    private com.openxc.BinaryMessages.SimpleMessage simpleMessage_;
     /**
-     * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+     * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
      */
-    public boolean hasTranslatedMessage() {
+    public boolean hasSimpleMessage() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
     /**
-     * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+     * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
      */
-    public com.openxc.BinaryMessages.TranslatedMessage getTranslatedMessage() {
-      return translatedMessage_;
+    public com.openxc.BinaryMessages.SimpleMessage getSimpleMessage() {
+      return simpleMessage_;
     }
     /**
-     * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+     * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
      */
-    public com.openxc.BinaryMessages.TranslatedMessageOrBuilder getTranslatedMessageOrBuilder() {
-      return translatedMessage_;
+    public com.openxc.BinaryMessages.SimpleMessageOrBuilder getSimpleMessageOrBuilder() {
+      return simpleMessage_;
     }
 
     // optional .openxc.DiagnosticResponse diagnostic_response = 4;
@@ -494,9 +494,9 @@ public final class BinaryMessages {
     }
 
     private void initFields() {
-      type_ = com.openxc.BinaryMessages.VehicleMessage.Type.RAW;
-      rawMessage_ = com.openxc.BinaryMessages.RawMessage.getDefaultInstance();
-      translatedMessage_ = com.openxc.BinaryMessages.TranslatedMessage.getDefaultInstance();
+      type_ = com.openxc.BinaryMessages.VehicleMessage.Type.CAN;
+      canMessage_ = com.openxc.BinaryMessages.CanMessage.getDefaultInstance();
+      simpleMessage_ = com.openxc.BinaryMessages.SimpleMessage.getDefaultInstance();
       diagnosticResponse_ = com.openxc.BinaryMessages.DiagnosticResponse.getDefaultInstance();
       controlCommand_ = com.openxc.BinaryMessages.ControlCommand.getDefaultInstance();
       commandResponse_ = com.openxc.BinaryMessages.CommandResponse.getDefaultInstance();
@@ -517,10 +517,10 @@ public final class BinaryMessages {
         output.writeEnum(1, type_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, rawMessage_);
+        output.writeMessage(2, canMessage_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeMessage(3, translatedMessage_);
+        output.writeMessage(3, simpleMessage_);
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
         output.writeMessage(4, diagnosticResponse_);
@@ -546,11 +546,11 @@ public final class BinaryMessages {
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, rawMessage_);
+          .computeMessageSize(2, canMessage_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, translatedMessage_);
+          .computeMessageSize(3, simpleMessage_);
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
         size += com.google.protobuf.CodedOutputStream
@@ -672,8 +672,8 @@ public final class BinaryMessages {
       }
       private void maybeForceBuilderInitialization() {
         if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
-          getRawMessageFieldBuilder();
-          getTranslatedMessageFieldBuilder();
+          getCanMessageFieldBuilder();
+          getSimpleMessageFieldBuilder();
           getDiagnosticResponseFieldBuilder();
           getControlCommandFieldBuilder();
           getCommandResponseFieldBuilder();
@@ -685,18 +685,18 @@ public final class BinaryMessages {
 
       public Builder clear() {
         super.clear();
-        type_ = com.openxc.BinaryMessages.VehicleMessage.Type.RAW;
+        type_ = com.openxc.BinaryMessages.VehicleMessage.Type.CAN;
         bitField0_ = (bitField0_ & ~0x00000001);
-        if (rawMessageBuilder_ == null) {
-          rawMessage_ = com.openxc.BinaryMessages.RawMessage.getDefaultInstance();
+        if (canMessageBuilder_ == null) {
+          canMessage_ = com.openxc.BinaryMessages.CanMessage.getDefaultInstance();
         } else {
-          rawMessageBuilder_.clear();
+          canMessageBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000002);
-        if (translatedMessageBuilder_ == null) {
-          translatedMessage_ = com.openxc.BinaryMessages.TranslatedMessage.getDefaultInstance();
+        if (simpleMessageBuilder_ == null) {
+          simpleMessage_ = com.openxc.BinaryMessages.SimpleMessage.getDefaultInstance();
         } else {
-          translatedMessageBuilder_.clear();
+          simpleMessageBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000004);
         if (diagnosticResponseBuilder_ == null) {
@@ -752,18 +752,18 @@ public final class BinaryMessages {
         if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
           to_bitField0_ |= 0x00000002;
         }
-        if (rawMessageBuilder_ == null) {
-          result.rawMessage_ = rawMessage_;
+        if (canMessageBuilder_ == null) {
+          result.canMessage_ = canMessage_;
         } else {
-          result.rawMessage_ = rawMessageBuilder_.build();
+          result.canMessage_ = canMessageBuilder_.build();
         }
         if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
           to_bitField0_ |= 0x00000004;
         }
-        if (translatedMessageBuilder_ == null) {
-          result.translatedMessage_ = translatedMessage_;
+        if (simpleMessageBuilder_ == null) {
+          result.simpleMessage_ = simpleMessage_;
         } else {
-          result.translatedMessage_ = translatedMessageBuilder_.build();
+          result.simpleMessage_ = simpleMessageBuilder_.build();
         }
         if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
           to_bitField0_ |= 0x00000008;
@@ -808,11 +808,11 @@ public final class BinaryMessages {
         if (other.hasType()) {
           setType(other.getType());
         }
-        if (other.hasRawMessage()) {
-          mergeRawMessage(other.getRawMessage());
+        if (other.hasCanMessage()) {
+          mergeCanMessage(other.getCanMessage());
         }
-        if (other.hasTranslatedMessage()) {
-          mergeTranslatedMessage(other.getTranslatedMessage());
+        if (other.hasSimpleMessage()) {
+          mergeSimpleMessage(other.getSimpleMessage());
         }
         if (other.hasDiagnosticResponse()) {
           mergeDiagnosticResponse(other.getDiagnosticResponse());
@@ -851,7 +851,7 @@ public final class BinaryMessages {
       private int bitField0_;
 
       // optional .openxc.VehicleMessage.Type type = 1;
-      private com.openxc.BinaryMessages.VehicleMessage.Type type_ = com.openxc.BinaryMessages.VehicleMessage.Type.RAW;
+      private com.openxc.BinaryMessages.VehicleMessage.Type type_ = com.openxc.BinaryMessages.VehicleMessage.Type.CAN;
       /**
        * <code>optional .openxc.VehicleMessage.Type type = 1;</code>
        */
@@ -881,243 +881,243 @@ public final class BinaryMessages {
        */
       public Builder clearType() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        type_ = com.openxc.BinaryMessages.VehicleMessage.Type.RAW;
+        type_ = com.openxc.BinaryMessages.VehicleMessage.Type.CAN;
         onChanged();
         return this;
       }
 
-      // optional .openxc.RawMessage raw_message = 2;
-      private com.openxc.BinaryMessages.RawMessage rawMessage_ = com.openxc.BinaryMessages.RawMessage.getDefaultInstance();
+      // optional .openxc.CanMessage can_message = 2;
+      private com.openxc.BinaryMessages.CanMessage canMessage_ = com.openxc.BinaryMessages.CanMessage.getDefaultInstance();
       private com.google.protobuf.SingleFieldBuilder<
-          com.openxc.BinaryMessages.RawMessage, com.openxc.BinaryMessages.RawMessage.Builder, com.openxc.BinaryMessages.RawMessageOrBuilder> rawMessageBuilder_;
+          com.openxc.BinaryMessages.CanMessage, com.openxc.BinaryMessages.CanMessage.Builder, com.openxc.BinaryMessages.CanMessageOrBuilder> canMessageBuilder_;
       /**
-       * <code>optional .openxc.RawMessage raw_message = 2;</code>
+       * <code>optional .openxc.CanMessage can_message = 2;</code>
        */
-      public boolean hasRawMessage() {
+      public boolean hasCanMessage() {
         return ((bitField0_ & 0x00000002) == 0x00000002);
       }
       /**
-       * <code>optional .openxc.RawMessage raw_message = 2;</code>
+       * <code>optional .openxc.CanMessage can_message = 2;</code>
        */
-      public com.openxc.BinaryMessages.RawMessage getRawMessage() {
-        if (rawMessageBuilder_ == null) {
-          return rawMessage_;
+      public com.openxc.BinaryMessages.CanMessage getCanMessage() {
+        if (canMessageBuilder_ == null) {
+          return canMessage_;
         } else {
-          return rawMessageBuilder_.getMessage();
+          return canMessageBuilder_.getMessage();
         }
       }
       /**
-       * <code>optional .openxc.RawMessage raw_message = 2;</code>
+       * <code>optional .openxc.CanMessage can_message = 2;</code>
        */
-      public Builder setRawMessage(com.openxc.BinaryMessages.RawMessage value) {
-        if (rawMessageBuilder_ == null) {
+      public Builder setCanMessage(com.openxc.BinaryMessages.CanMessage value) {
+        if (canMessageBuilder_ == null) {
           if (value == null) {
             throw new NullPointerException();
           }
-          rawMessage_ = value;
+          canMessage_ = value;
           onChanged();
         } else {
-          rawMessageBuilder_.setMessage(value);
+          canMessageBuilder_.setMessage(value);
         }
         bitField0_ |= 0x00000002;
         return this;
       }
       /**
-       * <code>optional .openxc.RawMessage raw_message = 2;</code>
+       * <code>optional .openxc.CanMessage can_message = 2;</code>
        */
-      public Builder setRawMessage(
-          com.openxc.BinaryMessages.RawMessage.Builder builderForValue) {
-        if (rawMessageBuilder_ == null) {
-          rawMessage_ = builderForValue.build();
+      public Builder setCanMessage(
+          com.openxc.BinaryMessages.CanMessage.Builder builderForValue) {
+        if (canMessageBuilder_ == null) {
+          canMessage_ = builderForValue.build();
           onChanged();
         } else {
-          rawMessageBuilder_.setMessage(builderForValue.build());
+          canMessageBuilder_.setMessage(builderForValue.build());
         }
         bitField0_ |= 0x00000002;
         return this;
       }
       /**
-       * <code>optional .openxc.RawMessage raw_message = 2;</code>
+       * <code>optional .openxc.CanMessage can_message = 2;</code>
        */
-      public Builder mergeRawMessage(com.openxc.BinaryMessages.RawMessage value) {
-        if (rawMessageBuilder_ == null) {
+      public Builder mergeCanMessage(com.openxc.BinaryMessages.CanMessage value) {
+        if (canMessageBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              rawMessage_ != com.openxc.BinaryMessages.RawMessage.getDefaultInstance()) {
-            rawMessage_ =
-              com.openxc.BinaryMessages.RawMessage.newBuilder(rawMessage_).mergeFrom(value).buildPartial();
+              canMessage_ != com.openxc.BinaryMessages.CanMessage.getDefaultInstance()) {
+            canMessage_ =
+              com.openxc.BinaryMessages.CanMessage.newBuilder(canMessage_).mergeFrom(value).buildPartial();
           } else {
-            rawMessage_ = value;
+            canMessage_ = value;
           }
           onChanged();
         } else {
-          rawMessageBuilder_.mergeFrom(value);
+          canMessageBuilder_.mergeFrom(value);
         }
         bitField0_ |= 0x00000002;
         return this;
       }
       /**
-       * <code>optional .openxc.RawMessage raw_message = 2;</code>
+       * <code>optional .openxc.CanMessage can_message = 2;</code>
        */
-      public Builder clearRawMessage() {
-        if (rawMessageBuilder_ == null) {
-          rawMessage_ = com.openxc.BinaryMessages.RawMessage.getDefaultInstance();
+      public Builder clearCanMessage() {
+        if (canMessageBuilder_ == null) {
+          canMessage_ = com.openxc.BinaryMessages.CanMessage.getDefaultInstance();
           onChanged();
         } else {
-          rawMessageBuilder_.clear();
+          canMessageBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000002);
         return this;
       }
       /**
-       * <code>optional .openxc.RawMessage raw_message = 2;</code>
+       * <code>optional .openxc.CanMessage can_message = 2;</code>
        */
-      public com.openxc.BinaryMessages.RawMessage.Builder getRawMessageBuilder() {
+      public com.openxc.BinaryMessages.CanMessage.Builder getCanMessageBuilder() {
         bitField0_ |= 0x00000002;
         onChanged();
-        return getRawMessageFieldBuilder().getBuilder();
+        return getCanMessageFieldBuilder().getBuilder();
       }
       /**
-       * <code>optional .openxc.RawMessage raw_message = 2;</code>
+       * <code>optional .openxc.CanMessage can_message = 2;</code>
        */
-      public com.openxc.BinaryMessages.RawMessageOrBuilder getRawMessageOrBuilder() {
-        if (rawMessageBuilder_ != null) {
-          return rawMessageBuilder_.getMessageOrBuilder();
+      public com.openxc.BinaryMessages.CanMessageOrBuilder getCanMessageOrBuilder() {
+        if (canMessageBuilder_ != null) {
+          return canMessageBuilder_.getMessageOrBuilder();
         } else {
-          return rawMessage_;
+          return canMessage_;
         }
       }
       /**
-       * <code>optional .openxc.RawMessage raw_message = 2;</code>
+       * <code>optional .openxc.CanMessage can_message = 2;</code>
        */
       private com.google.protobuf.SingleFieldBuilder<
-          com.openxc.BinaryMessages.RawMessage, com.openxc.BinaryMessages.RawMessage.Builder, com.openxc.BinaryMessages.RawMessageOrBuilder> 
-          getRawMessageFieldBuilder() {
-        if (rawMessageBuilder_ == null) {
-          rawMessageBuilder_ = new com.google.protobuf.SingleFieldBuilder<
-              com.openxc.BinaryMessages.RawMessage, com.openxc.BinaryMessages.RawMessage.Builder, com.openxc.BinaryMessages.RawMessageOrBuilder>(
-                  rawMessage_,
+          com.openxc.BinaryMessages.CanMessage, com.openxc.BinaryMessages.CanMessage.Builder, com.openxc.BinaryMessages.CanMessageOrBuilder> 
+          getCanMessageFieldBuilder() {
+        if (canMessageBuilder_ == null) {
+          canMessageBuilder_ = new com.google.protobuf.SingleFieldBuilder<
+              com.openxc.BinaryMessages.CanMessage, com.openxc.BinaryMessages.CanMessage.Builder, com.openxc.BinaryMessages.CanMessageOrBuilder>(
+                  canMessage_,
                   getParentForChildren(),
                   isClean());
-          rawMessage_ = null;
+          canMessage_ = null;
         }
-        return rawMessageBuilder_;
+        return canMessageBuilder_;
       }
 
-      // optional .openxc.TranslatedMessage translated_message = 3;
-      private com.openxc.BinaryMessages.TranslatedMessage translatedMessage_ = com.openxc.BinaryMessages.TranslatedMessage.getDefaultInstance();
+      // optional .openxc.SimpleMessage simple_message = 3;
+      private com.openxc.BinaryMessages.SimpleMessage simpleMessage_ = com.openxc.BinaryMessages.SimpleMessage.getDefaultInstance();
       private com.google.protobuf.SingleFieldBuilder<
-          com.openxc.BinaryMessages.TranslatedMessage, com.openxc.BinaryMessages.TranslatedMessage.Builder, com.openxc.BinaryMessages.TranslatedMessageOrBuilder> translatedMessageBuilder_;
+          com.openxc.BinaryMessages.SimpleMessage, com.openxc.BinaryMessages.SimpleMessage.Builder, com.openxc.BinaryMessages.SimpleMessageOrBuilder> simpleMessageBuilder_;
       /**
-       * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+       * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
        */
-      public boolean hasTranslatedMessage() {
+      public boolean hasSimpleMessage() {
         return ((bitField0_ & 0x00000004) == 0x00000004);
       }
       /**
-       * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+       * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
        */
-      public com.openxc.BinaryMessages.TranslatedMessage getTranslatedMessage() {
-        if (translatedMessageBuilder_ == null) {
-          return translatedMessage_;
+      public com.openxc.BinaryMessages.SimpleMessage getSimpleMessage() {
+        if (simpleMessageBuilder_ == null) {
+          return simpleMessage_;
         } else {
-          return translatedMessageBuilder_.getMessage();
+          return simpleMessageBuilder_.getMessage();
         }
       }
       /**
-       * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+       * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
        */
-      public Builder setTranslatedMessage(com.openxc.BinaryMessages.TranslatedMessage value) {
-        if (translatedMessageBuilder_ == null) {
+      public Builder setSimpleMessage(com.openxc.BinaryMessages.SimpleMessage value) {
+        if (simpleMessageBuilder_ == null) {
           if (value == null) {
             throw new NullPointerException();
           }
-          translatedMessage_ = value;
+          simpleMessage_ = value;
           onChanged();
         } else {
-          translatedMessageBuilder_.setMessage(value);
+          simpleMessageBuilder_.setMessage(value);
         }
         bitField0_ |= 0x00000004;
         return this;
       }
       /**
-       * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+       * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
        */
-      public Builder setTranslatedMessage(
-          com.openxc.BinaryMessages.TranslatedMessage.Builder builderForValue) {
-        if (translatedMessageBuilder_ == null) {
-          translatedMessage_ = builderForValue.build();
+      public Builder setSimpleMessage(
+          com.openxc.BinaryMessages.SimpleMessage.Builder builderForValue) {
+        if (simpleMessageBuilder_ == null) {
+          simpleMessage_ = builderForValue.build();
           onChanged();
         } else {
-          translatedMessageBuilder_.setMessage(builderForValue.build());
+          simpleMessageBuilder_.setMessage(builderForValue.build());
         }
         bitField0_ |= 0x00000004;
         return this;
       }
       /**
-       * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+       * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
        */
-      public Builder mergeTranslatedMessage(com.openxc.BinaryMessages.TranslatedMessage value) {
-        if (translatedMessageBuilder_ == null) {
+      public Builder mergeSimpleMessage(com.openxc.BinaryMessages.SimpleMessage value) {
+        if (simpleMessageBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              translatedMessage_ != com.openxc.BinaryMessages.TranslatedMessage.getDefaultInstance()) {
-            translatedMessage_ =
-              com.openxc.BinaryMessages.TranslatedMessage.newBuilder(translatedMessage_).mergeFrom(value).buildPartial();
+              simpleMessage_ != com.openxc.BinaryMessages.SimpleMessage.getDefaultInstance()) {
+            simpleMessage_ =
+              com.openxc.BinaryMessages.SimpleMessage.newBuilder(simpleMessage_).mergeFrom(value).buildPartial();
           } else {
-            translatedMessage_ = value;
+            simpleMessage_ = value;
           }
           onChanged();
         } else {
-          translatedMessageBuilder_.mergeFrom(value);
+          simpleMessageBuilder_.mergeFrom(value);
         }
         bitField0_ |= 0x00000004;
         return this;
       }
       /**
-       * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+       * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
        */
-      public Builder clearTranslatedMessage() {
-        if (translatedMessageBuilder_ == null) {
-          translatedMessage_ = com.openxc.BinaryMessages.TranslatedMessage.getDefaultInstance();
+      public Builder clearSimpleMessage() {
+        if (simpleMessageBuilder_ == null) {
+          simpleMessage_ = com.openxc.BinaryMessages.SimpleMessage.getDefaultInstance();
           onChanged();
         } else {
-          translatedMessageBuilder_.clear();
+          simpleMessageBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000004);
         return this;
       }
       /**
-       * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+       * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
        */
-      public com.openxc.BinaryMessages.TranslatedMessage.Builder getTranslatedMessageBuilder() {
+      public com.openxc.BinaryMessages.SimpleMessage.Builder getSimpleMessageBuilder() {
         bitField0_ |= 0x00000004;
         onChanged();
-        return getTranslatedMessageFieldBuilder().getBuilder();
+        return getSimpleMessageFieldBuilder().getBuilder();
       }
       /**
-       * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+       * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
        */
-      public com.openxc.BinaryMessages.TranslatedMessageOrBuilder getTranslatedMessageOrBuilder() {
-        if (translatedMessageBuilder_ != null) {
-          return translatedMessageBuilder_.getMessageOrBuilder();
+      public com.openxc.BinaryMessages.SimpleMessageOrBuilder getSimpleMessageOrBuilder() {
+        if (simpleMessageBuilder_ != null) {
+          return simpleMessageBuilder_.getMessageOrBuilder();
         } else {
-          return translatedMessage_;
+          return simpleMessage_;
         }
       }
       /**
-       * <code>optional .openxc.TranslatedMessage translated_message = 3;</code>
+       * <code>optional .openxc.SimpleMessage simple_message = 3;</code>
        */
       private com.google.protobuf.SingleFieldBuilder<
-          com.openxc.BinaryMessages.TranslatedMessage, com.openxc.BinaryMessages.TranslatedMessage.Builder, com.openxc.BinaryMessages.TranslatedMessageOrBuilder> 
-          getTranslatedMessageFieldBuilder() {
-        if (translatedMessageBuilder_ == null) {
-          translatedMessageBuilder_ = new com.google.protobuf.SingleFieldBuilder<
-              com.openxc.BinaryMessages.TranslatedMessage, com.openxc.BinaryMessages.TranslatedMessage.Builder, com.openxc.BinaryMessages.TranslatedMessageOrBuilder>(
-                  translatedMessage_,
+          com.openxc.BinaryMessages.SimpleMessage, com.openxc.BinaryMessages.SimpleMessage.Builder, com.openxc.BinaryMessages.SimpleMessageOrBuilder> 
+          getSimpleMessageFieldBuilder() {
+        if (simpleMessageBuilder_ == null) {
+          simpleMessageBuilder_ = new com.google.protobuf.SingleFieldBuilder<
+              com.openxc.BinaryMessages.SimpleMessage, com.openxc.BinaryMessages.SimpleMessage.Builder, com.openxc.BinaryMessages.SimpleMessageOrBuilder>(
+                  simpleMessage_,
                   getParentForChildren(),
                   isClean());
-          translatedMessage_ = null;
+          simpleMessage_ = null;
         }
-        return translatedMessageBuilder_;
+        return simpleMessageBuilder_;
       }
 
       // optional .openxc.DiagnosticResponse diagnostic_response = 4;
@@ -1482,7 +1482,7 @@ public final class BinaryMessages {
     // @@protoc_insertion_point(class_scope:openxc.VehicleMessage)
   }
 
-  public interface RawMessageOrBuilder
+  public interface CanMessageOrBuilder
       extends com.google.protobuf.MessageOrBuilder {
 
     // optional int32 bus = 1;
@@ -1515,35 +1515,35 @@ public final class BinaryMessages {
      */
     com.google.protobuf.ByteString getData();
 
-    // optional .openxc.RawMessage.FrameFormat frame_format = 4;
+    // optional .openxc.CanMessage.FrameFormat frame_format = 4;
     /**
-     * <code>optional .openxc.RawMessage.FrameFormat frame_format = 4;</code>
+     * <code>optional .openxc.CanMessage.FrameFormat frame_format = 4;</code>
      */
     boolean hasFrameFormat();
     /**
-     * <code>optional .openxc.RawMessage.FrameFormat frame_format = 4;</code>
+     * <code>optional .openxc.CanMessage.FrameFormat frame_format = 4;</code>
      */
-    com.openxc.BinaryMessages.RawMessage.FrameFormat getFrameFormat();
+    com.openxc.BinaryMessages.CanMessage.FrameFormat getFrameFormat();
   }
   /**
-   * Protobuf type {@code openxc.RawMessage}
+   * Protobuf type {@code openxc.CanMessage}
    */
-  public static final class RawMessage extends
+  public static final class CanMessage extends
       com.google.protobuf.GeneratedMessage
-      implements RawMessageOrBuilder {
-    // Use RawMessage.newBuilder() to construct.
-    private RawMessage(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
+      implements CanMessageOrBuilder {
+    // Use CanMessage.newBuilder() to construct.
+    private CanMessage(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
       this.unknownFields = builder.getUnknownFields();
     }
-    private RawMessage(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+    private CanMessage(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
 
-    private static final RawMessage defaultInstance;
-    public static RawMessage getDefaultInstance() {
+    private static final CanMessage defaultInstance;
+    public static CanMessage getDefaultInstance() {
       return defaultInstance;
     }
 
-    public RawMessage getDefaultInstanceForType() {
+    public CanMessage getDefaultInstanceForType() {
       return defaultInstance;
     }
 
@@ -1553,7 +1553,7 @@ public final class BinaryMessages {
         getUnknownFields() {
       return this.unknownFields;
     }
-    private RawMessage(
+    private CanMessage(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -1593,7 +1593,7 @@ public final class BinaryMessages {
             }
             case 32: {
               int rawValue = input.readEnum();
-              com.openxc.BinaryMessages.RawMessage.FrameFormat value = com.openxc.BinaryMessages.RawMessage.FrameFormat.valueOf(rawValue);
+              com.openxc.BinaryMessages.CanMessage.FrameFormat value = com.openxc.BinaryMessages.CanMessage.FrameFormat.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(4, rawValue);
               } else {
@@ -1616,33 +1616,33 @@ public final class BinaryMessages {
     }
     public static final com.google.protobuf.Descriptors.Descriptor
         getDescriptor() {
-      return com.openxc.BinaryMessages.internal_static_openxc_RawMessage_descriptor;
+      return com.openxc.BinaryMessages.internal_static_openxc_CanMessage_descriptor;
     }
 
     protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
-      return com.openxc.BinaryMessages.internal_static_openxc_RawMessage_fieldAccessorTable
+      return com.openxc.BinaryMessages.internal_static_openxc_CanMessage_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
-              com.openxc.BinaryMessages.RawMessage.class, com.openxc.BinaryMessages.RawMessage.Builder.class);
+              com.openxc.BinaryMessages.CanMessage.class, com.openxc.BinaryMessages.CanMessage.Builder.class);
     }
 
-    public static com.google.protobuf.Parser<RawMessage> PARSER =
-        new com.google.protobuf.AbstractParser<RawMessage>() {
-      public RawMessage parsePartialFrom(
+    public static com.google.protobuf.Parser<CanMessage> PARSER =
+        new com.google.protobuf.AbstractParser<CanMessage>() {
+      public CanMessage parsePartialFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws com.google.protobuf.InvalidProtocolBufferException {
-        return new RawMessage(input, extensionRegistry);
+        return new CanMessage(input, extensionRegistry);
       }
     };
 
     @java.lang.Override
-    public com.google.protobuf.Parser<RawMessage> getParserForType() {
+    public com.google.protobuf.Parser<CanMessage> getParserForType() {
       return PARSER;
     }
 
     /**
-     * Protobuf enum {@code openxc.RawMessage.FrameFormat}
+     * Protobuf enum {@code openxc.CanMessage.FrameFormat}
      */
     public enum FrameFormat
         implements com.google.protobuf.ProtocolMessageEnum {
@@ -1698,7 +1698,7 @@ public final class BinaryMessages {
       }
       public static final com.google.protobuf.Descriptors.EnumDescriptor
           getDescriptor() {
-        return com.openxc.BinaryMessages.RawMessage.getDescriptor().getEnumTypes().get(0);
+        return com.openxc.BinaryMessages.CanMessage.getDescriptor().getEnumTypes().get(0);
       }
 
       private static final FrameFormat[] VALUES = values();
@@ -1720,7 +1720,7 @@ public final class BinaryMessages {
         this.value = value;
       }
 
-      // @@protoc_insertion_point(enum_scope:openxc.RawMessage.FrameFormat)
+      // @@protoc_insertion_point(enum_scope:openxc.CanMessage.FrameFormat)
     }
 
     private int bitField0_;
@@ -1772,19 +1772,19 @@ public final class BinaryMessages {
       return data_;
     }
 
-    // optional .openxc.RawMessage.FrameFormat frame_format = 4;
+    // optional .openxc.CanMessage.FrameFormat frame_format = 4;
     public static final int FRAME_FORMAT_FIELD_NUMBER = 4;
-    private com.openxc.BinaryMessages.RawMessage.FrameFormat frameFormat_;
+    private com.openxc.BinaryMessages.CanMessage.FrameFormat frameFormat_;
     /**
-     * <code>optional .openxc.RawMessage.FrameFormat frame_format = 4;</code>
+     * <code>optional .openxc.CanMessage.FrameFormat frame_format = 4;</code>
      */
     public boolean hasFrameFormat() {
       return ((bitField0_ & 0x00000008) == 0x00000008);
     }
     /**
-     * <code>optional .openxc.RawMessage.FrameFormat frame_format = 4;</code>
+     * <code>optional .openxc.CanMessage.FrameFormat frame_format = 4;</code>
      */
-    public com.openxc.BinaryMessages.RawMessage.FrameFormat getFrameFormat() {
+    public com.openxc.BinaryMessages.CanMessage.FrameFormat getFrameFormat() {
       return frameFormat_;
     }
 
@@ -1792,7 +1792,7 @@ public final class BinaryMessages {
       bus_ = 0;
       messageId_ = 0;
       data_ = com.google.protobuf.ByteString.EMPTY;
-      frameFormat_ = com.openxc.BinaryMessages.RawMessage.FrameFormat.STANDARD;
+      frameFormat_ = com.openxc.BinaryMessages.CanMessage.FrameFormat.STANDARD;
     }
     private byte memoizedIsInitialized = -1;
     public final boolean isInitialized() {
@@ -1855,53 +1855,53 @@ public final class BinaryMessages {
       return super.writeReplace();
     }
 
-    public static com.openxc.BinaryMessages.RawMessage parseFrom(
+    public static com.openxc.BinaryMessages.CanMessage parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
       return PARSER.parseFrom(data);
     }
-    public static com.openxc.BinaryMessages.RawMessage parseFrom(
+    public static com.openxc.BinaryMessages.CanMessage parseFrom(
         com.google.protobuf.ByteString data,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
       return PARSER.parseFrom(data, extensionRegistry);
     }
-    public static com.openxc.BinaryMessages.RawMessage parseFrom(byte[] data)
+    public static com.openxc.BinaryMessages.CanMessage parseFrom(byte[] data)
         throws com.google.protobuf.InvalidProtocolBufferException {
       return PARSER.parseFrom(data);
     }
-    public static com.openxc.BinaryMessages.RawMessage parseFrom(
+    public static com.openxc.BinaryMessages.CanMessage parseFrom(
         byte[] data,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
       return PARSER.parseFrom(data, extensionRegistry);
     }
-    public static com.openxc.BinaryMessages.RawMessage parseFrom(java.io.InputStream input)
+    public static com.openxc.BinaryMessages.CanMessage parseFrom(java.io.InputStream input)
         throws java.io.IOException {
       return PARSER.parseFrom(input);
     }
-    public static com.openxc.BinaryMessages.RawMessage parseFrom(
+    public static com.openxc.BinaryMessages.CanMessage parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
       return PARSER.parseFrom(input, extensionRegistry);
     }
-    public static com.openxc.BinaryMessages.RawMessage parseDelimitedFrom(java.io.InputStream input)
+    public static com.openxc.BinaryMessages.CanMessage parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
       return PARSER.parseDelimitedFrom(input);
     }
-    public static com.openxc.BinaryMessages.RawMessage parseDelimitedFrom(
+    public static com.openxc.BinaryMessages.CanMessage parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
       return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
-    public static com.openxc.BinaryMessages.RawMessage parseFrom(
+    public static com.openxc.BinaryMessages.CanMessage parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
       return PARSER.parseFrom(input);
     }
-    public static com.openxc.BinaryMessages.RawMessage parseFrom(
+    public static com.openxc.BinaryMessages.CanMessage parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
@@ -1910,7 +1910,7 @@ public final class BinaryMessages {
 
     public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder(com.openxc.BinaryMessages.RawMessage prototype) {
+    public static Builder newBuilder(com.openxc.BinaryMessages.CanMessage prototype) {
       return newBuilder().mergeFrom(prototype);
     }
     public Builder toBuilder() { return newBuilder(this); }
@@ -1922,24 +1922,24 @@ public final class BinaryMessages {
       return builder;
     }
     /**
-     * Protobuf type {@code openxc.RawMessage}
+     * Protobuf type {@code openxc.CanMessage}
      */
     public static final class Builder extends
         com.google.protobuf.GeneratedMessage.Builder<Builder>
-       implements com.openxc.BinaryMessages.RawMessageOrBuilder {
+       implements com.openxc.BinaryMessages.CanMessageOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
-        return com.openxc.BinaryMessages.internal_static_openxc_RawMessage_descriptor;
+        return com.openxc.BinaryMessages.internal_static_openxc_CanMessage_descriptor;
       }
 
       protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
-        return com.openxc.BinaryMessages.internal_static_openxc_RawMessage_fieldAccessorTable
+        return com.openxc.BinaryMessages.internal_static_openxc_CanMessage_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
-                com.openxc.BinaryMessages.RawMessage.class, com.openxc.BinaryMessages.RawMessage.Builder.class);
+                com.openxc.BinaryMessages.CanMessage.class, com.openxc.BinaryMessages.CanMessage.Builder.class);
       }
 
-      // Construct using com.openxc.BinaryMessages.RawMessage.newBuilder()
+      // Construct using com.openxc.BinaryMessages.CanMessage.newBuilder()
       private Builder() {
         maybeForceBuilderInitialization();
       }
@@ -1965,7 +1965,7 @@ public final class BinaryMessages {
         bitField0_ = (bitField0_ & ~0x00000002);
         data_ = com.google.protobuf.ByteString.EMPTY;
         bitField0_ = (bitField0_ & ~0x00000004);
-        frameFormat_ = com.openxc.BinaryMessages.RawMessage.FrameFormat.STANDARD;
+        frameFormat_ = com.openxc.BinaryMessages.CanMessage.FrameFormat.STANDARD;
         bitField0_ = (bitField0_ & ~0x00000008);
         return this;
       }
@@ -1976,23 +1976,23 @@ public final class BinaryMessages {
 
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
-        return com.openxc.BinaryMessages.internal_static_openxc_RawMessage_descriptor;
+        return com.openxc.BinaryMessages.internal_static_openxc_CanMessage_descriptor;
       }
 
-      public com.openxc.BinaryMessages.RawMessage getDefaultInstanceForType() {
-        return com.openxc.BinaryMessages.RawMessage.getDefaultInstance();
+      public com.openxc.BinaryMessages.CanMessage getDefaultInstanceForType() {
+        return com.openxc.BinaryMessages.CanMessage.getDefaultInstance();
       }
 
-      public com.openxc.BinaryMessages.RawMessage build() {
-        com.openxc.BinaryMessages.RawMessage result = buildPartial();
+      public com.openxc.BinaryMessages.CanMessage build() {
+        com.openxc.BinaryMessages.CanMessage result = buildPartial();
         if (!result.isInitialized()) {
           throw newUninitializedMessageException(result);
         }
         return result;
       }
 
-      public com.openxc.BinaryMessages.RawMessage buildPartial() {
-        com.openxc.BinaryMessages.RawMessage result = new com.openxc.BinaryMessages.RawMessage(this);
+      public com.openxc.BinaryMessages.CanMessage buildPartial() {
+        com.openxc.BinaryMessages.CanMessage result = new com.openxc.BinaryMessages.CanMessage(this);
         int from_bitField0_ = bitField0_;
         int to_bitField0_ = 0;
         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
@@ -2017,16 +2017,16 @@ public final class BinaryMessages {
       }
 
       public Builder mergeFrom(com.google.protobuf.Message other) {
-        if (other instanceof com.openxc.BinaryMessages.RawMessage) {
-          return mergeFrom((com.openxc.BinaryMessages.RawMessage)other);
+        if (other instanceof com.openxc.BinaryMessages.CanMessage) {
+          return mergeFrom((com.openxc.BinaryMessages.CanMessage)other);
         } else {
           super.mergeFrom(other);
           return this;
         }
       }
 
-      public Builder mergeFrom(com.openxc.BinaryMessages.RawMessage other) {
-        if (other == com.openxc.BinaryMessages.RawMessage.getDefaultInstance()) return this;
+      public Builder mergeFrom(com.openxc.BinaryMessages.CanMessage other) {
+        if (other == com.openxc.BinaryMessages.CanMessage.getDefaultInstance()) return this;
         if (other.hasBus()) {
           setBus(other.getBus());
         }
@@ -2051,11 +2051,11 @@ public final class BinaryMessages {
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
-        com.openxc.BinaryMessages.RawMessage parsedMessage = null;
+        com.openxc.BinaryMessages.CanMessage parsedMessage = null;
         try {
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
-          parsedMessage = (com.openxc.BinaryMessages.RawMessage) e.getUnfinishedMessage();
+          parsedMessage = (com.openxc.BinaryMessages.CanMessage) e.getUnfinishedMessage();
           throw e;
         } finally {
           if (parsedMessage != null) {
@@ -2168,24 +2168,24 @@ public final class BinaryMessages {
         return this;
       }
 
-      // optional .openxc.RawMessage.FrameFormat frame_format = 4;
-      private com.openxc.BinaryMessages.RawMessage.FrameFormat frameFormat_ = com.openxc.BinaryMessages.RawMessage.FrameFormat.STANDARD;
+      // optional .openxc.CanMessage.FrameFormat frame_format = 4;
+      private com.openxc.BinaryMessages.CanMessage.FrameFormat frameFormat_ = com.openxc.BinaryMessages.CanMessage.FrameFormat.STANDARD;
       /**
-       * <code>optional .openxc.RawMessage.FrameFormat frame_format = 4;</code>
+       * <code>optional .openxc.CanMessage.FrameFormat frame_format = 4;</code>
        */
       public boolean hasFrameFormat() {
         return ((bitField0_ & 0x00000008) == 0x00000008);
       }
       /**
-       * <code>optional .openxc.RawMessage.FrameFormat frame_format = 4;</code>
+       * <code>optional .openxc.CanMessage.FrameFormat frame_format = 4;</code>
        */
-      public com.openxc.BinaryMessages.RawMessage.FrameFormat getFrameFormat() {
+      public com.openxc.BinaryMessages.CanMessage.FrameFormat getFrameFormat() {
         return frameFormat_;
       }
       /**
-       * <code>optional .openxc.RawMessage.FrameFormat frame_format = 4;</code>
+       * <code>optional .openxc.CanMessage.FrameFormat frame_format = 4;</code>
        */
-      public Builder setFrameFormat(com.openxc.BinaryMessages.RawMessage.FrameFormat value) {
+      public Builder setFrameFormat(com.openxc.BinaryMessages.CanMessage.FrameFormat value) {
         if (value == null) {
           throw new NullPointerException();
         }
@@ -2195,24 +2195,24 @@ public final class BinaryMessages {
         return this;
       }
       /**
-       * <code>optional .openxc.RawMessage.FrameFormat frame_format = 4;</code>
+       * <code>optional .openxc.CanMessage.FrameFormat frame_format = 4;</code>
        */
       public Builder clearFrameFormat() {
         bitField0_ = (bitField0_ & ~0x00000008);
-        frameFormat_ = com.openxc.BinaryMessages.RawMessage.FrameFormat.STANDARD;
+        frameFormat_ = com.openxc.BinaryMessages.CanMessage.FrameFormat.STANDARD;
         onChanged();
         return this;
       }
 
-      // @@protoc_insertion_point(builder_scope:openxc.RawMessage)
+      // @@protoc_insertion_point(builder_scope:openxc.CanMessage)
     }
 
     static {
-      defaultInstance = new RawMessage(true);
+      defaultInstance = new CanMessage(true);
       defaultInstance.initFields();
     }
 
-    // @@protoc_insertion_point(class_scope:openxc.RawMessage)
+    // @@protoc_insertion_point(class_scope:openxc.CanMessage)
   }
 
   public interface ControlCommandOrBuilder
@@ -9938,18 +9938,18 @@ public final class BinaryMessages {
     // @@protoc_insertion_point(class_scope:openxc.DynamicField)
   }
 
-  public interface TranslatedMessageOrBuilder
+  public interface SimpleMessageOrBuilder
       extends com.google.protobuf.MessageOrBuilder {
 
-    // optional .openxc.TranslatedMessage.Type type = 1;
+    // optional .openxc.SimpleMessage.Type type = 1;
     /**
-     * <code>optional .openxc.TranslatedMessage.Type type = 1;</code>
+     * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
      */
     boolean hasType();
     /**
-     * <code>optional .openxc.TranslatedMessage.Type type = 1;</code>
+     * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
      */
-    com.openxc.BinaryMessages.TranslatedMessage.Type getType();
+    com.openxc.BinaryMessages.SimpleMessage.Type getType();
 
     // optional string name = 2;
     /**
@@ -9995,24 +9995,24 @@ public final class BinaryMessages {
     com.openxc.BinaryMessages.DynamicFieldOrBuilder getEventOrBuilder();
   }
   /**
-   * Protobuf type {@code openxc.TranslatedMessage}
+   * Protobuf type {@code openxc.SimpleMessage}
    */
-  public static final class TranslatedMessage extends
+  public static final class SimpleMessage extends
       com.google.protobuf.GeneratedMessage
-      implements TranslatedMessageOrBuilder {
-    // Use TranslatedMessage.newBuilder() to construct.
-    private TranslatedMessage(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
+      implements SimpleMessageOrBuilder {
+    // Use SimpleMessage.newBuilder() to construct.
+    private SimpleMessage(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
       this.unknownFields = builder.getUnknownFields();
     }
-    private TranslatedMessage(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+    private SimpleMessage(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
 
-    private static final TranslatedMessage defaultInstance;
-    public static TranslatedMessage getDefaultInstance() {
+    private static final SimpleMessage defaultInstance;
+    public static SimpleMessage getDefaultInstance() {
       return defaultInstance;
     }
 
-    public TranslatedMessage getDefaultInstanceForType() {
+    public SimpleMessage getDefaultInstanceForType() {
       return defaultInstance;
     }
 
@@ -10022,7 +10022,7 @@ public final class BinaryMessages {
         getUnknownFields() {
       return this.unknownFields;
     }
-    private TranslatedMessage(
+    private SimpleMessage(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -10047,7 +10047,7 @@ public final class BinaryMessages {
             }
             case 8: {
               int rawValue = input.readEnum();
-              com.openxc.BinaryMessages.TranslatedMessage.Type value = com.openxc.BinaryMessages.TranslatedMessage.Type.valueOf(rawValue);
+              com.openxc.BinaryMessages.SimpleMessage.Type value = com.openxc.BinaryMessages.SimpleMessage.Type.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
@@ -10101,33 +10101,33 @@ public final class BinaryMessages {
     }
     public static final com.google.protobuf.Descriptors.Descriptor
         getDescriptor() {
-      return com.openxc.BinaryMessages.internal_static_openxc_TranslatedMessage_descriptor;
+      return com.openxc.BinaryMessages.internal_static_openxc_SimpleMessage_descriptor;
     }
 
     protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
-      return com.openxc.BinaryMessages.internal_static_openxc_TranslatedMessage_fieldAccessorTable
+      return com.openxc.BinaryMessages.internal_static_openxc_SimpleMessage_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
-              com.openxc.BinaryMessages.TranslatedMessage.class, com.openxc.BinaryMessages.TranslatedMessage.Builder.class);
+              com.openxc.BinaryMessages.SimpleMessage.class, com.openxc.BinaryMessages.SimpleMessage.Builder.class);
     }
 
-    public static com.google.protobuf.Parser<TranslatedMessage> PARSER =
-        new com.google.protobuf.AbstractParser<TranslatedMessage>() {
-      public TranslatedMessage parsePartialFrom(
+    public static com.google.protobuf.Parser<SimpleMessage> PARSER =
+        new com.google.protobuf.AbstractParser<SimpleMessage>() {
+      public SimpleMessage parsePartialFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws com.google.protobuf.InvalidProtocolBufferException {
-        return new TranslatedMessage(input, extensionRegistry);
+        return new SimpleMessage(input, extensionRegistry);
       }
     };
 
     @java.lang.Override
-    public com.google.protobuf.Parser<TranslatedMessage> getParserForType() {
+    public com.google.protobuf.Parser<SimpleMessage> getParserForType() {
       return PARSER;
     }
 
     /**
-     * Protobuf enum {@code openxc.TranslatedMessage.Type}
+     * Protobuf enum {@code openxc.SimpleMessage.Type}
      */
     public enum Type
         implements com.google.protobuf.ProtocolMessageEnum {
@@ -10219,7 +10219,7 @@ public final class BinaryMessages {
       }
       public static final com.google.protobuf.Descriptors.EnumDescriptor
           getDescriptor() {
-        return com.openxc.BinaryMessages.TranslatedMessage.getDescriptor().getEnumTypes().get(0);
+        return com.openxc.BinaryMessages.SimpleMessage.getDescriptor().getEnumTypes().get(0);
       }
 
       private static final Type[] VALUES = values();
@@ -10241,23 +10241,23 @@ public final class BinaryMessages {
         this.value = value;
       }
 
-      // @@protoc_insertion_point(enum_scope:openxc.TranslatedMessage.Type)
+      // @@protoc_insertion_point(enum_scope:openxc.SimpleMessage.Type)
     }
 
     private int bitField0_;
-    // optional .openxc.TranslatedMessage.Type type = 1;
+    // optional .openxc.SimpleMessage.Type type = 1;
     public static final int TYPE_FIELD_NUMBER = 1;
-    private com.openxc.BinaryMessages.TranslatedMessage.Type type_;
+    private com.openxc.BinaryMessages.SimpleMessage.Type type_;
     /**
-     * <code>optional .openxc.TranslatedMessage.Type type = 1;</code>
+     * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
      */
     public boolean hasType() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
     /**
-     * <code>optional .openxc.TranslatedMessage.Type type = 1;</code>
+     * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
      */
-    public com.openxc.BinaryMessages.TranslatedMessage.Type getType() {
+    public com.openxc.BinaryMessages.SimpleMessage.Type getType() {
       return type_;
     }
 
@@ -10349,7 +10349,7 @@ public final class BinaryMessages {
     }
 
     private void initFields() {
-      type_ = com.openxc.BinaryMessages.TranslatedMessage.Type.STRING;
+      type_ = com.openxc.BinaryMessages.SimpleMessage.Type.STRING;
       name_ = "";
       value_ = com.openxc.BinaryMessages.DynamicField.getDefaultInstance();
       event_ = com.openxc.BinaryMessages.DynamicField.getDefaultInstance();
@@ -10415,53 +10415,53 @@ public final class BinaryMessages {
       return super.writeReplace();
     }
 
-    public static com.openxc.BinaryMessages.TranslatedMessage parseFrom(
+    public static com.openxc.BinaryMessages.SimpleMessage parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
       return PARSER.parseFrom(data);
     }
-    public static com.openxc.BinaryMessages.TranslatedMessage parseFrom(
+    public static com.openxc.BinaryMessages.SimpleMessage parseFrom(
         com.google.protobuf.ByteString data,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
       return PARSER.parseFrom(data, extensionRegistry);
     }
-    public static com.openxc.BinaryMessages.TranslatedMessage parseFrom(byte[] data)
+    public static com.openxc.BinaryMessages.SimpleMessage parseFrom(byte[] data)
         throws com.google.protobuf.InvalidProtocolBufferException {
       return PARSER.parseFrom(data);
     }
-    public static com.openxc.BinaryMessages.TranslatedMessage parseFrom(
+    public static com.openxc.BinaryMessages.SimpleMessage parseFrom(
         byte[] data,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
       return PARSER.parseFrom(data, extensionRegistry);
     }
-    public static com.openxc.BinaryMessages.TranslatedMessage parseFrom(java.io.InputStream input)
+    public static com.openxc.BinaryMessages.SimpleMessage parseFrom(java.io.InputStream input)
         throws java.io.IOException {
       return PARSER.parseFrom(input);
     }
-    public static com.openxc.BinaryMessages.TranslatedMessage parseFrom(
+    public static com.openxc.BinaryMessages.SimpleMessage parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
       return PARSER.parseFrom(input, extensionRegistry);
     }
-    public static com.openxc.BinaryMessages.TranslatedMessage parseDelimitedFrom(java.io.InputStream input)
+    public static com.openxc.BinaryMessages.SimpleMessage parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
       return PARSER.parseDelimitedFrom(input);
     }
-    public static com.openxc.BinaryMessages.TranslatedMessage parseDelimitedFrom(
+    public static com.openxc.BinaryMessages.SimpleMessage parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
       return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
-    public static com.openxc.BinaryMessages.TranslatedMessage parseFrom(
+    public static com.openxc.BinaryMessages.SimpleMessage parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
       return PARSER.parseFrom(input);
     }
-    public static com.openxc.BinaryMessages.TranslatedMessage parseFrom(
+    public static com.openxc.BinaryMessages.SimpleMessage parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
@@ -10470,7 +10470,7 @@ public final class BinaryMessages {
 
     public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder(com.openxc.BinaryMessages.TranslatedMessage prototype) {
+    public static Builder newBuilder(com.openxc.BinaryMessages.SimpleMessage prototype) {
       return newBuilder().mergeFrom(prototype);
     }
     public Builder toBuilder() { return newBuilder(this); }
@@ -10482,24 +10482,24 @@ public final class BinaryMessages {
       return builder;
     }
     /**
-     * Protobuf type {@code openxc.TranslatedMessage}
+     * Protobuf type {@code openxc.SimpleMessage}
      */
     public static final class Builder extends
         com.google.protobuf.GeneratedMessage.Builder<Builder>
-       implements com.openxc.BinaryMessages.TranslatedMessageOrBuilder {
+       implements com.openxc.BinaryMessages.SimpleMessageOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
-        return com.openxc.BinaryMessages.internal_static_openxc_TranslatedMessage_descriptor;
+        return com.openxc.BinaryMessages.internal_static_openxc_SimpleMessage_descriptor;
       }
 
       protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
-        return com.openxc.BinaryMessages.internal_static_openxc_TranslatedMessage_fieldAccessorTable
+        return com.openxc.BinaryMessages.internal_static_openxc_SimpleMessage_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
-                com.openxc.BinaryMessages.TranslatedMessage.class, com.openxc.BinaryMessages.TranslatedMessage.Builder.class);
+                com.openxc.BinaryMessages.SimpleMessage.class, com.openxc.BinaryMessages.SimpleMessage.Builder.class);
       }
 
-      // Construct using com.openxc.BinaryMessages.TranslatedMessage.newBuilder()
+      // Construct using com.openxc.BinaryMessages.SimpleMessage.newBuilder()
       private Builder() {
         maybeForceBuilderInitialization();
       }
@@ -10521,7 +10521,7 @@ public final class BinaryMessages {
 
       public Builder clear() {
         super.clear();
-        type_ = com.openxc.BinaryMessages.TranslatedMessage.Type.STRING;
+        type_ = com.openxc.BinaryMessages.SimpleMessage.Type.STRING;
         bitField0_ = (bitField0_ & ~0x00000001);
         name_ = "";
         bitField0_ = (bitField0_ & ~0x00000002);
@@ -10546,23 +10546,23 @@ public final class BinaryMessages {
 
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
-        return com.openxc.BinaryMessages.internal_static_openxc_TranslatedMessage_descriptor;
+        return com.openxc.BinaryMessages.internal_static_openxc_SimpleMessage_descriptor;
       }
 
-      public com.openxc.BinaryMessages.TranslatedMessage getDefaultInstanceForType() {
-        return com.openxc.BinaryMessages.TranslatedMessage.getDefaultInstance();
+      public com.openxc.BinaryMessages.SimpleMessage getDefaultInstanceForType() {
+        return com.openxc.BinaryMessages.SimpleMessage.getDefaultInstance();
       }
 
-      public com.openxc.BinaryMessages.TranslatedMessage build() {
-        com.openxc.BinaryMessages.TranslatedMessage result = buildPartial();
+      public com.openxc.BinaryMessages.SimpleMessage build() {
+        com.openxc.BinaryMessages.SimpleMessage result = buildPartial();
         if (!result.isInitialized()) {
           throw newUninitializedMessageException(result);
         }
         return result;
       }
 
-      public com.openxc.BinaryMessages.TranslatedMessage buildPartial() {
-        com.openxc.BinaryMessages.TranslatedMessage result = new com.openxc.BinaryMessages.TranslatedMessage(this);
+      public com.openxc.BinaryMessages.SimpleMessage buildPartial() {
+        com.openxc.BinaryMessages.SimpleMessage result = new com.openxc.BinaryMessages.SimpleMessage(this);
         int from_bitField0_ = bitField0_;
         int to_bitField0_ = 0;
         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
@@ -10595,16 +10595,16 @@ public final class BinaryMessages {
       }
 
       public Builder mergeFrom(com.google.protobuf.Message other) {
-        if (other instanceof com.openxc.BinaryMessages.TranslatedMessage) {
-          return mergeFrom((com.openxc.BinaryMessages.TranslatedMessage)other);
+        if (other instanceof com.openxc.BinaryMessages.SimpleMessage) {
+          return mergeFrom((com.openxc.BinaryMessages.SimpleMessage)other);
         } else {
           super.mergeFrom(other);
           return this;
         }
       }
 
-      public Builder mergeFrom(com.openxc.BinaryMessages.TranslatedMessage other) {
-        if (other == com.openxc.BinaryMessages.TranslatedMessage.getDefaultInstance()) return this;
+      public Builder mergeFrom(com.openxc.BinaryMessages.SimpleMessage other) {
+        if (other == com.openxc.BinaryMessages.SimpleMessage.getDefaultInstance()) return this;
         if (other.hasType()) {
           setType(other.getType());
         }
@@ -10631,11 +10631,11 @@ public final class BinaryMessages {
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
-        com.openxc.BinaryMessages.TranslatedMessage parsedMessage = null;
+        com.openxc.BinaryMessages.SimpleMessage parsedMessage = null;
         try {
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
-          parsedMessage = (com.openxc.BinaryMessages.TranslatedMessage) e.getUnfinishedMessage();
+          parsedMessage = (com.openxc.BinaryMessages.SimpleMessage) e.getUnfinishedMessage();
           throw e;
         } finally {
           if (parsedMessage != null) {
@@ -10646,24 +10646,24 @@ public final class BinaryMessages {
       }
       private int bitField0_;
 
-      // optional .openxc.TranslatedMessage.Type type = 1;
-      private com.openxc.BinaryMessages.TranslatedMessage.Type type_ = com.openxc.BinaryMessages.TranslatedMessage.Type.STRING;
+      // optional .openxc.SimpleMessage.Type type = 1;
+      private com.openxc.BinaryMessages.SimpleMessage.Type type_ = com.openxc.BinaryMessages.SimpleMessage.Type.STRING;
       /**
-       * <code>optional .openxc.TranslatedMessage.Type type = 1;</code>
+       * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
        */
       public boolean hasType() {
         return ((bitField0_ & 0x00000001) == 0x00000001);
       }
       /**
-       * <code>optional .openxc.TranslatedMessage.Type type = 1;</code>
+       * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
        */
-      public com.openxc.BinaryMessages.TranslatedMessage.Type getType() {
+      public com.openxc.BinaryMessages.SimpleMessage.Type getType() {
         return type_;
       }
       /**
-       * <code>optional .openxc.TranslatedMessage.Type type = 1;</code>
+       * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
        */
-      public Builder setType(com.openxc.BinaryMessages.TranslatedMessage.Type value) {
+      public Builder setType(com.openxc.BinaryMessages.SimpleMessage.Type value) {
         if (value == null) {
           throw new NullPointerException();
         }
@@ -10673,11 +10673,11 @@ public final class BinaryMessages {
         return this;
       }
       /**
-       * <code>optional .openxc.TranslatedMessage.Type type = 1;</code>
+       * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
        */
       public Builder clearType() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        type_ = com.openxc.BinaryMessages.TranslatedMessage.Type.STRING;
+        type_ = com.openxc.BinaryMessages.SimpleMessage.Type.STRING;
         onChanged();
         return this;
       }
@@ -10990,15 +10990,15 @@ public final class BinaryMessages {
         return eventBuilder_;
       }
 
-      // @@protoc_insertion_point(builder_scope:openxc.TranslatedMessage)
+      // @@protoc_insertion_point(builder_scope:openxc.SimpleMessage)
     }
 
     static {
-      defaultInstance = new TranslatedMessage(true);
+      defaultInstance = new SimpleMessage(true);
       defaultInstance.initFields();
     }
 
-    // @@protoc_insertion_point(class_scope:openxc.TranslatedMessage)
+    // @@protoc_insertion_point(class_scope:openxc.SimpleMessage)
   }
 
   private static com.google.protobuf.Descriptors.Descriptor
@@ -11007,10 +11007,10 @@ public final class BinaryMessages {
     com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_openxc_VehicleMessage_fieldAccessorTable;
   private static com.google.protobuf.Descriptors.Descriptor
-    internal_static_openxc_RawMessage_descriptor;
+    internal_static_openxc_CanMessage_descriptor;
   private static
     com.google.protobuf.GeneratedMessage.FieldAccessorTable
-      internal_static_openxc_RawMessage_fieldAccessorTable;
+      internal_static_openxc_CanMessage_fieldAccessorTable;
   private static com.google.protobuf.Descriptors.Descriptor
     internal_static_openxc_ControlCommand_descriptor;
   private static
@@ -11062,10 +11062,10 @@ public final class BinaryMessages {
     com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_openxc_DynamicField_fieldAccessorTable;
   private static com.google.protobuf.Descriptors.Descriptor
-    internal_static_openxc_TranslatedMessage_descriptor;
+    internal_static_openxc_SimpleMessage_descriptor;
   private static
     com.google.protobuf.GeneratedMessage.FieldAccessorTable
-      internal_static_openxc_TranslatedMessage_fieldAccessorTable;
+      internal_static_openxc_SimpleMessage_fieldAccessorTable;
 
   public static com.google.protobuf.Descriptors.FileDescriptor
       getDescriptor() {
@@ -11075,71 +11075,70 @@ public final class BinaryMessages {
       descriptor;
   static {
     java.lang.String[] descriptorData = {
-      "\n\014openxc.proto\022\006openxc\"\224\003\n\016VehicleMessag" +
+      "\n\014openxc.proto\022\006openxc\"\210\003\n\016VehicleMessag" +
       "e\022)\n\004type\030\001 \001(\0162\033.openxc.VehicleMessage." +
-      "Type\022\'\n\013raw_message\030\002 \001(\0132\022.openxc.RawMe" +
-      "ssage\0225\n\022translated_message\030\003 \001(\0132\031.open" +
-      "xc.TranslatedMessage\0227\n\023diagnostic_respo" +
-      "nse\030\004 \001(\0132\032.openxc.DiagnosticResponse\022/\n" +
-      "\017control_command\030\005 \001(\0132\026.openxc.ControlC" +
-      "ommand\0221\n\020command_response\030\006 \001(\0132\027.openx" +
-      "c.CommandResponse\"Z\n\004Type\022\007\n\003RAW\020\001\022\016\n\nTR" +
-      "ANSLATED\020\002\022\016\n\nDIAGNOSTIC\020\003\022\023\n\017CONTROL_CO",
-      "MMAND\020\004\022\024\n\020COMMAND_RESPONSE\020\005\"\234\001\n\nRawMes" +
-      "sage\022\013\n\003bus\030\001 \001(\005\022\022\n\nmessage_id\030\002 \001(\r\022\014\n" +
-      "\004data\030\003 \001(\014\0224\n\014frame_format\030\004 \001(\0162\036.open" +
-      "xc.RawMessage.FrameFormat\")\n\013FrameFormat" +
-      "\022\014\n\010STANDARD\020\001\022\014\n\010EXTENDED\020\002\"\270\004\n\016Control" +
-      "Command\022)\n\004type\030\001 \001(\0162\033.openxc.ControlCo" +
-      "mmand.Type\022<\n\022diagnostic_request\030\002 \001(\0132 " +
-      ".openxc.DiagnosticControlCommand\022G\n\030pass" +
-      "through_mode_request\030\003 \001(\0132%.openxc.Pass" +
-      "throughModeControlCommand\022O\n acceptance_",
-      "filter_bypass_command\030\004 \001(\0132%.openxc.Acc" +
-      "eptanceFilterBypassCommand\022<\n\026payload_fo" +
-      "rmat_command\030\005 \001(\0132\034.openxc.PayloadForma" +
-      "tCommand\022O\n predefined_obd2_requests_com" +
-      "mand\030\006 \001(\0132%.openxc.PredefinedObd2Reques" +
-      "tsCommand\"\223\001\n\004Type\022\013\n\007VERSION\020\001\022\r\n\tDEVIC" +
-      "E_ID\020\002\022\016\n\nDIAGNOSTIC\020\003\022\017\n\013PASSTHROUGH\020\004\022" +
-      "\034\n\030ACCEPTANCE_FILTER_BYPASS\020\005\022\022\n\016PAYLOAD" +
-      "_FORMAT\020\006\022\034\n\030PREDEFINED_OBD2_REQUESTS\020\007\"" +
-      "\236\001\n\030DiagnosticControlCommand\022*\n\007request\030",
-      "\001 \001(\0132\031.openxc.DiagnosticRequest\0227\n\006acti" +
-      "on\030\002 \001(\0162\'.openxc.DiagnosticControlComma" +
-      "nd.Action\"\035\n\006Action\022\007\n\003ADD\020\001\022\n\n\006CANCEL\020\002" +
-      "\"=\n\035PassthroughModeControlCommand\022\013\n\003bus" +
-      "\030\001 \001(\005\022\017\n\007enabled\030\002 \001(\010\"<\n\035AcceptanceFil" +
-      "terBypassCommand\022\013\n\003bus\030\001 \001(\005\022\016\n\006bypass\030" +
-      "\002 \001(\010\"{\n\024PayloadFormatCommand\022:\n\006format\030" +
-      "\001 \001(\0162*.openxc.PayloadFormatCommand.Payl" +
-      "oadFormat\"\'\n\rPayloadFormat\022\010\n\004JSON\020\001\022\014\n\010" +
-      "PROTOBUF\020\002\"0\n\035PredefinedObd2RequestsComm",
-      "and\022\017\n\007enabled\030\001 \001(\010\"]\n\017CommandResponse\022" +
-      ")\n\004type\030\001 \001(\0162\033.openxc.ControlCommand.Ty" +
-      "pe\022\017\n\007message\030\002 \001(\t\022\016\n\006status\030\003 \001(\010\"\375\001\n\021" +
-      "DiagnosticRequest\022\013\n\003bus\030\001 \001(\005\022\022\n\nmessag" +
-      "e_id\030\002 \001(\r\022\014\n\004mode\030\003 \001(\r\022\013\n\003pid\030\004 \001(\r\022\017\n" +
-      "\007payload\030\005 \001(\014\022\032\n\022multiple_responses\030\006 \001" +
-      "(\010\022\021\n\tfrequency\030\007 \001(\001\022\014\n\004name\030\010 \001(\t\022;\n\014d" +
-      "ecoded_type\030\t \001(\0162%.openxc.DiagnosticReq" +
-      "uest.DecodedType\"!\n\013DecodedType\022\010\n\004NONE\020" +
-      "\001\022\010\n\004OBD2\020\002\"\241\001\n\022DiagnosticResponse\022\013\n\003bu",
-      "s\030\001 \001(\005\022\022\n\nmessage_id\030\002 \001(\r\022\014\n\004mode\030\003 \001(" +
-      "\r\022\013\n\003pid\030\004 \001(\r\022\017\n\007success\030\005 \001(\010\022\036\n\026negat" +
-      "ive_response_code\030\006 \001(\r\022\017\n\007payload\030\007 \001(\014" +
-      "\022\r\n\005value\030\010 \001(\001\"\242\001\n\014DynamicField\022\'\n\004type" +
-      "\030\001 \001(\0162\031.openxc.DynamicField.Type\022\024\n\014str" +
-      "ing_value\030\002 \001(\t\022\025\n\rnumeric_value\030\003 \001(\001\022\025" +
-      "\n\rboolean_value\030\004 \001(\010\"%\n\004Type\022\n\n\006STRING\020" +
-      "\001\022\007\n\003NUM\020\002\022\010\n\004BOOL\020\003\"\367\001\n\021TranslatedMessa" +
-      "ge\022,\n\004type\030\001 \001(\0162\036.openxc.TranslatedMess" +
-      "age.Type\022\014\n\004name\030\002 \001(\t\022#\n\005value\030\003 \001(\0132\024.",
-      "openxc.DynamicField\022#\n\005event\030\004 \001(\0132\024.ope" +
-      "nxc.DynamicField\"\\\n\004Type\022\n\n\006STRING\020\001\022\007\n\003" +
-      "NUM\020\002\022\010\n\004BOOL\020\003\022\022\n\016EVENTED_STRING\020\004\022\017\n\013E" +
-      "VENTED_NUM\020\005\022\020\n\014EVENTED_BOOL\020\006B\034\n\ncom.op" +
-      "enxcB\016BinaryMessages"
+      "Type\022\'\n\013can_message\030\002 \001(\0132\022.openxc.CanMe" +
+      "ssage\022-\n\016simple_message\030\003 \001(\0132\025.openxc.S" +
+      "impleMessage\0227\n\023diagnostic_response\030\004 \001(" +
+      "\0132\032.openxc.DiagnosticResponse\022/\n\017control" +
+      "_command\030\005 \001(\0132\026.openxc.ControlCommand\0221" +
+      "\n\020command_response\030\006 \001(\0132\027.openxc.Comman" +
+      "dResponse\"V\n\004Type\022\007\n\003CAN\020\001\022\n\n\006SIMPLE\020\002\022\016" +
+      "\n\nDIAGNOSTIC\020\003\022\023\n\017CONTROL_COMMAND\020\004\022\024\n\020C",
+      "OMMAND_RESPONSE\020\005\"\234\001\n\nCanMessage\022\013\n\003bus\030" +
+      "\001 \001(\005\022\022\n\nmessage_id\030\002 \001(\r\022\014\n\004data\030\003 \001(\014\022" +
+      "4\n\014frame_format\030\004 \001(\0162\036.openxc.CanMessag" +
+      "e.FrameFormat\")\n\013FrameFormat\022\014\n\010STANDARD" +
+      "\020\001\022\014\n\010EXTENDED\020\002\"\270\004\n\016ControlCommand\022)\n\004t" +
+      "ype\030\001 \001(\0162\033.openxc.ControlCommand.Type\022<" +
+      "\n\022diagnostic_request\030\002 \001(\0132 .openxc.Diag" +
+      "nosticControlCommand\022G\n\030passthrough_mode" +
+      "_request\030\003 \001(\0132%.openxc.PassthroughModeC" +
+      "ontrolCommand\022O\n acceptance_filter_bypas",
+      "s_command\030\004 \001(\0132%.openxc.AcceptanceFilte" +
+      "rBypassCommand\022<\n\026payload_format_command" +
+      "\030\005 \001(\0132\034.openxc.PayloadFormatCommand\022O\n " +
+      "predefined_obd2_requests_command\030\006 \001(\0132%" +
+      ".openxc.PredefinedObd2RequestsCommand\"\223\001" +
+      "\n\004Type\022\013\n\007VERSION\020\001\022\r\n\tDEVICE_ID\020\002\022\016\n\nDI" +
+      "AGNOSTIC\020\003\022\017\n\013PASSTHROUGH\020\004\022\034\n\030ACCEPTANC" +
+      "E_FILTER_BYPASS\020\005\022\022\n\016PAYLOAD_FORMAT\020\006\022\034\n" +
+      "\030PREDEFINED_OBD2_REQUESTS\020\007\"\236\001\n\030Diagnost" +
+      "icControlCommand\022*\n\007request\030\001 \001(\0132\031.open",
+      "xc.DiagnosticRequest\0227\n\006action\030\002 \001(\0162\'.o" +
+      "penxc.DiagnosticControlCommand.Action\"\035\n" +
+      "\006Action\022\007\n\003ADD\020\001\022\n\n\006CANCEL\020\002\"=\n\035Passthro" +
+      "ughModeControlCommand\022\013\n\003bus\030\001 \001(\005\022\017\n\007en" +
+      "abled\030\002 \001(\010\"<\n\035AcceptanceFilterBypassCom" +
+      "mand\022\013\n\003bus\030\001 \001(\005\022\016\n\006bypass\030\002 \001(\010\"{\n\024Pay" +
+      "loadFormatCommand\022:\n\006format\030\001 \001(\0162*.open" +
+      "xc.PayloadFormatCommand.PayloadFormat\"\'\n" +
+      "\rPayloadFormat\022\010\n\004JSON\020\001\022\014\n\010PROTOBUF\020\002\"0" +
+      "\n\035PredefinedObd2RequestsCommand\022\017\n\007enabl",
+      "ed\030\001 \001(\010\"]\n\017CommandResponse\022)\n\004type\030\001 \001(" +
+      "\0162\033.openxc.ControlCommand.Type\022\017\n\007messag" +
+      "e\030\002 \001(\t\022\016\n\006status\030\003 \001(\010\"\375\001\n\021DiagnosticRe" +
+      "quest\022\013\n\003bus\030\001 \001(\005\022\022\n\nmessage_id\030\002 \001(\r\022\014" +
+      "\n\004mode\030\003 \001(\r\022\013\n\003pid\030\004 \001(\r\022\017\n\007payload\030\005 \001" +
+      "(\014\022\032\n\022multiple_responses\030\006 \001(\010\022\021\n\tfreque" +
+      "ncy\030\007 \001(\001\022\014\n\004name\030\010 \001(\t\022;\n\014decoded_type\030" +
+      "\t \001(\0162%.openxc.DiagnosticRequest.Decoded" +
+      "Type\"!\n\013DecodedType\022\010\n\004NONE\020\001\022\010\n\004OBD2\020\002\"" +
+      "\241\001\n\022DiagnosticResponse\022\013\n\003bus\030\001 \001(\005\022\022\n\nm",
+      "essage_id\030\002 \001(\r\022\014\n\004mode\030\003 \001(\r\022\013\n\003pid\030\004 \001" +
+      "(\r\022\017\n\007success\030\005 \001(\010\022\036\n\026negative_response" +
+      "_code\030\006 \001(\r\022\017\n\007payload\030\007 \001(\014\022\r\n\005value\030\010 " +
+      "\001(\001\"\242\001\n\014DynamicField\022\'\n\004type\030\001 \001(\0162\031.ope" +
+      "nxc.DynamicField.Type\022\024\n\014string_value\030\002 " +
+      "\001(\t\022\025\n\rnumeric_value\030\003 \001(\001\022\025\n\rboolean_va" +
+      "lue\030\004 \001(\010\"%\n\004Type\022\n\n\006STRING\020\001\022\007\n\003NUM\020\002\022\010" +
+      "\n\004BOOL\020\003\"\357\001\n\rSimpleMessage\022(\n\004type\030\001 \001(\016" +
+      "2\032.openxc.SimpleMessage.Type\022\014\n\004name\030\002 \001" +
+      "(\t\022#\n\005value\030\003 \001(\0132\024.openxc.DynamicField\022",
+      "#\n\005event\030\004 \001(\0132\024.openxc.DynamicField\"\\\n\004" +
+      "Type\022\n\n\006STRING\020\001\022\007\n\003NUM\020\002\022\010\n\004BOOL\020\003\022\022\n\016E" +
+      "VENTED_STRING\020\004\022\017\n\013EVENTED_NUM\020\005\022\020\n\014EVEN" +
+      "TED_BOOL\020\006B\034\n\ncom.openxcB\016BinaryMessages"
     };
     com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
       new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
@@ -11151,12 +11150,12 @@ public final class BinaryMessages {
           internal_static_openxc_VehicleMessage_fieldAccessorTable = new
             com.google.protobuf.GeneratedMessage.FieldAccessorTable(
               internal_static_openxc_VehicleMessage_descriptor,
-              new java.lang.String[] { "Type", "RawMessage", "TranslatedMessage", "DiagnosticResponse", "ControlCommand", "CommandResponse", });
-          internal_static_openxc_RawMessage_descriptor =
+              new java.lang.String[] { "Type", "CanMessage", "SimpleMessage", "DiagnosticResponse", "ControlCommand", "CommandResponse", });
+          internal_static_openxc_CanMessage_descriptor =
             getDescriptor().getMessageTypes().get(1);
-          internal_static_openxc_RawMessage_fieldAccessorTable = new
+          internal_static_openxc_CanMessage_fieldAccessorTable = new
             com.google.protobuf.GeneratedMessage.FieldAccessorTable(
-              internal_static_openxc_RawMessage_descriptor,
+              internal_static_openxc_CanMessage_descriptor,
               new java.lang.String[] { "Bus", "MessageId", "Data", "FrameFormat", });
           internal_static_openxc_ControlCommand_descriptor =
             getDescriptor().getMessageTypes().get(2);
@@ -11218,11 +11217,11 @@ public final class BinaryMessages {
             com.google.protobuf.GeneratedMessage.FieldAccessorTable(
               internal_static_openxc_DynamicField_descriptor,
               new java.lang.String[] { "Type", "StringValue", "NumericValue", "BooleanValue", });
-          internal_static_openxc_TranslatedMessage_descriptor =
+          internal_static_openxc_SimpleMessage_descriptor =
             getDescriptor().getMessageTypes().get(12);
-          internal_static_openxc_TranslatedMessage_fieldAccessorTable = new
+          internal_static_openxc_SimpleMessage_fieldAccessorTable = new
             com.google.protobuf.GeneratedMessage.FieldAccessorTable(
-              internal_static_openxc_TranslatedMessage_descriptor,
+              internal_static_openxc_SimpleMessage_descriptor,
               new java.lang.String[] { "Type", "Name", "Value", "Event", });
           return null;
         }
index d69dcb5..8b1ee79 100644 (file)
@@ -13,7 +13,7 @@ from google.protobuf import descriptor_pb2
 DESCRIPTOR = _descriptor.FileDescriptor(
   name='openxc.proto',
   package='openxc',
-  serialized_pb='\n\x0copenxc.proto\x12\x06openxc\"\x94\x03\n\x0eVehicleMessage\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.VehicleMessage.Type\x12\'\n\x0braw_message\x18\x02 \x01(\x0b\x32\x12.openxc.RawMessage\x12\x35\n\x12translated_message\x18\x03 \x01(\x0b\x32\x19.openxc.TranslatedMessage\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\"Z\n\x04Type\x12\x07\n\x03RAW\x10\x01\x12\x0e\n\nTRANSLATED\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x13\n\x0f\x43ONTROL_COMMAND\x10\x04\x12\x14\n\x10\x43OMMAND_RESPONSE\x10\x05\"\x9c\x01\n\nRawMessage\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\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.RawMessage.FrameFormat\")\n\x0b\x46rameFormat\x12\x0c\n\x08STANDARD\x10\x01\x12\x0c\n\x08\x45XTENDED\x10\x02\"\xb8\x04\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\"\x93\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\"\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\"{\n\x14PayloadFormatCommand\x12:\n\x06\x66ormat\x18\x01 \x01(\x0e\x32*.openxc.PayloadFormatCommand.PayloadFormat\"\'\n\rPayloadFormat\x12\x08\n\x04JSON\x10\x01\x12\x0c\n\x08PROTOBUF\x10\x02\"0\n\x1dPredefinedObd2RequestsCommand\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\"]\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\"\xf7\x01\n\x11TranslatedMessage\x12,\n\x04type\x18\x01 \x01(\x0e\x32\x1e.openxc.TranslatedMessage.Type\x12\x0c\n\x04name\x18\x02 \x01(\t\x12#\n\x05value\x18\x03 \x01(\x0b\x32\x14.openxc.DynamicField\x12#\n\x05\x65vent\x18\x04 \x01(\x0b\x32\x14.openxc.DynamicField\"\\\n\x04Type\x12\n\n\x06STRING\x10\x01\x12\x07\n\x03NUM\x10\x02\x12\x08\n\x04\x42OOL\x10\x03\x12\x12\n\x0e\x45VENTED_STRING\x10\x04\x12\x0f\n\x0b\x45VENTED_NUM\x10\x05\x12\x10\n\x0c\x45VENTED_BOOL\x10\x06\x42\x1c\n\ncom.openxcB\x0e\x42inaryMessages')
+  serialized_pb='\n\x0copenxc.proto\x12\x06openxc\"\x88\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\"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\"\x9c\x01\n\nCanMessage\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\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\"\xb8\x04\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\"\x93\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\"\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\"{\n\x14PayloadFormatCommand\x12:\n\x06\x66ormat\x18\x01 \x01(\x0e\x32*.openxc.PayloadFormatCommand.PayloadFormat\"\'\n\rPayloadFormat\x12\x08\n\x04JSON\x10\x01\x12\x0c\n\x08PROTOBUF\x10\x02\"0\n\x1dPredefinedObd2RequestsCommand\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\"]\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\"\xef\x01\n\rSimpleMessage\x12(\n\x04type\x18\x01 \x01(\x0e\x32\x1a.openxc.SimpleMessage.Type\x12\x0c\n\x04name\x18\x02 \x01(\t\x12#\n\x05value\x18\x03 \x01(\x0b\x32\x14.openxc.DynamicField\x12#\n\x05\x65vent\x18\x04 \x01(\x0b\x32\x14.openxc.DynamicField\"\\\n\x04Type\x12\n\n\x06STRING\x10\x01\x12\x07\n\x03NUM\x10\x02\x12\x08\n\x04\x42OOL\x10\x03\x12\x12\n\x0e\x45VENTED_STRING\x10\x04\x12\x0f\n\x0b\x45VENTED_NUM\x10\x05\x12\x10\n\x0c\x45VENTED_BOOL\x10\x06\x42\x1c\n\ncom.openxcB\x0e\x42inaryMessages')
 
 
 
@@ -24,11 +24,11 @@ _VEHICLEMESSAGE_TYPE = _descriptor.EnumDescriptor(
   file=DESCRIPTOR,
   values=[
     _descriptor.EnumValueDescriptor(
-      name='RAW', index=0, number=1,
+      name='CAN', index=0, number=1,
       options=None,
       type=None),
     _descriptor.EnumValueDescriptor(
-      name='TRANSLATED', index=1, number=2,
+      name='SIMPLE', index=1, number=2,
       options=None,
       type=None),
     _descriptor.EnumValueDescriptor(
@@ -46,13 +46,13 @@ _VEHICLEMESSAGE_TYPE = _descriptor.EnumDescriptor(
   ],
   containing_type=None,
   options=None,
-  serialized_start=339,
-  serialized_end=429,
+  serialized_start=331,
+  serialized_end=417,
 )
 
-_RAWMESSAGE_FRAMEFORMAT = _descriptor.EnumDescriptor(
+_CANMESSAGE_FRAMEFORMAT = _descriptor.EnumDescriptor(
   name='FrameFormat',
-  full_name='openxc.RawMessage.FrameFormat',
+  full_name='openxc.CanMessage.FrameFormat',
   filename=None,
   file=DESCRIPTOR,
   values=[
@@ -67,8 +67,8 @@ _RAWMESSAGE_FRAMEFORMAT = _descriptor.EnumDescriptor(
   ],
   containing_type=None,
   options=None,
-  serialized_start=547,
-  serialized_end=588,
+  serialized_start=535,
+  serialized_end=576,
 )
 
 _CONTROLCOMMAND_TYPE = _descriptor.EnumDescriptor(
@@ -108,8 +108,8 @@ _CONTROLCOMMAND_TYPE = _descriptor.EnumDescriptor(
   ],
   containing_type=None,
   options=None,
-  serialized_start=1012,
-  serialized_end=1159,
+  serialized_start=1000,
+  serialized_end=1147,
 )
 
 _DIAGNOSTICCONTROLCOMMAND_ACTION = _descriptor.EnumDescriptor(
@@ -129,8 +129,8 @@ _DIAGNOSTICCONTROLCOMMAND_ACTION = _descriptor.EnumDescriptor(
   ],
   containing_type=None,
   options=None,
-  serialized_start=1291,
-  serialized_end=1320,
+  serialized_start=1279,
+  serialized_end=1308,
 )
 
 _PAYLOADFORMATCOMMAND_PAYLOADFORMAT = _descriptor.EnumDescriptor(
@@ -150,8 +150,8 @@ _PAYLOADFORMATCOMMAND_PAYLOADFORMAT = _descriptor.EnumDescriptor(
   ],
   containing_type=None,
   options=None,
-  serialized_start=1531,
-  serialized_end=1570,
+  serialized_start=1519,
+  serialized_end=1558,
 )
 
 _DIAGNOSTICREQUEST_DECODEDTYPE = _descriptor.EnumDescriptor(
@@ -171,8 +171,8 @@ _DIAGNOSTICREQUEST_DECODEDTYPE = _descriptor.EnumDescriptor(
   ],
   containing_type=None,
   options=None,
-  serialized_start=1938,
-  serialized_end=1971,
+  serialized_start=1926,
+  serialized_end=1959,
 )
 
 _DYNAMICFIELD_TYPE = _descriptor.EnumDescriptor(
@@ -196,13 +196,13 @@ _DYNAMICFIELD_TYPE = _descriptor.EnumDescriptor(
   ],
   containing_type=None,
   options=None,
-  serialized_start=2263,
-  serialized_end=2300,
+  serialized_start=2251,
+  serialized_end=2288,
 )
 
-_TRANSLATEDMESSAGE_TYPE = _descriptor.EnumDescriptor(
+_SIMPLEMESSAGE_TYPE = _descriptor.EnumDescriptor(
   name='Type',
-  full_name='openxc.TranslatedMessage.Type',
+  full_name='openxc.SimpleMessage.Type',
   filename=None,
   file=DESCRIPTOR,
   values=[
@@ -233,8 +233,8 @@ _TRANSLATEDMESSAGE_TYPE = _descriptor.EnumDescriptor(
   ],
   containing_type=None,
   options=None,
-  serialized_start=2458,
-  serialized_end=2550,
+  serialized_start=2438,
+  serialized_end=2530,
 )
 
 
@@ -253,14 +253,14 @@ _VEHICLEMESSAGE = _descriptor.Descriptor(
       is_extension=False, extension_scope=None,
       options=None),
     _descriptor.FieldDescriptor(
-      name='raw_message', full_name='openxc.VehicleMessage.raw_message', index=1,
+      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),
     _descriptor.FieldDescriptor(
-      name='translated_message', full_name='openxc.VehicleMessage.translated_message', index=2,
+      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,
@@ -298,40 +298,40 @@ _VEHICLEMESSAGE = _descriptor.Descriptor(
   is_extendable=False,
   extension_ranges=[],
   serialized_start=25,
-  serialized_end=429,
+  serialized_end=417,
 )
 
 
-_RAWMESSAGE = _descriptor.Descriptor(
-  name='RawMessage',
-  full_name='openxc.RawMessage',
+_CANMESSAGE = _descriptor.Descriptor(
+  name='CanMessage',
+  full_name='openxc.CanMessage',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
   fields=[
     _descriptor.FieldDescriptor(
-      name='bus', full_name='openxc.RawMessage.bus', index=0,
+      name='bus', full_name='openxc.CanMessage.bus', index=0,
       number=1, 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='message_id', full_name='openxc.RawMessage.message_id', index=1,
+      name='message_id', full_name='openxc.CanMessage.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),
     _descriptor.FieldDescriptor(
-      name='data', full_name='openxc.RawMessage.data', index=2,
+      name='data', full_name='openxc.CanMessage.data', index=2,
       number=3, type=12, cpp_type=9, label=1,
       has_default_value=False, default_value="",
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
       options=None),
     _descriptor.FieldDescriptor(
-      name='frame_format', full_name='openxc.RawMessage.frame_format', index=3,
+      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,
       message_type=None, enum_type=None, containing_type=None,
@@ -342,13 +342,13 @@ _RAWMESSAGE = _descriptor.Descriptor(
   ],
   nested_types=[],
   enum_types=[
-    _RAWMESSAGE_FRAMEFORMAT,
+    _CANMESSAGE_FRAMEFORMAT,
   ],
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=432,
-  serialized_end=588,
+  serialized_start=420,
+  serialized_end=576,
 )
 
 
@@ -411,8 +411,8 @@ _CONTROLCOMMAND = _descriptor.Descriptor(
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=591,
-  serialized_end=1159,
+  serialized_start=579,
+  serialized_end=1147,
 )
 
 
@@ -447,8 +447,8 @@ _DIAGNOSTICCONTROLCOMMAND = _descriptor.Descriptor(
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=1162,
-  serialized_end=1320,
+  serialized_start=1150,
+  serialized_end=1308,
 )
 
 
@@ -482,8 +482,8 @@ _PASSTHROUGHMODECONTROLCOMMAND = _descriptor.Descriptor(
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=1322,
-  serialized_end=1383,
+  serialized_start=1310,
+  serialized_end=1371,
 )
 
 
@@ -517,8 +517,8 @@ _ACCEPTANCEFILTERBYPASSCOMMAND = _descriptor.Descriptor(
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=1385,
-  serialized_end=1445,
+  serialized_start=1373,
+  serialized_end=1433,
 )
 
 
@@ -546,8 +546,8 @@ _PAYLOADFORMATCOMMAND = _descriptor.Descriptor(
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=1447,
-  serialized_end=1570,
+  serialized_start=1435,
+  serialized_end=1558,
 )
 
 
@@ -574,8 +574,8 @@ _PREDEFINEDOBD2REQUESTSCOMMAND = _descriptor.Descriptor(
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=1572,
-  serialized_end=1620,
+  serialized_start=1560,
+  serialized_end=1608,
 )
 
 
@@ -616,8 +616,8 @@ _COMMANDRESPONSE = _descriptor.Descriptor(
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=1622,
-  serialized_end=1715,
+  serialized_start=1610,
+  serialized_end=1703,
 )
 
 
@@ -701,8 +701,8 @@ _DIAGNOSTICREQUEST = _descriptor.Descriptor(
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=1718,
-  serialized_end=1971,
+  serialized_start=1706,
+  serialized_end=1959,
 )
 
 
@@ -778,8 +778,8 @@ _DIAGNOSTICRESPONSE = _descriptor.Descriptor(
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=1974,
-  serialized_end=2135,
+  serialized_start=1962,
+  serialized_end=2123,
 )
 
 
@@ -828,41 +828,41 @@ _DYNAMICFIELD = _descriptor.Descriptor(
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=2138,
-  serialized_end=2300,
+  serialized_start=2126,
+  serialized_end=2288,
 )
 
 
-_TRANSLATEDMESSAGE = _descriptor.Descriptor(
-  name='TranslatedMessage',
-  full_name='openxc.TranslatedMessage',
+_SIMPLEMESSAGE = _descriptor.Descriptor(
+  name='SimpleMessage',
+  full_name='openxc.SimpleMessage',
   filename=None,
   file=DESCRIPTOR,
   containing_type=None,
   fields=[
     _descriptor.FieldDescriptor(
-      name='type', full_name='openxc.TranslatedMessage.type', index=0,
+      name='type', full_name='openxc.SimpleMessage.type', index=0,
       number=1, type=14, cpp_type=8, label=1,
       has_default_value=False, default_value=1,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
       options=None),
     _descriptor.FieldDescriptor(
-      name='name', full_name='openxc.TranslatedMessage.name', index=1,
+      name='name', full_name='openxc.SimpleMessage.name', index=1,
       number=2, type=9, cpp_type=9, label=1,
       has_default_value=False, default_value=unicode("", "utf-8"),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
       options=None),
     _descriptor.FieldDescriptor(
-      name='value', full_name='openxc.TranslatedMessage.value', index=2,
+      name='value', full_name='openxc.SimpleMessage.value', 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),
     _descriptor.FieldDescriptor(
-      name='event', full_name='openxc.TranslatedMessage.event', index=3,
+      name='event', full_name='openxc.SimpleMessage.event', 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,
@@ -873,24 +873,24 @@ _TRANSLATEDMESSAGE = _descriptor.Descriptor(
   ],
   nested_types=[],
   enum_types=[
-    _TRANSLATEDMESSAGE_TYPE,
+    _SIMPLEMESSAGE_TYPE,
   ],
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=2303,
-  serialized_end=2550,
+  serialized_start=2291,
+  serialized_end=2530,
 )
 
 _VEHICLEMESSAGE.fields_by_name['type'].enum_type = _VEHICLEMESSAGE_TYPE
-_VEHICLEMESSAGE.fields_by_name['raw_message'].message_type = _RAWMESSAGE
-_VEHICLEMESSAGE.fields_by_name['translated_message'].message_type = _TRANSLATEDMESSAGE
+_VEHICLEMESSAGE.fields_by_name['can_message'].message_type = _CANMESSAGE
+_VEHICLEMESSAGE.fields_by_name['simple_message'].message_type = _SIMPLEMESSAGE
 _VEHICLEMESSAGE.fields_by_name['diagnostic_response'].message_type = _DIAGNOSTICRESPONSE
 _VEHICLEMESSAGE.fields_by_name['control_command'].message_type = _CONTROLCOMMAND
 _VEHICLEMESSAGE.fields_by_name['command_response'].message_type = _COMMANDRESPONSE
 _VEHICLEMESSAGE_TYPE.containing_type = _VEHICLEMESSAGE;
-_RAWMESSAGE.fields_by_name['frame_format'].enum_type = _RAWMESSAGE_FRAMEFORMAT
-_RAWMESSAGE_FRAMEFORMAT.containing_type = _RAWMESSAGE;
+_CANMESSAGE.fields_by_name['frame_format'].enum_type = _CANMESSAGE_FRAMEFORMAT
+_CANMESSAGE_FRAMEFORMAT.containing_type = _CANMESSAGE;
 _CONTROLCOMMAND.fields_by_name['type'].enum_type = _CONTROLCOMMAND_TYPE
 _CONTROLCOMMAND.fields_by_name['diagnostic_request'].message_type = _DIAGNOSTICCONTROLCOMMAND
 _CONTROLCOMMAND.fields_by_name['passthrough_mode_request'].message_type = _PASSTHROUGHMODECONTROLCOMMAND
@@ -908,12 +908,12 @@ _DIAGNOSTICREQUEST.fields_by_name['decoded_type'].enum_type = _DIAGNOSTICREQUEST
 _DIAGNOSTICREQUEST_DECODEDTYPE.containing_type = _DIAGNOSTICREQUEST;
 _DYNAMICFIELD.fields_by_name['type'].enum_type = _DYNAMICFIELD_TYPE
 _DYNAMICFIELD_TYPE.containing_type = _DYNAMICFIELD;
-_TRANSLATEDMESSAGE.fields_by_name['type'].enum_type = _TRANSLATEDMESSAGE_TYPE
-_TRANSLATEDMESSAGE.fields_by_name['value'].message_type = _DYNAMICFIELD
-_TRANSLATEDMESSAGE.fields_by_name['event'].message_type = _DYNAMICFIELD
-_TRANSLATEDMESSAGE_TYPE.containing_type = _TRANSLATEDMESSAGE;
+_SIMPLEMESSAGE.fields_by_name['type'].enum_type = _SIMPLEMESSAGE_TYPE
+_SIMPLEMESSAGE.fields_by_name['value'].message_type = _DYNAMICFIELD
+_SIMPLEMESSAGE.fields_by_name['event'].message_type = _DYNAMICFIELD
+_SIMPLEMESSAGE_TYPE.containing_type = _SIMPLEMESSAGE;
 DESCRIPTOR.message_types_by_name['VehicleMessage'] = _VEHICLEMESSAGE
-DESCRIPTOR.message_types_by_name['RawMessage'] = _RAWMESSAGE
+DESCRIPTOR.message_types_by_name['CanMessage'] = _CANMESSAGE
 DESCRIPTOR.message_types_by_name['ControlCommand'] = _CONTROLCOMMAND
 DESCRIPTOR.message_types_by_name['DiagnosticControlCommand'] = _DIAGNOSTICCONTROLCOMMAND
 DESCRIPTOR.message_types_by_name['PassthroughModeControlCommand'] = _PASSTHROUGHMODECONTROLCOMMAND
@@ -924,7 +924,7 @@ DESCRIPTOR.message_types_by_name['CommandResponse'] = _COMMANDRESPONSE
 DESCRIPTOR.message_types_by_name['DiagnosticRequest'] = _DIAGNOSTICREQUEST
 DESCRIPTOR.message_types_by_name['DiagnosticResponse'] = _DIAGNOSTICRESPONSE
 DESCRIPTOR.message_types_by_name['DynamicField'] = _DYNAMICFIELD
-DESCRIPTOR.message_types_by_name['TranslatedMessage'] = _TRANSLATEDMESSAGE
+DESCRIPTOR.message_types_by_name['SimpleMessage'] = _SIMPLEMESSAGE
 
 class VehicleMessage(_message.Message):
   __metaclass__ = _reflection.GeneratedProtocolMessageType
@@ -932,11 +932,11 @@ class VehicleMessage(_message.Message):
 
   # @@protoc_insertion_point(class_scope:openxc.VehicleMessage)
 
-class RawMessage(_message.Message):
+class CanMessage(_message.Message):
   __metaclass__ = _reflection.GeneratedProtocolMessageType
-  DESCRIPTOR = _RAWMESSAGE
+  DESCRIPTOR = _CANMESSAGE
 
-  # @@protoc_insertion_point(class_scope:openxc.RawMessage)
+  # @@protoc_insertion_point(class_scope:openxc.CanMessage)
 
 class ControlCommand(_message.Message):
   __metaclass__ = _reflection.GeneratedProtocolMessageType
@@ -998,11 +998,11 @@ class DynamicField(_message.Message):
 
   # @@protoc_insertion_point(class_scope:openxc.DynamicField)
 
-class TranslatedMessage(_message.Message):
+class SimpleMessage(_message.Message):
   __metaclass__ = _reflection.GeneratedProtocolMessageType
-  DESCRIPTOR = _TRANSLATEDMESSAGE
+  DESCRIPTOR = _SIMPLEMESSAGE
 
-  # @@protoc_insertion_point(class_scope:openxc.TranslatedMessage)
+  # @@protoc_insertion_point(class_scope:openxc.SimpleMessage)
 
 
 DESCRIPTOR.has_options = True
index 3c0a51d..3becaa5 100644 (file)
@@ -4,18 +4,18 @@ option java_package = "com.openxc";
 option java_outer_classname = "BinaryMessages";
 
 message VehicleMessage {
-    enum Type { RAW = 1; TRANSLATED = 2; DIAGNOSTIC = 3; CONTROL_COMMAND = 4;
+    enum Type { CAN = 1; SIMPLE = 2; DIAGNOSTIC = 3; CONTROL_COMMAND = 4;
             COMMAND_RESPONSE = 5; }
 
     optional Type type = 1;
-    optional RawMessage raw_message = 2;
-    optional TranslatedMessage translated_message = 3;
+    optional CanMessage can_message = 2;
+    optional SimpleMessage simple_message = 3;
     optional DiagnosticResponse diagnostic_response = 4;
     optional ControlCommand control_command = 5;
     optional CommandResponse command_response = 6;
 }
 
-message RawMessage {
+message CanMessage {
     enum FrameFormat {
         STANDARD = 1;
         EXTENDED = 2;
@@ -119,7 +119,7 @@ message DynamicField {
     optional bool boolean_value = 4;
 }
 
-message TranslatedMessage {
+message SimpleMessage {
     enum Type { STRING = 1; NUM = 2; BOOL = 3;
         EVENTED_STRING = 4; EVENTED_NUM = 5; EVENTED_BOOL = 6;}