message_flags.h
Go to the documentation of this file.
1 
9 #ifndef TOPOSENS_MESSAGE_FLAGS_H
10 #define TOPOSENS_MESSAGE_FLAGS_H
11 
12 #include <stdint.h>
13 
14 // CAN frame byte offsets
15 #define CAN_MAX_FRAME_LEN 8
16 #define UART_MAX_FRAME_LEN 255
17 #define CONTROL_BYTE_IDX 0
18 #define SUBCONTROL_BYTE_IDX 1
19 #define PARAM_BYTE_1_IDX 2
20 #define PARAM_BYTE_2_IDX 3
21 #define PARAM_BYTE_3_IDX 4
22 #define PARAM_BYTE_4_IDX 5
23 #define PARAM_BYTE_5_IDX 6
24 #define PARAM_BYTE_6_IDX 7
25 
26 #define VERSION_REPLY_LEN 5
27 #define GENERAL_NACK_LEN 4
28 #define GENERAL_ACK_LEN 3
29 #define GET_NACK_LEN 4
30 #define SET_ACK_LEN 4
31 #define TRIGGER_ACK_LEN 3
32 #define READY_NOTIFICATION_LEN 3
33 #define TRIGGER_LEN 2
34 
35 #define START_POINT_SESSION_LEN 3
36 #define START_ADC_DUMP_SESSION_LEN 6
37 #define START_POINT_SESSION_ACK_LEN 4
38 #define START_ADC_DUMP_SESSION_ACK_LEN 7
39 #define EOS_ACK_LEN 2
40 #define NOISE_LEVEL_FRAME_LEN 3
41 #define X_OFFSET 1
42 #define Y_OFFSET 3
43 #define Z_OFFSET 5
44 #define INTENSITY_3D_OFFSET 7
45 #define INTENSITY_1D_OFFSET 3
46 #define DIST_1D_OFFSET 1
47 #define POINT_FRAME_3D_LEN 8
48 #define POINT_FRAME_1D_LEN 4
49 #define ADC_FRAME_COUNT_OFFSET 1
50 #define ADC_FRAME_CH_1_OFFSET 2
51 #define ADC_FRAME_CH_2_OFFSET 4
52 #define ADC_FRAME_CH_3_OFFSET 6
53 #define ADC_FRAME_LEN 8
54 #define EOS_FRAME_LEN 1
55 #define STANDARD_GET_MESSAGE_LEN 3
56 #define INDEXED_GET_MESSAGE_LEN 4
57 
58 #define INIT_APP_UPDATE_LEN 46
59 #define APP_PACKET_LEN 142
60 #define COMPLETE_ACK_UPDATE_LEN 2
61 
62 #define UART_APP_PACKET_DATA_LEN 128
63 #define USB_APP_PACKET_DATA_LEN 47
64 #define LOG_STRING_OVERHEAD_BYTES 3
65 #define MAX_UART_MESSAGE_LEN 255
66 #define MAX_LOG_STRING_LEN (255 - LOG_STRING_OVERHEAD_BYTES)
67 #define FW_ACTION_NACK_LEN 2
68 #define FW_ACTION_ACK_LEN 2
69 #define MAX_APP_SIZE 262144
70 
71 #define ENCRYPTED_SECRET_KEY_LEN 48
72 
73 #define LOGGING_SEVERITY_BYTE 0
74 #define LOGGING_CATEGORY_BYTE 1
75 #define LOGGING_ISSUE_BYTE_1 2
76 #define LOGGING_ISSUE_BYTE_2 3
77 #define LOGGING_ISSUE_BYTE_3 4
78 
79 typedef enum ControlByte_t
80 {
81  // General
86 
87  // Specific sessions
90 
91  // Action triggers
94 
95  // FW update
99 
100  // Set params
103 
104  // Get params
108 
109  // Get versions
112 
113  // Logging
118 
119 } ControlByte_t;
120 
121 typedef enum ParamGroupByte_t
122 {
128 
129 typedef enum ActionByte_t
130 {
137 } ActionByte_t;
138 
139 static const char* kActionCommands[] = {"Perform Reboot", "Perform Measurement",
140  "Perform Factory Reset", "Store Settings",
141  "Load Settings", "Perform ADC Dump"};
142 
143 typedef enum VersionByte_t
144 {
150 } VersionByte_t;
151 
152 static const char* kVersionStrings[] = {"Bootloader Version", "Application Version",
153  "Hardware Version", "Signal Processing Library Version",
154  "Communication Library Version"};
155 
156 typedef enum PointTypeByte_t
157 {
163 
164 typedef enum ADCFrameTypeByte_t
165 {
168 
170 {
175 
176 static const char* kFirmwareUploadActionStrings[] = {"Init FW Upload", "App Packet",
177  "Complete Update"};
178 
179 typedef enum ACKStausByte_t
180 {
186 
187 static const char* kACKStatusStrings[] = {"successfully acknowledged",
188  "negatively acknowledged (Parameter out of range)",
189  "negatively acknowledged (Invalid operation)",
190  "negatively acknowledged (Falling back to default)"};
191 
192 typedef enum ADCParamByte_t
193 {
197 
199 {
203 
205 {
214 
215 typedef enum SystemParamByte_t
216 {
226 
227 #endif // TOPOSENS_MESSAGE_FLAGS_H
CONTROL_BYTE_GET
@ CONTROL_BYTE_GET
Definition: message_flags.h:105
SYS_PARAM_BYTE_UNIQUE_ID
@ SYS_PARAM_BYTE_UNIQUE_ID
Definition: message_flags.h:223
CONTROL_BYTE_GET_REPLY
@ CONTROL_BYTE_GET_REPLY
Definition: message_flags.h:106
VERSION_BYTE_SIG_PRO_LIB
@ VERSION_BYTE_SIG_PRO_LIB
Definition: message_flags.h:148
CONTROL_BYTE_LOG_WARN
@ CONTROL_BYTE_LOG_WARN
Definition: message_flags.h:116
ADCFrameTypeByte_t
ADCFrameTypeByte_t
Definition: message_flags.h:164
SignalProcessingParamByte_t
SignalProcessingParamByte_t
Definition: message_flags.h:204
TransducerParamByte_t
TransducerParamByte_t
Definition: message_flags.h:198
SIGPRO_PARAM_BYTE_ENABLE_AUTO_GAIN
@ SIGPRO_PARAM_BYTE_ENABLE_AUTO_GAIN
Definition: message_flags.h:212
VersionByte_t
VersionByte_t
Definition: message_flags.h:143
SystemParamByte_t
SystemParamByte_t
Definition: message_flags.h:215
CONTROL_BYTE_ACK
@ CONTROL_BYTE_ACK
Definition: message_flags.h:83
FW_UPLOAD_ACTION_BYTE_BLOB_IN
@ FW_UPLOAD_ACTION_BYTE_BLOB_IN
Definition: message_flags.h:172
ADC_PARAM_BYTE_USE_FIXED_FRAME_RATE
@ ADC_PARAM_BYTE_USE_FIXED_FRAME_RATE
Definition: message_flags.h:194
CONTROL_BYTE_TRIGGER_ACTION_ACK
@ CONTROL_BYTE_TRIGGER_ACTION_ACK
Definition: message_flags.h:93
CONTROL_BYTE_BEGIN_ADC_DUMP_SESSION
@ CONTROL_BYTE_BEGIN_ADC_DUMP_SESSION
Definition: message_flags.h:89
FW_UPLOAD_ACTION_BYTE_INIT
@ FW_UPLOAD_ACTION_BYTE_INIT
Definition: message_flags.h:171
kACKStatusStrings
static const char * kACKStatusStrings[]
Definition: message_flags.h:187
ACTION_BYTE_FACTORY_DEFAULTS
@ ACTION_BYTE_FACTORY_DEFAULTS
Definition: message_flags.h:133
VERSION_BYTE_HW
@ VERSION_BYTE_HW
Definition: message_flags.h:147
SIGPRO_PARAM_BYTE_ENABLE_DIRECT_MULTIPATH_FILTER
@ SIGPRO_PARAM_BYTE_ENABLE_DIRECT_MULTIPATH_FILTER
Definition: message_flags.h:211
CONTROL_BYTE_GET_VERSION_REPLY
@ CONTROL_BYTE_GET_VERSION_REPLY
Definition: message_flags.h:111
ACK_STATUS_BYTE_OPERATION_INVALID
@ ACK_STATUS_BYTE_OPERATION_INVALID
Definition: message_flags.h:183
CONTROL_BYTE_GET_NACK
@ CONTROL_BYTE_GET_NACK
Definition: message_flags.h:107
TRANSDUCER_PARAM_BYTE_NUMBER_PULSES
@ TRANSDUCER_PARAM_BYTE_NUMBER_PULSES
Definition: message_flags.h:201
CONTROL_BYTE_SET_ACK
@ CONTROL_BYTE_SET_ACK
Definition: message_flags.h:102
ACTION_BYTE_ADC_DUMP
@ ACTION_BYTE_ADC_DUMP
Definition: message_flags.h:136
CONTROL_BYTE_BEGIN_POINT_OUTPUT_SESSION
@ CONTROL_BYTE_BEGIN_POINT_OUTPUT_SESSION
Definition: message_flags.h:88
FirmwareUploadActionByte_t
FirmwareUploadActionByte_t
Definition: message_flags.h:169
SYS_PARAM_BYTE_CALIBRATION_STATE
@ SYS_PARAM_BYTE_CALIBRATION_STATE
Definition: message_flags.h:224
POINT_TYPE_BYTE_NEAR_FIELD
@ POINT_TYPE_BYTE_NEAR_FIELD
Definition: message_flags.h:159
ADCParamByte_t
ADCParamByte_t
Definition: message_flags.h:192
CONTROL_BYTE_SET
@ CONTROL_BYTE_SET
Definition: message_flags.h:101
PARAM_GROUP_BYTE_ADC
@ PARAM_GROUP_BYTE_ADC
Definition: message_flags.h:123
kFirmwareUploadActionStrings
static const char * kFirmwareUploadActionStrings[]
Definition: message_flags.h:176
ControlByte_t
ControlByte_t
Definition: message_flags.h:79
CONTROL_BYTE_EOS
@ CONTROL_BYTE_EOS
Definition: message_flags.h:82
ACTION_BYTE_STORE_SETTINGS
@ ACTION_BYTE_STORE_SETTINGS
Definition: message_flags.h:134
CONTROL_BYTE_LOG_INFO
@ CONTROL_BYTE_LOG_INFO
Definition: message_flags.h:115
PARAM_GROUP_BYTE_SIGNAL_PROCESSING
@ PARAM_GROUP_BYTE_SIGNAL_PROCESSING
Definition: message_flags.h:125
TRANSDUCER_PARAM_BYTE_VOLUME
@ TRANSDUCER_PARAM_BYTE_VOLUME
Definition: message_flags.h:200
ActionByte_t
ActionByte_t
Definition: message_flags.h:129
CONTROL_BYTE_FW_UPDATE_ACTION_ACK
@ CONTROL_BYTE_FW_UPDATE_ACTION_ACK
Definition: message_flags.h:98
ParamGroupByte_t
ParamGroupByte_t
Definition: message_flags.h:121
CONTROL_BYTE_LOG_ERROR
@ CONTROL_BYTE_LOG_ERROR
Definition: message_flags.h:117
PARAM_GROUP_BYTE_TRANSDUCER
@ PARAM_GROUP_BYTE_TRANSDUCER
Definition: message_flags.h:124
CONTROL_BYTE_LOG_DEBUG
@ CONTROL_BYTE_LOG_DEBUG
Definition: message_flags.h:114
VERSION_BYTE_COMMS_LIB
@ VERSION_BYTE_COMMS_LIB
Definition: message_flags.h:149
SYS_PARAM_BYTE_LOG_LEVEL
@ SYS_PARAM_BYTE_LOG_LEVEL
Definition: message_flags.h:219
CONTROL_BYTE_FW_UPDATE_ACTION_NACK
@ CONTROL_BYTE_FW_UPDATE_ACTION_NACK
Definition: message_flags.h:97
ACK_STATUS_BYTE_SUCCESS
@ ACK_STATUS_BYTE_SUCCESS
Definition: message_flags.h:181
ACKStausByte_t
ACKStausByte_t
Definition: message_flags.h:179
ACK_STATUS_BYTE_OUT_OF_RANGE
@ ACK_STATUS_BYTE_OUT_OF_RANGE
Definition: message_flags.h:182
SYS_PARAM_BYTE_SENSOR_MODE
@ SYS_PARAM_BYTE_SENSOR_MODE
Definition: message_flags.h:222
ADC_PARAM_BYTE_FRAME_RATE
@ ADC_PARAM_BYTE_FRAME_RATE
Definition: message_flags.h:195
ACTION_BYTE_LOAD_SETTINGS
@ ACTION_BYTE_LOAD_SETTINGS
Definition: message_flags.h:135
FW_UPLOAD_ACTION_BYTE_COMPLETE
@ FW_UPLOAD_ACTION_BYTE_COMPLETE
Definition: message_flags.h:173
SYS_PARAM_BYTE_MCU_TEMPERATURE
@ SYS_PARAM_BYTE_MCU_TEMPERATURE
Definition: message_flags.h:218
VERSION_BYTE_BOOTLOADER
@ VERSION_BYTE_BOOTLOADER
Definition: message_flags.h:145
PointTypeByte_t
PointTypeByte_t
Definition: message_flags.h:156
SIGPRO_PARAM_BYTE_ENABLE_NEAR_FIELD_DETECTION
@ SIGPRO_PARAM_BYTE_ENABLE_NEAR_FIELD_DETECTION
Definition: message_flags.h:210
SIGPRO_PARAM_BYTE_NOISE_LEVEL_THRESHOLD_FACTOR
@ SIGPRO_PARAM_BYTE_NOISE_LEVEL_THRESHOLD_FACTOR
Definition: message_flags.h:208
SYS_PARAM_BYTE_RESET_REASON
@ SYS_PARAM_BYTE_RESET_REASON
Definition: message_flags.h:220
SIGPRO_PARAM_BYTE_RELATIVE_HUMIDITY
@ SIGPRO_PARAM_BYTE_RELATIVE_HUMIDITY
Definition: message_flags.h:207
ACTION_BYTE_MEASUREMENT
@ ACTION_BYTE_MEASUREMENT
Definition: message_flags.h:132
VERSION_BYTE_APP
@ VERSION_BYTE_APP
Definition: message_flags.h:146
kActionCommands
static const char * kActionCommands[]
Definition: message_flags.h:139
SIGPRO_PARAM_BYTE_NOISE_RATIO_THRESHOLD
@ SIGPRO_PARAM_BYTE_NOISE_RATIO_THRESHOLD
Definition: message_flags.h:209
POINT_TYPE_BYTE_1D
@ POINT_TYPE_BYTE_1D
Definition: message_flags.h:161
ACTION_BYTE_REBOOT
@ ACTION_BYTE_REBOOT
Definition: message_flags.h:131
kVersionStrings
static const char * kVersionStrings[]
Definition: message_flags.h:152
CONTROL_BYTE_NACK
@ CONTROL_BYTE_NACK
Definition: message_flags.h:84
CONTROL_BYTE_TRIGGER_ACTION
@ CONTROL_BYTE_TRIGGER_ACTION
Definition: message_flags.h:92
POINT_TYPE_BYTE_3D
@ POINT_TYPE_BYTE_3D
Definition: message_flags.h:158
SYS_PARAM_BYTE_NODE_ID
@ SYS_PARAM_BYTE_NODE_ID
Definition: message_flags.h:217
PARAM_GROUP_BYTE_SYSTEM
@ PARAM_GROUP_BYTE_SYSTEM
Definition: message_flags.h:126
CONTROL_BYTE_FW_UPDATE_ACTION
@ CONTROL_BYTE_FW_UPDATE_ACTION
Definition: message_flags.h:96
CONTROL_BYTE_READY
@ CONTROL_BYTE_READY
Definition: message_flags.h:85
CONTROL_BYTE_VERSION
@ CONTROL_BYTE_VERSION
Definition: message_flags.h:110
SYS_PARAM_BYTE_SENSOR_STATE
@ SYS_PARAM_BYTE_SENSOR_STATE
Definition: message_flags.h:221
SIGPRO_PARAM_BYTE_TEMPERATURE
@ SIGPRO_PARAM_BYTE_TEMPERATURE
Definition: message_flags.h:206
ACK_STATUS_BYTE_FALLBACK
@ ACK_STATUS_BYTE_FALLBACK
Definition: message_flags.h:184
ADC_FRAME_TYPE_DATA
@ ADC_FRAME_TYPE_DATA
Definition: message_flags.h:166
POINT_TYPE_BYTE_NOISE_LEVEL
@ POINT_TYPE_BYTE_NOISE_LEVEL
Definition: message_flags.h:160


toposens_echo_driver
Author(s): Tobias Roth , Dennis Maier , Baris Yazici
autogenerated on Wed Mar 2 2022 01:12:32