aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Communication
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2018-07-19 15:29:02 +0300
committerShlomo Hecht <shlomo@twine-s.com>2018-07-19 15:29:02 +0300
commit2acc04360cb773a1dab31fc0bcc514b877f0d991 (patch)
treecf450c2b0462103a1a895950a18ad017de8e7203 /Software/Embedded_SW/Embedded/Communication
parent1b6ae474bbe241e531a975f556151534c866fefd (diff)
parentb8cae8fcfe37cee8df17d0e8ccfbf2b3ac8c2152 (diff)
downloadTango-2acc04360cb773a1dab31fc0bcc514b877f0d991.tar.gz
Tango-2acc04360cb773a1dab31fc0bcc514b877f0d991.zip
Merge branch 'master' of https://twinetfs.visualstudio.com/Tango/_git/Tango
Diffstat (limited to 'Software/Embedded_SW/Embedded/Communication')
-rw-r--r--Software/Embedded_SW/Embedded/Communication/Container.c6
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Common/ErrorCode.pb-c.h6
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.c148
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.h34
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h117
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/EventType.pb-c.h117
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.h12
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/ValueComponent.pb-c.h6
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareDancerType.pb-c.h9
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareMotor.pb-c.h3
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareMotorType.pb-c.h87
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwarePidControlType.pb-c.h69
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareSpeedSensorType.pb-c.h3
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareWinderType.pb-c.h3
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Printing/JobWindingMethod.pb-c.h6
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsRequest.pb-c.c92
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsRequest.pb-c.h75
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsResponse.pb-c.c131
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsResponse.pb-c.h85
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsRequest.pb-c.c105
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsRequest.pb-c.h76
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsResponse.pb-c.c118
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsResponse.pb-c.h83
-rw-r--r--Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubSpeedSensorResponse.pb-c.h3
24 files changed, 1324 insertions, 70 deletions
diff --git a/Software/Embedded_SW/Embedded/Communication/Container.c b/Software/Embedded_SW/Embedded/Communication/Container.c
index 76e01c4f8..60e972968 100644
--- a/Software/Embedded_SW/Embedded/Communication/Container.c
+++ b/Software/Embedded_SW/Embedded/Communication/Container.c
@@ -260,6 +260,12 @@ void receive_callback(char* buffer, size_t length)
case MESSAGE_TYPE__StubI2CWriteBytesRequest:
Stub_I2CWriteBytesRequest(requestContainer);
break;
+ case MESSAGE_TYPE__StubExtFlashWriteWordsRequest:
+ Stub_ExtFlashWriteWordsRequest(requestContainer);
+ break;
+ case MESSAGE_TYPE__StubExtFlashReadWordsRequest:
+ Stub_ExtFlashReadWordsRequest(requestContainer);
+ break;
default:
//unsupported message type !!
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Common/ErrorCode.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Common/ErrorCode.pb-c.h
index 813672b48..a3d2a7d6a 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Common/ErrorCode.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Common/ErrorCode.pb-c.h
@@ -20,6 +20,9 @@ PROTOBUF_C__BEGIN_DECLS
/* --- enums --- */
typedef enum _ErrorCode {
+ /*
+ *General (Needs to be organized)
+ */
ERROR_CODE__NONE = 0,
ERROR_CODE__GENERAL_ERROR = 1,
ERROR_CODE__BAD_CRC = 2,
@@ -36,6 +39,9 @@ typedef enum _ErrorCode {
*/
ERROR_CODE__CONTINUOUS_RESPONSE_ABORTED = 5,
/*
+ *IO
+ */
+ /*
*Returned by FileChunkUploadResponse when the UploadID was not set by FileUploadRequest. Or returned by ExecuteProcessResponse when the UploadID does not exist or has not been completed.
*/
ERROR_CODE__INVALID_UPLOAD_ID = 1000,
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.c
index 9e6fbde11..4fa42e7be 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.c
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.c
@@ -7,7 +7,7 @@
#endif
#include "MessageType.pb-c.h"
-static const ProtobufCEnumValue message_type__enum_values_by_number[159] =
+static const ProtobufCEnumValue message_type__enum_values_by_number[163] =
{
{ "None", "MESSAGE_TYPE__None", 0 },
{ "ErrorResponse", "MESSAGE_TYPE__ErrorResponse", 1 },
@@ -103,6 +103,10 @@ static const ProtobufCEnumValue message_type__enum_values_by_number[159] =
{ "StubI2CReadBytesResponse", "MESSAGE_TYPE__StubI2CReadBytesResponse", 92 },
{ "StubI2CWriteBytesRequest", "MESSAGE_TYPE__StubI2CWriteBytesRequest", 93 },
{ "StubI2CWriteBytesResponse", "MESSAGE_TYPE__StubI2CWriteBytesResponse", 94 },
+ { "StubExtFlashWriteWordsRequest", "MESSAGE_TYPE__StubExtFlashWriteWordsRequest", 95 },
+ { "StubExtFlashWriteWordsResponse", "MESSAGE_TYPE__StubExtFlashWriteWordsResponse", 96 },
+ { "StubExtFlashReadWordsRequest", "MESSAGE_TYPE__StubExtFlashReadWordsRequest", 97 },
+ { "StubExtFlashReadWordsResponse", "MESSAGE_TYPE__StubExtFlashReadWordsResponse", 98 },
{ "ExternalBridgeUdpDiscoveryPacket", "MESSAGE_TYPE__ExternalBridgeUdpDiscoveryPacket", 1000 },
{ "ExternalClientLoginRequest", "MESSAGE_TYPE__ExternalClientLoginRequest", 1001 },
{ "ExternalClientLoginResponse", "MESSAGE_TYPE__ExternalClientLoginResponse", 1002 },
@@ -170,71 +174,71 @@ static const ProtobufCEnumValue message_type__enum_values_by_number[159] =
{ "KillProcessResponse", "MESSAGE_TYPE__KillProcessResponse", 7007 },
};
static const ProtobufCIntRange message_type__value_ranges[] = {
-{0, 0},{3, 2},{1000, 94},{2000, 101},{3000, 131},{4000, 137},{5000, 141},{6000, 145},{7000, 151},{0, 159}
+{0, 0},{3, 2},{1000, 98},{2000, 105},{3000, 135},{4000, 141},{5000, 145},{6000, 149},{7000, 155},{0, 163}
};
-static const ProtobufCEnumValueIndex message_type__enum_values_by_name[159] =
+static const ProtobufCEnumValueIndex message_type__enum_values_by_name[163] =
{
- { "AbortJobRequest", 133 },
- { "AbortJobResponse", 134 },
+ { "AbortJobRequest", 137 },
+ { "AbortJobResponse", 138 },
{ "CalculateRequest", 2 },
{ "CalculateResponse", 3 },
- { "ConnectRequest", 147 },
- { "ConnectResponse", 148 },
- { "DirectSynchronizationRequest", 97 },
- { "DirectSynchronizationResponse", 98 },
- { "DisconnectRequest", 149 },
- { "DisconnectResponse", 150 },
- { "DispenserAbortHomingRequest", 111 },
- { "DispenserAbortHomingResponse", 112 },
- { "DispenserAbortJoggingRequest", 117 },
- { "DispenserAbortJoggingResponse", 118 },
- { "DispenserHomingRequest", 113 },
- { "DispenserHomingResponse", 114 },
- { "DispenserJoggingRequest", 115 },
- { "DispenserJoggingResponse", 116 },
+ { "ConnectRequest", 151 },
+ { "ConnectResponse", 152 },
+ { "DirectSynchronizationRequest", 101 },
+ { "DirectSynchronizationResponse", 102 },
+ { "DisconnectRequest", 153 },
+ { "DisconnectResponse", 154 },
+ { "DispenserAbortHomingRequest", 115 },
+ { "DispenserAbortHomingResponse", 116 },
+ { "DispenserAbortJoggingRequest", 121 },
+ { "DispenserAbortJoggingResponse", 122 },
+ { "DispenserHomingRequest", 117 },
+ { "DispenserHomingResponse", 118 },
+ { "DispenserJoggingRequest", 119 },
+ { "DispenserJoggingResponse", 120 },
{ "ErrorResponse", 1 },
- { "ExecuteProcessRequest", 155 },
- { "ExecuteProcessResponse", 156 },
- { "ExternalBridgeUdpDiscoveryPacket", 94 },
- { "ExternalClientLoginRequest", 95 },
- { "ExternalClientLoginResponse", 96 },
- { "FileChunkUploadRequest", 153 },
- { "FileChunkUploadResponse", 154 },
- { "FileUploadRequest", 151 },
- { "FileUploadResponse", 152 },
- { "JobRequest", 131 },
- { "JobResponse", 132 },
- { "KeepAliveRequest", 145 },
- { "KeepAliveResponse", 146 },
- { "KillProcessRequest", 157 },
- { "KillProcessResponse", 158 },
- { "MotorAbortHomingRequest", 103 },
- { "MotorAbortHomingResponse", 104 },
- { "MotorAbortJoggingRequest", 109 },
- { "MotorAbortJoggingResponse", 110 },
- { "MotorHomingRequest", 105 },
- { "MotorHomingResponse", 106 },
- { "MotorJoggingRequest", 107 },
- { "MotorJoggingResponse", 108 },
+ { "ExecuteProcessRequest", 159 },
+ { "ExecuteProcessResponse", 160 },
+ { "ExternalBridgeUdpDiscoveryPacket", 98 },
+ { "ExternalClientLoginRequest", 99 },
+ { "ExternalClientLoginResponse", 100 },
+ { "FileChunkUploadRequest", 157 },
+ { "FileChunkUploadResponse", 158 },
+ { "FileUploadRequest", 155 },
+ { "FileUploadResponse", 156 },
+ { "JobRequest", 135 },
+ { "JobResponse", 136 },
+ { "KeepAliveRequest", 149 },
+ { "KeepAliveResponse", 150 },
+ { "KillProcessRequest", 161 },
+ { "KillProcessResponse", 162 },
+ { "MotorAbortHomingRequest", 107 },
+ { "MotorAbortHomingResponse", 108 },
+ { "MotorAbortJoggingRequest", 113 },
+ { "MotorAbortJoggingResponse", 114 },
+ { "MotorHomingRequest", 109 },
+ { "MotorHomingResponse", 110 },
+ { "MotorJoggingRequest", 111 },
+ { "MotorJoggingResponse", 112 },
{ "None", 0 },
- { "OverrideDataBaseRequest", 99 },
- { "OverrideDataBaseResponse", 100 },
+ { "OverrideDataBaseRequest", 103 },
+ { "OverrideDataBaseResponse", 104 },
{ "ProgressRequest", 4 },
{ "ProgressResponse", 5 },
- { "ResolveEventRequest", 127 },
- { "ResolveEventResponse", 128 },
- { "SetComponentValueRequest", 125 },
- { "SetComponentValueResponse", 126 },
- { "SetDigitalOutRequest", 119 },
- { "SetDigitalOutResponse", 120 },
- { "StartDebugLogRequest", 137 },
- { "StartDebugLogResponse", 138 },
- { "StartDiagnosticsRequest", 101 },
- { "StartDiagnosticsResponse", 102 },
- { "StopDebugLogRequest", 139 },
- { "StopDebugLogResponse", 140 },
- { "StopDiagnosticsRequest", 129 },
- { "StopDiagnosticsResponse", 130 },
+ { "ResolveEventRequest", 131 },
+ { "ResolveEventResponse", 132 },
+ { "SetComponentValueRequest", 129 },
+ { "SetComponentValueResponse", 130 },
+ { "SetDigitalOutRequest", 123 },
+ { "SetDigitalOutResponse", 124 },
+ { "StartDebugLogRequest", 141 },
+ { "StartDebugLogResponse", 142 },
+ { "StartDiagnosticsRequest", 105 },
+ { "StartDiagnosticsResponse", 106 },
+ { "StopDebugLogRequest", 143 },
+ { "StopDebugLogResponse", 144 },
+ { "StopDiagnosticsRequest", 133 },
+ { "StopDiagnosticsResponse", 134 },
{ "StubCartridgeReadRequest", 6 },
{ "StubCartridgeReadResponse", 7 },
{ "StubCartridgeWriteRequest", 8 },
@@ -245,8 +249,12 @@ static const ProtobufCEnumValueIndex message_type__enum_values_by_name[159] =
{ "StubDispenserResponse", 11 },
{ "StubExtFlashReadRequest", 32 },
{ "StubExtFlashReadResponse", 33 },
+ { "StubExtFlashReadWordsRequest", 96 },
+ { "StubExtFlashReadWordsResponse", 97 },
{ "StubExtFlashWriteRequest", 34 },
{ "StubExtFlashWriteResponse", 35 },
+ { "StubExtFlashWriteWordsRequest", 94 },
+ { "StubExtFlashWriteWordsResponse", 95 },
{ "StubF3Gpo01WriteRequest", 58 },
{ "StubF3Gpo01WriteResponse", 59 },
{ "StubFPGAReadBackRegRequest", 36 },
@@ -323,16 +331,16 @@ static const ProtobufCEnumValueIndex message_type__enum_values_by_name[159] =
{ "StubTivaWriteRegResponse", 79 },
{ "StubValveRequest", 30 },
{ "StubValveResponse", 31 },
- { "SystemResetRequest", 143 },
- { "SystemResetResponse", 144 },
- { "ThreadAbortJoggingRequest", 123 },
- { "ThreadAbortJoggingResponse", 124 },
- { "ThreadJoggingRequest", 121 },
- { "ThreadJoggingResponse", 122 },
- { "UploadHardwareConfigurationRequest", 141 },
- { "UploadHardwareConfigurationResponse", 142 },
- { "UploadProcessParametersRequest", 135 },
- { "UploadProcessParametersResponse", 136 },
+ { "SystemResetRequest", 147 },
+ { "SystemResetResponse", 148 },
+ { "ThreadAbortJoggingRequest", 127 },
+ { "ThreadAbortJoggingResponse", 128 },
+ { "ThreadJoggingRequest", 125 },
+ { "ThreadJoggingResponse", 126 },
+ { "UploadHardwareConfigurationRequest", 145 },
+ { "UploadHardwareConfigurationResponse", 146 },
+ { "UploadProcessParametersRequest", 139 },
+ { "UploadProcessParametersResponse", 140 },
};
const ProtobufCEnumDescriptor message_type__descriptor =
{
@@ -341,9 +349,9 @@ const ProtobufCEnumDescriptor message_type__descriptor =
"MessageType",
"MessageType",
"",
- 159,
+ 163,
message_type__enum_values_by_number,
- 159,
+ 163,
message_type__enum_values_by_name,
9,
message_type__value_ranges,
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.h
index af9d5a8a6..ab07d1660 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.h
@@ -20,8 +20,17 @@ PROTOBUF_C__BEGIN_DECLS
/* --- enums --- */
typedef enum _MessageType {
+ /*
+ *The first enumeration value must be zero so..
+ */
MESSAGE_TYPE__None = 0,
+ /*
+ *Common
+ */
MESSAGE_TYPE__ErrorResponse = 1,
+ /*
+ *Stubs
+ */
MESSAGE_TYPE__CalculateRequest = 3,
MESSAGE_TYPE__CalculateResponse = 4,
MESSAGE_TYPE__ProgressRequest = 5,
@@ -114,6 +123,13 @@ typedef enum _MessageType {
MESSAGE_TYPE__StubI2CReadBytesResponse = 92,
MESSAGE_TYPE__StubI2CWriteBytesRequest = 93,
MESSAGE_TYPE__StubI2CWriteBytesResponse = 94,
+ MESSAGE_TYPE__StubExtFlashWriteWordsRequest = 95,
+ MESSAGE_TYPE__StubExtFlashWriteWordsResponse = 96,
+ MESSAGE_TYPE__StubExtFlashReadWordsRequest = 97,
+ MESSAGE_TYPE__StubExtFlashReadWordsResponse = 98,
+ /*
+ *Integration
+ */
MESSAGE_TYPE__ExternalBridgeUdpDiscoveryPacket = 1000,
MESSAGE_TYPE__ExternalClientLoginRequest = 1001,
MESSAGE_TYPE__ExternalClientLoginResponse = 1002,
@@ -121,6 +137,9 @@ typedef enum _MessageType {
MESSAGE_TYPE__DirectSynchronizationResponse = 1004,
MESSAGE_TYPE__OverrideDataBaseRequest = 1005,
MESSAGE_TYPE__OverrideDataBaseResponse = 1006,
+ /*
+ *Diagnostics
+ */
MESSAGE_TYPE__StartDiagnosticsRequest = 2000,
MESSAGE_TYPE__StartDiagnosticsResponse = 2001,
MESSAGE_TYPE__MotorAbortHomingRequest = 2002,
@@ -151,26 +170,41 @@ typedef enum _MessageType {
MESSAGE_TYPE__ResolveEventResponse = 2027,
MESSAGE_TYPE__StopDiagnosticsRequest = 2028,
MESSAGE_TYPE__StopDiagnosticsResponse = 2029,
+ /*
+ *Printing
+ */
MESSAGE_TYPE__JobRequest = 3000,
MESSAGE_TYPE__JobResponse = 3001,
MESSAGE_TYPE__AbortJobRequest = 3002,
MESSAGE_TYPE__AbortJobResponse = 3003,
MESSAGE_TYPE__UploadProcessParametersRequest = 3004,
MESSAGE_TYPE__UploadProcessParametersResponse = 3005,
+ /*
+ *Debugging
+ */
MESSAGE_TYPE__StartDebugLogRequest = 4000,
MESSAGE_TYPE__StartDebugLogResponse = 4001,
MESSAGE_TYPE__StopDebugLogRequest = 4002,
MESSAGE_TYPE__StopDebugLogResponse = 4003,
+ /*
+ *Hardware
+ */
MESSAGE_TYPE__UploadHardwareConfigurationRequest = 5000,
MESSAGE_TYPE__UploadHardwareConfigurationResponse = 5001,
MESSAGE_TYPE__SystemResetRequest = 5002,
MESSAGE_TYPE__SystemResetResponse = 5003,
+ /*
+ *Connection
+ */
MESSAGE_TYPE__KeepAliveRequest = 6000,
MESSAGE_TYPE__KeepAliveResponse = 6001,
MESSAGE_TYPE__ConnectRequest = 6002,
MESSAGE_TYPE__ConnectResponse = 6003,
MESSAGE_TYPE__DisconnectRequest = 6004,
MESSAGE_TYPE__DisconnectResponse = 6005,
+ /*
+ *IO
+ */
MESSAGE_TYPE__FileUploadRequest = 7000,
MESSAGE_TYPE__FileUploadResponse = 7001,
MESSAGE_TYPE__FileChunkUploadRequest = 7002,
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h
index eb30b2cd2..42ec04b75 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h
@@ -27,82 +27,199 @@ typedef struct _DiagnosticsMonitors DiagnosticsMonitors;
struct _DiagnosticsMonitors
{
ProtobufCMessage base;
+ /*
+ *Dancer 1 (Min = 0, Max = 16384, PPF = 100)
+ */
size_t n_dancer1angle;
double *dancer1angle;
+ /*
+ *Dancer 2 (Min = 0, Max = 16384, PPF = 100)
+ */
size_t n_dancer2angle;
double *dancer2angle;
+ /*
+ *Dancer 3 (Min = 0, Max = 16384, PPF = 100)
+ */
size_t n_dancer3angle;
double *dancer3angle;
+ /*
+ *Feeder Motor (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_feedermotorfrequency;
double *feedermotorfrequency;
+ /*
+ *Dryer Motor (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_dryermotor;
double *dryermotor;
+ /*
+ *Poller Motor (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_pollermotor;
double *pollermotor;
+ /*
+ *Winder Motor (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_windermotor;
double *windermotor;
+ /*
+ *Screw Motor (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_screwmotor;
double *screwmotor;
+ /*
+ *Thread Speed (Min = 0, Max = 100, PPF = 100)
+ */
size_t n_threadspeed;
double *threadspeed;
+ /*
+ *Mixer (Min = 0, Max = 300, PPF = 10)
+ */
size_t n_mixertemperature;
double *mixertemperature;
+ /*
+ *Head Zone 1 (Min = 0, Max = 300, PPF = 10)
+ */
size_t n_headzone1temperature;
double *headzone1temperature;
+ /*
+ *Head Zone 2 (Min = 0, Max = 300, PPF = 10)
+ */
size_t n_headzone2temperature;
double *headzone2temperature;
+ /*
+ *Head Zone 3 (Min = 0, Max = 100, PPF = 10)
+ */
size_t n_headzone3temperature;
double *headzone3temperature;
+ /*
+ *Head Air Flow (Min = 0, Max = 100, PPF = 1)
+ */
size_t n_headairflow;
double *headairflow;
+ /*
+ *Feeder Tension (Min = 0, Max = 100, PPF = 10)
+ */
size_t n_feedertension;
double *feedertension;
+ /*
+ *Puller Tension (Min = 0, Max = 100, PPF = 10)
+ */
size_t n_pullertension;
double *pullertension;
+ /*
+ *Dryer Zone 1 (Min = 0, Max = 300, PPF = 10)
+ */
size_t n_dryerzone1temperature;
double *dryerzone1temperature;
+ /*
+ *Dryer Zone 2 (Min = 0, Max = 300, PPF = 10)
+ */
size_t n_dryerzone2temperature;
double *dryerzone2temperature;
+ /*
+ *Dryer Zone 3 (Min = 0, Max = 300, PPF = 10)
+ */
size_t n_dryerzone3temperature;
double *dryerzone3temperature;
+ /*
+ *Dryer Air Flow (Min = 0, Max = 100, PPF = 10)
+ */
size_t n_dryerairflow;
double *dryerairflow;
+ /*
+ *Winder Tension (Min = 0, Max = 100, PPF = 10)
+ */
size_t n_windertension;
double *windertension;
+ /*
+ *Dispensers Motors (Min = 0, Max = 100000, PPF = 10) Channel Count = 8
+ */
size_t n_dispensersmotorsfrequency;
DoubleArray **dispensersmotorsfrequency;
+ /*
+ *Dispensers Angular Encoders (Min = 0, Max = 100, PPF = 1) Channel Count = 8
+ */
size_t n_dispensersangularencoders;
DoubleArray **dispensersangularencoders;
+ /*
+ *Dispensers Linear Positions (Min = 0, Max = 100, PPF = 1) Channel Count = 8
+ */
size_t n_dispenserslinearpositions;
DoubleArray **dispenserslinearpositions;
+ /*
+ *Dispensers Pressure (Min = 0, Max = 100, PPF = 1) Channel Count = 8
+ */
size_t n_dispenserspressure;
DoubleArray **dispenserspressure;
+ /*
+ *Mid Tank Pressure (Min = 0, Max = 100, PPF = 1)
+ */
size_t n_midtankpressure;
double *midtankpressure;
+ /*
+ *Filter Delta Pressure (Min = 0, Max = 100, PPF = 1)
+ */
size_t n_filterdeltapressure;
double *filterdeltapressure;
+ /*
+ *Chiller Temperature (Min = 0, Max = 300, PPF = 10)
+ */
size_t n_chillertemperature;
double *chillertemperature;
+ /*
+ *Dispenser 1 Motor Frequency (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_dispenser1motorfrequency;
double *dispenser1motorfrequency;
+ /*
+ *Dispenser 2 Motor Frequency (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_dispenser2motorfrequency;
double *dispenser2motorfrequency;
+ /*
+ *Dispenser 3 Motor Frequency (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_dispenser3motorfrequency;
double *dispenser3motorfrequency;
+ /*
+ *Dispenser 4 Motor Frequency (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_dispenser4motorfrequency;
double *dispenser4motorfrequency;
+ /*
+ *Dispenser 5 Motor Frequency (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_dispenser5motorfrequency;
double *dispenser5motorfrequency;
+ /*
+ *Dispenser 6 Motor Frequency (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_dispenser6motorfrequency;
double *dispenser6motorfrequency;
+ /*
+ *Dispenser 7 Motor Frequency (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_dispenser7motorfrequency;
double *dispenser7motorfrequency;
+ /*
+ *Dispenser 8 Motor Frequency (Min = 0, Max = 100000, PPF = 100)
+ */
size_t n_dispenser8motorfrequency;
double *dispenser8motorfrequency;
+ /*
+ *Head Zone 4 (Min = 0, Max = 300, PPF = 10)
+ */
size_t n_headzone4temperature;
double *headzone4temperature;
+ /*
+ *Head Zone 5 (Min = 0, Max = 300, PPF = 10)
+ */
size_t n_headzone5temperature;
double *headzone5temperature;
+ /*
+ *Head Zone 6 (Min = 0, Max = 300, PPF = 10)
+ */
size_t n_headzone6temperature;
double *headzone6temperature;
};
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/EventType.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/EventType.pb-c.h
index 0d9171e51..f405965fd 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/EventType.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/EventType.pb-c.h
@@ -20,44 +20,161 @@ PROTOBUF_C__BEGIN_DECLS
/* --- enums --- */
typedef enum _EventType {
+ /*
+ *Dancer overshot / Thread break sensor (Group = Thread Feeding System, Category = Error, Actions = Abort Running Job, Prevent Job Execution, Soft Visual Notification)
+ */
EVENT_TYPE__ThreadBreak = 0,
+ /*
+ *Dancer not stable or got down (Group = Thread Feeding System, Category = Error, Actions = Abort Running Job, Soft Visual Notification, Prevent Job Execution)
+ */
EVENT_TYPE__ThreadTensionControlFailure = 1,
+ /*
+ *Source thread counter (counter shall be reset upon loading a new cone) (Group = Thread Feeding System, Category = Error, Actions = Abort Running Job, Prevent Job Execution, Soft Visual Notification)
+ */
EVENT_TYPE__FeederConeInsufficiant = 2,
+ /*
+ *Winder Controller (Group = Thread Feeding System, Category = Error, Actions = Abort Running Job, Prevent Job Execution, Soft Visual Notification)
+ */
EVENT_TYPE__WinderGeneralError = 3,
+ /*
+ *SW_SPOOL_EXISTS='0' or Winder Controller (Group = Thread Feeding System, Category = Error, Actions = Abort Running Job, Prevent Job Execution, Soft Visual Notification)
+ */
EVENT_TYPE__WinderConeNotExists = 4,
+ /*
+ *Motor Stall (Group = Thread Feeding System, Category = Error, Actions = Abort Running Job, Soft Visual Notification, Prevent Job Execution)
+ */
EVENT_TYPE__ThreadFeedingGeneralError = 5,
+ /*
+ *Dyeing Head Thermometers (Group = DH Dryer, Category = Error, Actions = Abort Running Job, Soft Visual Notification, Prevent Job Execution)
+ */
EVENT_TYPE__DyeingHeadOverTemperature = 6,
+ /*
+ *Current sense in all heaters is 0 (Group = DH Dryer, Category = Error, Actions = Abort Running Job, Soft Visual Notification, Prevent Job Execution)
+ */
EVENT_TYPE__DHThermalCutoff = 7,
+ /*
+ *Dryer Thermometers (Group = DH Dryer, Category = Error, Actions = Prevent Job Execution, Abort Running Job, Soft Visual Notification)
+ */
EVENT_TYPE__DryerOverTemperature = 8,
+ /*
+ *Current sense in all heaters is 0 (Group = DH Dryer, Category = Error, Actions = Abort Running Job, Soft Visual Notification, Prevent Job Execution)
+ */
EVENT_TYPE__DryerThermalCutoff = 9,
+ /*
+ *Dyeing head Heaters failure (Under /Over current) (Group = DH Dryer, Category = Error, Actions = Soft Visual Notification, Prevent Job Execution, Abort Running Job)
+ */
EVENT_TYPE__DyeingHeadHeatersCurrentOutOfRange = 10,
+ /*
+ *Dryer Heaters failure (Under /Over current) (Group = DH Dryer, Category = Error, Actions = Abort Running Job, Soft Visual Notification, Prevent Job Execution)
+ */
EVENT_TYPE__DryerHeatersCurrentOutOfRange = 11,
+ /*
+ *Covers Tampers (Group = DH Dryer, Category = Error, Actions = Prevent Job Execution, Soft Visual Notification)
+ */
EVENT_TYPE__DryerDHeadCoverOpen = 12,
+ /*
+ *Pressure sensor Purex or Air flow sensor (Flap) (Group = Waste Handling System, Category = Error, Actions = Abort Running Job, Prevent Job Execution, Soft Visual Notification)
+ */
EVENT_TYPE__AirFilterClogged = 13,
+ /*
+ *Micro-switch (Group = Waste Handling System, Category = Error, Actions = Abort Running Job, Prevent Job Execution, Soft Visual Notification)
+ */
EVENT_TYPE__AirFilterNotInstalled = 14,
+ /*
+ *blower techo. Feedback, air flap (Group = Waste Handling System, Category = Error, Actions = Prevent Job Execution, Soft Visual Notification, Abort Running Job)
+ */
EVENT_TYPE__WHSFailure = 15,
+ /*
+ *Check container float sensor (Group = Waste Handling System, Category = Warning, Actions = Soft Visual Notification)
+ */
EVENT_TYPE__WasteContainerIsAlmostFull = 16,
+ /*
+ *Check container float sensor (Group = Waste Handling System, Category = Error, Actions = Soft Visual Notification)
+ */
EVENT_TYPE__WasteContainerIsFull = 17,
+ /*
+ *Dispenser position sensor/s (Group = Ink Delivery System, Category = Error, Actions = Prevent Job Execution, Abort Running Job, Soft Visual Notification)
+ */
EVENT_TYPE__DispenserEmpty = 18,
+ /*
+ *Check if job can be executor refill needed (Group = Ink Delivery System, Category = Warning, Actions = Soft Visual Notification)
+ */
EVENT_TYPE__DispenserLowLevel = 19,
+ /*
+ *Cartridge float displacement (Group = Ink Delivery System, Category = Error, Actions = Prevent Job Execution, Soft Visual Notification)
+ */
EVENT_TYPE__DispenserRefillFailure = 20,
+ /*
+ *Mid-Tank (Group = Ink Delivery System, Category = Warning, Actions = Soft Visual Notification)
+ */
EVENT_TYPE__MidTankEmpty = 21,
+ /*
+ *Cartridge float sensor (Group = Ink Delivery System, Category = Warning, Actions = Soft Visual Notification)
+ */
EVENT_TYPE__MidTankLowLevel = 22,
+ /*
+ *Cartridge float sensor or Additional micro-switch (Group = Ink Delivery System, Category = Warning, Actions = Soft Visual Notification)
+ */
EVENT_TYPE__MidTankNotInPlace = 23,
+ /*
+ *System BIT Failure (Group = General Hardware, Category = Error, Actions = Soft Visual Notification)
+ */
EVENT_TYPE__SystemBITFail = 24,
+ /*
+ *Internal Thermostat (Group = General Hardware, Category = Error, Actions = Prevent Job Execution, Soft Visual Notification, Abort Running Job, Stop Heaters)
+ */
EVENT_TYPE__GeneralInternalOverTemperature = 25,
+ /*
+ *Covers Tampers (Group = General Hardware, Category = Warning, Actions = Soft Visual Notification)
+ */
EVENT_TYPE__MachineCoverOpen = 26,
+ /*
+ *EPB (Group = General Hardware, Category = Critical, Actions = Overall Power Down, Soft Visual Notification)
+ */
EVENT_TYPE__EmergencyPushButtonPressed = 27,
+ /*
+ *System General Error (Group = General Hardware, Category = Warning, Actions = Soft Visual Notification)
+ */
EVENT_TYPE__SystemGeneralError = 28,
+ /*
+ *Occurs a request has been sent to the machine or external bridge service (Group = Transport, Category = Info, Actions = )
+ */
EVENT_TYPE__RequestSent = 29,
+ /*
+ *Occures when a response has been received (Group = Transport, Category = Info, Actions = )
+ */
EVENT_TYPE__ResponseReceived = 30,
+ /*
+ *Occures when a request to the machine has failed (Group = Transport, Category = Error, Actions = )
+ */
EVENT_TYPE__RequestFailed = 31,
+ /*
+ *Occures when the application has encountered some error (Group = Application, Category = Error, Actions = )
+ */
EVENT_TYPE__ApplicationException = 32,
+ /*
+ *General application event logs (Group = Application, Category = Info, Actions = )
+ */
EVENT_TYPE__ApplicationInformation = 33,
+ /*
+ *Notifies about application succesfully started (Group = Application, Category = Info, Actions = )
+ */
EVENT_TYPE__ApplicationStarted = 34,
+ /*
+ *Notifies about application termination (Group = Application, Category = Info, Actions = )
+ */
EVENT_TYPE__ApplicationTerminated = 35,
+ /*
+ *Occures when a diagnostics recording has been started (Group = Application, Category = Info, Actions = )
+ */
EVENT_TYPE__RecordingStarted = 36,
+ /*
+ *Occures when a diagnostics recording has been stopped (Group = Application, Category = Info, Actions = )
+ */
EVENT_TYPE__RecordingStopped = 37,
+ /*
+ *Occures when a job status message has been received from the embedded device (Group = Application, Category = Info, Actions = )
+ */
EVENT_TYPE__JobStatus = 38
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(EVENT_TYPE)
} EventType;
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.h
index ca559d62b..d3967ca49 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.h
@@ -30,11 +30,23 @@ typedef struct _StartDiagnosticsResponse StartDiagnosticsResponse;
struct _StartDiagnosticsResponse
{
ProtobufCMessage base;
+ /*
+ *Monitors
+ */
DiagnosticsMonitors *monitors;
+ /*
+ *Digital Pins States
+ */
size_t n_digitalpins;
DigitalPin **digitalpins;
+ /*
+ *Value Components Effective Values
+ */
size_t n_componentsstates;
ValueComponentState **componentsstates;
+ /*
+ *Hardware Errors & Warnings
+ */
size_t n_events;
Event **events;
};
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/ValueComponent.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/ValueComponent.pb-c.h
index 013c5f7a0..1e60dac27 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/ValueComponent.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/ValueComponent.pb-c.h
@@ -20,7 +20,13 @@ PROTOBUF_C__BEGIN_DECLS
/* --- enums --- */
typedef enum _ValueComponent {
+ /*
+ *Heater 1 Temperature (Min = 0, Max = 100)
+ */
VALUE_COMPONENT__Heater1Temp = 0,
+ /*
+ *Heater 2 Temperature (Min = 0, Max = 100)
+ */
VALUE_COMPONENT__Heater2Temp = 1
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(VALUE_COMPONENT)
} ValueComponent;
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareDancerType.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareDancerType.pb-c.h
index fed2b0108..294363d95 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareDancerType.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareDancerType.pb-c.h
@@ -20,8 +20,17 @@ PROTOBUF_C__BEGIN_DECLS
/* --- enums --- */
typedef enum _HardwareDancerType {
+ /*
+ *Left Dancer
+ */
HARDWARE_DANCER_TYPE__LeftDancer = 0,
+ /*
+ *Middle Dancer
+ */
HARDWARE_DANCER_TYPE__MiddleDancer = 1,
+ /*
+ *Right Dancer
+ */
HARDWARE_DANCER_TYPE__RightDancer = 2
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(HARDWARE_DANCER_TYPE)
} HardwareDancerType;
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareMotor.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareMotor.pb-c.h
index 04ef5ba5c..9d9a3fcae 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareMotor.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareMotor.pb-c.h
@@ -75,6 +75,9 @@ struct _HardwareMotor
int32_t fnslpacc;
protobuf_c_boolean has_fnslpdec;
int32_t fnslpdec;
+ /*
+ *The speed in which the motor moves to full step operation.
+ */
protobuf_c_boolean has_fsspd;
int32_t fsspd;
};
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareMotorType.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareMotorType.pb-c.h
index b98139a4d..3352ffed6 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareMotorType.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareMotorType.pb-c.h
@@ -20,34 +20,121 @@ PROTOBUF_C__BEGIN_DECLS
/* --- enums --- */
typedef enum _HardwareMotorType {
+ /*
+ *Cleaning Head Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANHEAD = 0,
+ /*
+ *Cleaning Mechanism Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANMECH = 1,
+ /*
+ *Dyeing Head Lid Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DH_LID = 2,
+ /*
+ *Dryer Main Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DRYER_DRIVING = 3,
+ /*
+ *Drier Lid Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DRYER_LID = 4,
+ /*
+ *Drier Thread Loading Arm Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DRYER_LOADARM = 5,
+ /*
+ *Dispenser 1 Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_1 = 6,
+ /*
+ *Dispenser 2 Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_2 = 7,
+ /*
+ *Dispenser 3 Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_3 = 8,
+ /*
+ *Dispenser 4 Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_4 = 9,
+ /*
+ *Dispenser 5 Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_5 = 10,
+ /*
+ *Dispenser 6 Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_6 = 11,
+ /*
+ *Dispenser 7 Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_7 = 12,
+ /*
+ *Dispenser 8 Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_8 = 13,
+ /*
+ *Winder Screw Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_SCREW = 14,
+ /*
+ *Winder Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_WINDER = 15,
+ /*
+ *Pooler Dancer Adjustment
+ */
HARDWARE_MOTOR_TYPE__MOTO_LDANCER1 = 16,
+ /*
+ *Winder Dancer Adjustment #1
+ */
HARDWARE_MOTOR_TYPE__MOTO_LDANCER2 = 17,
+ /*
+ *Pooler Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_LDRIVING = 18,
+ /*
+ *Pooler Loading Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_LLOADING = 19,
+ /*
+ *Pooler Loading Pivot Arm Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_LPIVOT1 = 20,
+ /*
+ *Feeder Dancer Adjustment Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_RDANCER = 21,
+ /*
+ *Feeder Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_RDRIVING = 22,
+ /*
+ *Right Loading Arm Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_RLOADARM = 23,
+ /*
+ *Right Loading Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_RLOADING = 24,
+ /*
+ *Spare 1 Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_SPARE1_1 = 25,
+ /*
+ *Spare 2 Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_SPARE1_2 = 26,
+ /*
+ *Spare 3 Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_SPARE2_1 = 27,
+ /*
+ *Spare 4 Motor
+ */
HARDWARE_MOTOR_TYPE__MOTO_SPARE2_2 = 28
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(HARDWARE_MOTOR_TYPE)
} HardwareMotorType;
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwarePidControlType.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwarePidControlType.pb-c.h
index 70ffb26fd..1476965f8 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwarePidControlType.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwarePidControlType.pb-c.h
@@ -20,28 +20,97 @@ PROTOBUF_C__BEGIN_DECLS
/* --- enums --- */
typedef enum _HardwarePidControlType {
+ /*
+ *Dryer Heater 1000w
+ */
HARDWARE_PID_CONTROL_TYPE__DryerHeater1000w = 0,
+ /*
+ *Dryer Heater 200w 1
+ */
HARDWARE_PID_CONTROL_TYPE__DryerHeater200w1 = 1,
+ /*
+ *Dryer Heater 200w 2
+ */
HARDWARE_PID_CONTROL_TYPE__DryerHeater200w2 = 2,
+ /*
+ *Head Heater Zone 1
+ */
HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1 = 3,
+ /*
+ *Head Heater Zone 2
+ */
HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ2 = 4,
+ /*
+ *Head Heater Zone 3
+ */
HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ3 = 5,
+ /*
+ *Head Heater Zone 4
+ */
HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ4 = 6,
+ /*
+ *Head Heater Zone 5
+ */
HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ5 = 7,
+ /*
+ *Head Heater Zone 6
+ */
HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ6 = 8,
+ /*
+ *Mixer Heater
+ */
HARDWARE_PID_CONTROL_TYPE__MixerHeater = 9,
+ /*
+ *Waste Control
+ */
HARDWARE_PID_CONTROL_TYPE__WasteControl = 10,
+ /*
+ *Dryer Motor
+ */
HARDWARE_PID_CONTROL_TYPE__MotorDryer = 11,
+ /*
+ *Feeder Motor
+ */
HARDWARE_PID_CONTROL_TYPE__MotorFeeder = 12,
+ /*
+ *Pooler Motor
+ */
HARDWARE_PID_CONTROL_TYPE__MotorPooler = 13,
+ /*
+ *Winder Motor
+ */
HARDWARE_PID_CONTROL_TYPE__MotorWinder = 14,
+ /*
+ *Dispenser 1
+ */
HARDWARE_PID_CONTROL_TYPE__Dispenser1 = 15,
+ /*
+ *Dispenser 2
+ */
HARDWARE_PID_CONTROL_TYPE__Dispenser2 = 16,
+ /*
+ *Dispenser 3
+ */
HARDWARE_PID_CONTROL_TYPE__Dispenser3 = 17,
+ /*
+ *Dispenser 4
+ */
HARDWARE_PID_CONTROL_TYPE__Dispenser4 = 18,
+ /*
+ *Dispenser 5
+ */
HARDWARE_PID_CONTROL_TYPE__Dispenser5 = 19,
+ /*
+ *Dispenser 6
+ */
HARDWARE_PID_CONTROL_TYPE__Dispenser6 = 20,
+ /*
+ *Dispenser 7
+ */
HARDWARE_PID_CONTROL_TYPE__Dispenser7 = 21,
+ /*
+ *Dispenser 8
+ */
HARDWARE_PID_CONTROL_TYPE__Dispenser8 = 22
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(HARDWARE_PID_CONTROL_TYPE)
} HardwarePidControlType;
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareSpeedSensorType.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareSpeedSensorType.pb-c.h
index f9b0134e7..567c2246e 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareSpeedSensorType.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareSpeedSensorType.pb-c.h
@@ -20,6 +20,9 @@ PROTOBUF_C__BEGIN_DECLS
/* --- enums --- */
typedef enum _HardwareSpeedSensorType {
+ /*
+ *Default Speed Sensor
+ */
HARDWARE_SPEED_SENSOR_TYPE__DefaultSpeedSensor = 0
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(HARDWARE_SPEED_SENSOR_TYPE)
} HardwareSpeedSensorType;
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareWinderType.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareWinderType.pb-c.h
index 952c9ea12..2acabb018 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareWinderType.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Hardware/HardwareWinderType.pb-c.h
@@ -20,6 +20,9 @@ PROTOBUF_C__BEGIN_DECLS
/* --- enums --- */
typedef enum _HardwareWinderType {
+ /*
+ *Internal Winder
+ */
HARDWARE_WINDER_TYPE__InternalWinder = 0
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(HARDWARE_WINDER_TYPE)
} HardwareWinderType;
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Printing/JobWindingMethod.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Printing/JobWindingMethod.pb-c.h
index a762ae2c5..d3bac5cb2 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Printing/JobWindingMethod.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Printing/JobWindingMethod.pb-c.h
@@ -20,7 +20,13 @@ PROTOBUF_C__BEGIN_DECLS
/* --- enums --- */
typedef enum _JobWindingMethod {
+ /*
+ *Embroidery Winding
+ */
JOB_WINDING_METHOD__Embroidery = 0,
+ /*
+ *Calibration Winding
+ */
JOB_WINDING_METHOD__Calibration = 1
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(JOB_WINDING_METHOD)
} JobWindingMethod;
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsRequest.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsRequest.pb-c.c
new file mode 100644
index 000000000..864992061
--- /dev/null
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashReadWordsRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubExtFlashReadWordsRequest.pb-c.h"
+void stub_ext_flash_read_words_request__init
+ (StubExtFlashReadWordsRequest *message)
+{
+ static const StubExtFlashReadWordsRequest init_value = STUB_EXT_FLASH_READ_WORDS_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_ext_flash_read_words_request__get_packed_size
+ (const StubExtFlashReadWordsRequest *message)
+{
+ assert(message->base.descriptor == &stub_ext_flash_read_words_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_ext_flash_read_words_request__pack
+ (const StubExtFlashReadWordsRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_ext_flash_read_words_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_ext_flash_read_words_request__pack_to_buffer
+ (const StubExtFlashReadWordsRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_ext_flash_read_words_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubExtFlashReadWordsRequest *
+ stub_ext_flash_read_words_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubExtFlashReadWordsRequest *)
+ protobuf_c_message_unpack (&stub_ext_flash_read_words_request__descriptor,
+ allocator, len, data);
+}
+void stub_ext_flash_read_words_request__free_unpacked
+ (StubExtFlashReadWordsRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_ext_flash_read_words_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_ext_flash_read_words_request__field_descriptors[1] =
+{
+ {
+ "Number_Of_Words",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubExtFlashReadWordsRequest, has_number_of_words),
+ offsetof(StubExtFlashReadWordsRequest, number_of_words),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_ext_flash_read_words_request__field_indices_by_name[] = {
+ 0, /* field[0] = Number_Of_Words */
+};
+static const ProtobufCIntRange stub_ext_flash_read_words_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor stub_ext_flash_read_words_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubExtFlashReadWordsRequest",
+ "StubExtFlashReadWordsRequest",
+ "StubExtFlashReadWordsRequest",
+ "",
+ sizeof(StubExtFlashReadWordsRequest),
+ 1,
+ stub_ext_flash_read_words_request__field_descriptors,
+ stub_ext_flash_read_words_request__field_indices_by_name,
+ 1, stub_ext_flash_read_words_request__number_ranges,
+ (ProtobufCMessageInit) stub_ext_flash_read_words_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsRequest.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsRequest.pb-c.h
new file mode 100644
index 000000000..965185ab9
--- /dev/null
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsRequest.pb-c.h
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashReadWordsRequest.proto */
+
+#ifndef PROTOBUF_C_StubExtFlashReadWordsRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubExtFlashReadWordsRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubExtFlashReadWordsRequest StubExtFlashReadWordsRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubExtFlashReadWordsRequest
+{
+ ProtobufCMessage base;
+ /*
+ *Max 5 at this test
+ */
+ protobuf_c_boolean has_number_of_words;
+ uint32_t number_of_words;
+};
+#define STUB_EXT_FLASH_READ_WORDS_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_ext_flash_read_words_request__descriptor) \
+ , 0, 0 }
+
+
+/* StubExtFlashReadWordsRequest methods */
+void stub_ext_flash_read_words_request__init
+ (StubExtFlashReadWordsRequest *message);
+size_t stub_ext_flash_read_words_request__get_packed_size
+ (const StubExtFlashReadWordsRequest *message);
+size_t stub_ext_flash_read_words_request__pack
+ (const StubExtFlashReadWordsRequest *message,
+ uint8_t *out);
+size_t stub_ext_flash_read_words_request__pack_to_buffer
+ (const StubExtFlashReadWordsRequest *message,
+ ProtobufCBuffer *buffer);
+StubExtFlashReadWordsRequest *
+ stub_ext_flash_read_words_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_ext_flash_read_words_request__free_unpacked
+ (StubExtFlashReadWordsRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubExtFlashReadWordsRequest_Closure)
+ (const StubExtFlashReadWordsRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_ext_flash_read_words_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubExtFlashReadWordsRequest_2eproto__INCLUDED */
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsResponse.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsResponse.pb-c.c
new file mode 100644
index 000000000..30fa9ca33
--- /dev/null
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashReadWordsResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubExtFlashReadWordsResponse.pb-c.h"
+void stub_ext_flash_read_words_response__init
+ (StubExtFlashReadWordsResponse *message)
+{
+ static const StubExtFlashReadWordsResponse init_value = STUB_EXT_FLASH_READ_WORDS_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_ext_flash_read_words_response__get_packed_size
+ (const StubExtFlashReadWordsResponse *message)
+{
+ assert(message->base.descriptor == &stub_ext_flash_read_words_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_ext_flash_read_words_response__pack
+ (const StubExtFlashReadWordsResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_ext_flash_read_words_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_ext_flash_read_words_response__pack_to_buffer
+ (const StubExtFlashReadWordsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_ext_flash_read_words_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubExtFlashReadWordsResponse *
+ stub_ext_flash_read_words_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubExtFlashReadWordsResponse *)
+ protobuf_c_message_unpack (&stub_ext_flash_read_words_response__descriptor,
+ allocator, len, data);
+}
+void stub_ext_flash_read_words_response__free_unpacked
+ (StubExtFlashReadWordsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_ext_flash_read_words_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_ext_flash_read_words_response__field_descriptors[4] =
+{
+ {
+ "Address",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubExtFlashReadWordsResponse, has_address),
+ offsetof(StubExtFlashReadWordsResponse, address),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ReadBytes",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubExtFlashReadWordsResponse, n_readbytes),
+ offsetof(StubExtFlashReadWordsResponse, readbytes),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubExtFlashReadWordsResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubExtFlashReadWordsResponse, has_statusword),
+ offsetof(StubExtFlashReadWordsResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_ext_flash_read_words_response__field_indices_by_name[] = {
+ 0, /* field[0] = Address */
+ 1, /* field[1] = ReadBytes */
+ 2, /* field[2] = Status */
+ 3, /* field[3] = StatusWord */
+};
+static const ProtobufCIntRange stub_ext_flash_read_words_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_ext_flash_read_words_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubExtFlashReadWordsResponse",
+ "StubExtFlashReadWordsResponse",
+ "StubExtFlashReadWordsResponse",
+ "",
+ sizeof(StubExtFlashReadWordsResponse),
+ 4,
+ stub_ext_flash_read_words_response__field_descriptors,
+ stub_ext_flash_read_words_response__field_indices_by_name,
+ 1, stub_ext_flash_read_words_response__number_ranges,
+ (ProtobufCMessageInit) stub_ext_flash_read_words_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsResponse.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsResponse.pb-c.h
new file mode 100644
index 000000000..435039d67
--- /dev/null
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashReadWordsResponse.pb-c.h
@@ -0,0 +1,85 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashReadWordsResponse.proto */
+
+#ifndef PROTOBUF_C_StubExtFlashReadWordsResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubExtFlashReadWordsResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubExtFlashReadWordsResponse StubExtFlashReadWordsResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubExtFlashReadWordsResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_address;
+ uint32_t address;
+ /*
+ */
+ size_t n_readbytes;
+ uint32_t *readbytes;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_EXT_FLASH_READ_WORDS_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_ext_flash_read_words_response__descriptor) \
+ , 0, 0, 0,NULL, NULL, 0, 0 }
+
+
+/* StubExtFlashReadWordsResponse methods */
+void stub_ext_flash_read_words_response__init
+ (StubExtFlashReadWordsResponse *message);
+size_t stub_ext_flash_read_words_response__get_packed_size
+ (const StubExtFlashReadWordsResponse *message);
+size_t stub_ext_flash_read_words_response__pack
+ (const StubExtFlashReadWordsResponse *message,
+ uint8_t *out);
+size_t stub_ext_flash_read_words_response__pack_to_buffer
+ (const StubExtFlashReadWordsResponse *message,
+ ProtobufCBuffer *buffer);
+StubExtFlashReadWordsResponse *
+ stub_ext_flash_read_words_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_ext_flash_read_words_response__free_unpacked
+ (StubExtFlashReadWordsResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubExtFlashReadWordsResponse_Closure)
+ (const StubExtFlashReadWordsResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_ext_flash_read_words_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubExtFlashReadWordsResponse_2eproto__INCLUDED */
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsRequest.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsRequest.pb-c.c
new file mode 100644
index 000000000..d7bf372a1
--- /dev/null
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashWriteWordsRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubExtFlashWriteWordsRequest.pb-c.h"
+void stub_ext_flash_write_words_request__init
+ (StubExtFlashWriteWordsRequest *message)
+{
+ static const StubExtFlashWriteWordsRequest init_value = STUB_EXT_FLASH_WRITE_WORDS_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_ext_flash_write_words_request__get_packed_size
+ (const StubExtFlashWriteWordsRequest *message)
+{
+ assert(message->base.descriptor == &stub_ext_flash_write_words_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_ext_flash_write_words_request__pack
+ (const StubExtFlashWriteWordsRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_ext_flash_write_words_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_ext_flash_write_words_request__pack_to_buffer
+ (const StubExtFlashWriteWordsRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_ext_flash_write_words_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubExtFlashWriteWordsRequest *
+ stub_ext_flash_write_words_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubExtFlashWriteWordsRequest *)
+ protobuf_c_message_unpack (&stub_ext_flash_write_words_request__descriptor,
+ allocator, len, data);
+}
+void stub_ext_flash_write_words_request__free_unpacked
+ (StubExtFlashWriteWordsRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_ext_flash_write_words_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_ext_flash_write_words_request__field_descriptors[2] =
+{
+ {
+ "Address",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubExtFlashWriteWordsRequest, has_address),
+ offsetof(StubExtFlashWriteWordsRequest, address),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "WordTWrite",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubExtFlashWriteWordsRequest, n_wordtwrite),
+ offsetof(StubExtFlashWriteWordsRequest, wordtwrite),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_ext_flash_write_words_request__field_indices_by_name[] = {
+ 0, /* field[0] = Address */
+ 1, /* field[1] = WordTWrite */
+};
+static const ProtobufCIntRange stub_ext_flash_write_words_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_ext_flash_write_words_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubExtFlashWriteWordsRequest",
+ "StubExtFlashWriteWordsRequest",
+ "StubExtFlashWriteWordsRequest",
+ "",
+ sizeof(StubExtFlashWriteWordsRequest),
+ 2,
+ stub_ext_flash_write_words_request__field_descriptors,
+ stub_ext_flash_write_words_request__field_indices_by_name,
+ 1, stub_ext_flash_write_words_request__number_ranges,
+ (ProtobufCMessageInit) stub_ext_flash_write_words_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsRequest.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsRequest.pb-c.h
new file mode 100644
index 000000000..1f090b544
--- /dev/null
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsRequest.pb-c.h
@@ -0,0 +1,76 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashWriteWordsRequest.proto */
+
+#ifndef PROTOBUF_C_StubExtFlashWriteWordsRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubExtFlashWriteWordsRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubExtFlashWriteWordsRequest StubExtFlashWriteWordsRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubExtFlashWriteWordsRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_address;
+ uint32_t address;
+ /*
+ */
+ size_t n_wordtwrite;
+ uint32_t *wordtwrite;
+};
+#define STUB_EXT_FLASH_WRITE_WORDS_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_ext_flash_write_words_request__descriptor) \
+ , 0, 0, 0,NULL }
+
+
+/* StubExtFlashWriteWordsRequest methods */
+void stub_ext_flash_write_words_request__init
+ (StubExtFlashWriteWordsRequest *message);
+size_t stub_ext_flash_write_words_request__get_packed_size
+ (const StubExtFlashWriteWordsRequest *message);
+size_t stub_ext_flash_write_words_request__pack
+ (const StubExtFlashWriteWordsRequest *message,
+ uint8_t *out);
+size_t stub_ext_flash_write_words_request__pack_to_buffer
+ (const StubExtFlashWriteWordsRequest *message,
+ ProtobufCBuffer *buffer);
+StubExtFlashWriteWordsRequest *
+ stub_ext_flash_write_words_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_ext_flash_write_words_request__free_unpacked
+ (StubExtFlashWriteWordsRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubExtFlashWriteWordsRequest_Closure)
+ (const StubExtFlashWriteWordsRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_ext_flash_write_words_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubExtFlashWriteWordsRequest_2eproto__INCLUDED */
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsResponse.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsResponse.pb-c.c
new file mode 100644
index 000000000..8488bacc1
--- /dev/null
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsResponse.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashWriteWordsResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubExtFlashWriteWordsResponse.pb-c.h"
+void stub_ext_flash_write_words_response__init
+ (StubExtFlashWriteWordsResponse *message)
+{
+ static const StubExtFlashWriteWordsResponse init_value = STUB_EXT_FLASH_WRITE_WORDS_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_ext_flash_write_words_response__get_packed_size
+ (const StubExtFlashWriteWordsResponse *message)
+{
+ assert(message->base.descriptor == &stub_ext_flash_write_words_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_ext_flash_write_words_response__pack
+ (const StubExtFlashWriteWordsResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_ext_flash_write_words_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_ext_flash_write_words_response__pack_to_buffer
+ (const StubExtFlashWriteWordsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_ext_flash_write_words_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubExtFlashWriteWordsResponse *
+ stub_ext_flash_write_words_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubExtFlashWriteWordsResponse *)
+ protobuf_c_message_unpack (&stub_ext_flash_write_words_response__descriptor,
+ allocator, len, data);
+}
+void stub_ext_flash_write_words_response__free_unpacked
+ (StubExtFlashWriteWordsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_ext_flash_write_words_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_ext_flash_write_words_response__field_descriptors[3] =
+{
+ {
+ "Address",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubExtFlashWriteWordsResponse, has_address),
+ offsetof(StubExtFlashWriteWordsResponse, address),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubExtFlashWriteWordsResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubExtFlashWriteWordsResponse, has_statusword),
+ offsetof(StubExtFlashWriteWordsResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_ext_flash_write_words_response__field_indices_by_name[] = {
+ 0, /* field[0] = Address */
+ 1, /* field[1] = Status */
+ 2, /* field[2] = StatusWord */
+};
+static const ProtobufCIntRange stub_ext_flash_write_words_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor stub_ext_flash_write_words_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubExtFlashWriteWordsResponse",
+ "StubExtFlashWriteWordsResponse",
+ "StubExtFlashWriteWordsResponse",
+ "",
+ sizeof(StubExtFlashWriteWordsResponse),
+ 3,
+ stub_ext_flash_write_words_response__field_descriptors,
+ stub_ext_flash_write_words_response__field_indices_by_name,
+ 1, stub_ext_flash_write_words_response__number_ranges,
+ (ProtobufCMessageInit) stub_ext_flash_write_words_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsResponse.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsResponse.pb-c.h
new file mode 100644
index 000000000..1df324c2f
--- /dev/null
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubExtFlashWriteWordsResponse.pb-c.h
@@ -0,0 +1,83 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashWriteWordsResponse.proto */
+
+#ifndef PROTOBUF_C_StubExtFlashWriteWordsResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubExtFlashWriteWordsResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubExtFlashWriteWordsResponse StubExtFlashWriteWordsResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubExtFlashWriteWordsResponse
+{
+ ProtobufCMessage base;
+ /*
+ */
+ protobuf_c_boolean has_address;
+ uint32_t address;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_EXT_FLASH_WRITE_WORDS_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_ext_flash_write_words_response__descriptor) \
+ , 0, 0, NULL, 0, 0 }
+
+
+/* StubExtFlashWriteWordsResponse methods */
+void stub_ext_flash_write_words_response__init
+ (StubExtFlashWriteWordsResponse *message);
+size_t stub_ext_flash_write_words_response__get_packed_size
+ (const StubExtFlashWriteWordsResponse *message);
+size_t stub_ext_flash_write_words_response__pack
+ (const StubExtFlashWriteWordsResponse *message,
+ uint8_t *out);
+size_t stub_ext_flash_write_words_response__pack_to_buffer
+ (const StubExtFlashWriteWordsResponse *message,
+ ProtobufCBuffer *buffer);
+StubExtFlashWriteWordsResponse *
+ stub_ext_flash_write_words_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_ext_flash_write_words_response__free_unpacked
+ (StubExtFlashWriteWordsResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubExtFlashWriteWordsResponse_Closure)
+ (const StubExtFlashWriteWordsResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_ext_flash_write_words_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubExtFlashWriteWordsResponse_2eproto__INCLUDED */
diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubSpeedSensorResponse.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubSpeedSensorResponse.pb-c.h
index 2a98d2806..6bc9cfa68 100644
--- a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubSpeedSensorResponse.pb-c.h
+++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubSpeedSensorResponse.pb-c.h
@@ -26,6 +26,9 @@ typedef struct _StubSpeedSensorResponse StubSpeedSensorResponse;
struct _StubSpeedSensorResponse
{
ProtobufCMessage base;
+ /*
+ *uint32 Speed_Sensor_ID = 1;
+ */
protobuf_c_boolean has_speed;
uint32_t speed;
};