单军华
2018-04-20 3af69bdf381b9ab123ee6bb6ded07e06578f434a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
/*
 * Copyright Cypress Semiconductor Corporation, 2014-2015 All rights reserved.
 *
 * This software, associated documentation and materials ("Software") is
 * owned by Cypress Semiconductor Corporation ("Cypress") and is
 * protected by and subject to worldwide patent protection (UnitedStates and foreign), United States copyright laws and international
 * treaty provisions. Therefore, unless otherwise specified in a separate license agreement between you and Cypress, this Software
 * must be treated like any other copyrighted material. Reproduction,
 * modification, translation, compilation, or representation of this
 * Software in any other form (e.g., paper, magnetic, optical, silicon)
 * is prohibited without Cypress's express written permission.
 *
 * Disclaimer: THIS SOFTWARE IS PROVIDED AS-IS, WITH NO WARRANTY OF ANY
 * KIND, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
 * NONINFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE. Cypress reserves the right to make changes
 * to the Software without notice. Cypress does not assume any liability
 * arising out of the application or use of Software or any product or
 * circuit described in the Software. Cypress does not authorize its
 * products for use as critical components in any products where a
 * malfunction or failure may reasonably be expected to result in
 * significant injury or death ("High Risk Product"). By including
 * Cypress's product in a High Risk Product, the manufacturer of such
 * system or application assumes all risk of such use and in doing so
 * indemnifies Cypress against all liability.
 *
 * Use of this Software may be limited by and subject to the applicable
 * Cypress software license agreement.
 *
 *
 */
 
#ifndef CySmart_Constants_h
#define CySmart_Constants_h
 
 
#endif
 
enum alertOptions
{
    kAlertNone,
    kMidAlert,
    kHighAlert
};
 
#define APP_NAME    @"CySmart"
 
//Constant for enabling disabling OTA : To disable change YES to NO and vice versa
#define ENABLE_OTA   [NSNumber numberWithBool:YES]
 
//Constant for enabling disabling Glucose Service : To disable change YES to NO and vice versa
#define ENABLE_GLUCOSE   [NSNumber numberWithBool:NO]
 
#define BLUE_COLOR [UIColor colorWithRed:12.0f/255.0f green:55.0f/255.0f blue:123.0f/255.0f alpha:1.0f]
 
#define BLE_PRODUCTS_URL        @"http://www.cypress.com/ble"
#define CONTACT_URL             @"http://www.cypress.com/contactus/"
#define CYPRESS_HOME_URL        @"http://www.cypress.com/"
#define CYPRESS_MOBILE_URL      @"http://www.cypress.com/cysmartmobile"
 
 
#define DEVICE_CONNECTION_TIMEOUT   10.0
 
 
#define ABOUT_VIEW_NIB_NAME           @"AboutView"
#define BUNDLE_VERSION_KEY            @"CFBundleShortVersionString"
 
#define KEYBOARD_HEIGHT     305.0f
#define STATUS_BAR_HEIGHT   20.0f
#define NAV_BAR_HEIGHT      44.0f
#define SEARCH_BAR_TAG      101
 
#define DEFAULT_SIZE_NORMALISATION_CONSTANT_FOR_IPAD     80.0f
 
#define RSC_SERVICE_UUID            [CBUUID UUIDWithString:@"1814"]
#define RSC_CHARACTERISTIC_UUID     [CBUUID UUIDWithString:@"2A53"]
 
 
#define POLARH7_HRM_DEVICE_INFO_SERVICE_UUID @"180A"       // 180A = Device Information
 
 
#define HRM_HEART_RATE_SERVICE_UUID               [CBUUID UUIDWithString:@"180D"]
#define HRM_NOTIFICATIONS_CHARACTERISTIC_UUID     [CBUUID UUIDWithString:@"2A37"]
#define HRM_BODY_LOCATION_CHARACTERISTIC_UUID     [CBUUID UUIDWithString:@"2A38"]
 
#define CSC_SERVICE_UUID            [CBUUID UUIDWithString:@"1816"]
#define CSC_CHARACTERISTIC_UUID     [CBUUID UUIDWithString:@"2A5B"]
 
#define BP_SERVICE_UUID                       [CBUUID UUIDWithString:@"1810"]
#define BP_MEASUREMENT_CHARACTERISTIC_UUID    [CBUUID UUIDWithString:@"2A35"]
 
 
#define GLUCOSE_SERVICE_UUID                        [CBUUID UUIDWithString:@"1808"]
#define GLUCOSE_MEASUREMENT_CHARACTERISTIC_UUID     [CBUUID UUIDWithString:@"2A18"]
 
 
#define THM_SERVICE_UUID                                      [CBUUID UUIDWithString:@"1809"]
#define THM_TEMPERATURE_MEASUREMENT_CHARACTERISTIC_UUID       [CBUUID UUIDWithString:@"2A1C"]
#define THM_TEMPERATURE_TYPE_CHARACTERISTIC_UUID              [CBUUID UUIDWithString:@"2A1D"]
 
#define DEVICE_INFO_SERVICE_UUID                              [CBUUID UUIDWithString:@"180A"]
#define DEVICE_MANUFACTURER_NAME_CHARACTERISTIC_UUID          [CBUUID UUIDWithString:@"2A29"]
#define DEVICE_MODEL_NUMBER_CHARACTERISTIC_UUID               [CBUUID UUIDWithString:@"2A24"]
#define DEVICE_SERIAL_NUMBER_CHARACTERISTIC_UUID              [CBUUID UUIDWithString:@"2A25"]
#define DEVICE_HARDWARE_REVISION_CHARACTERISTIC_UUID          [CBUUID UUIDWithString:@"2A27"]
#define DEVICE_FIRMWARE_REVISION_CHARACTERISTIC_UUID          [CBUUID UUIDWithString:@"2A26"]
#define DEVICE_SOFTWARE_REVISION_CHARACTERISTIC_UUID          [CBUUID UUIDWithString:@"2A28"]
#define DEVICE_SYSTEMID_CHARACTERISTIC_UUID                   [CBUUID UUIDWithString:@"2A23"]
#define DEVICE_CERTIFICATION_DATALIST_CHARACTERISTIC_UUID     [CBUUID UUIDWithString:@"2A2A"]
#define DEVICE_PNPID_CHARACTERISTIC_UUID                      [CBUUID UUIDWithString:@"2A50"]
 
 
#define BATTERY_LEVEL_SERVICE_UUID         [CBUUID UUIDWithString:@"180F"]
#define BATTERY_LEVEL_CHARACTERISTIC_UUID  [CBUUID UUIDWithString:@"2A19"]  
 
 
#define CAPSENSE_SERVICE_UUID                        [CBUUID UUIDWithString:@"CAB5"]
#define CAPSENSE_PROXIMITY_CHARACTERISTIC_UUID       [CBUUID UUIDWithString:@"CAA1"]
#define CAPSENSE_SLIDER_CHARACTERISTIC_UUID          [CBUUID UUIDWithString:@"CAA2"]
#define CAPSENSE_BUTTON_CHARACTERISTIC_UUID          [CBUUID UUIDWithString:@"CAA3"]
 
#define CUSTOM_CAPSENSE_SERVICE_UUID                             [CBUUID UUIDWithString:@"0003cab5-0000-1000-8000-00805f9b0131"]
#define CUSTOM_CAPSENSE_PROXIMITY_CHARACTERISTIC_UUID            [CBUUID UUIDWithString:@"0003caa1-0000-1000-8000-00805f9b0131"]
#define CUSTOM_CAPSENSE_SLIDER_CHARACTERISTIC_UUID               [CBUUID UUIDWithString:@"0003caa2-0000-1000-8000-00805f9b0131"]
#define CUSTOM_CAPSENSE_BUTTONS_CHARACTERISTIC_UUID              [CBUUID UUIDWithString:@"0003caa3-0000-1000-8000-00805f9b0131"]
 
 
 
#define RGB_SERVICE_UUID            [CBUUID UUIDWithString:@"CBBB"]
#define RGB_CHARACTERISTIC_UUID     [CBUUID UUIDWithString:@"CBB1"]
 
#define CUSTOM_RGB_SERVICE_UUID               [CBUUID UUIDWithString:@"0003cbbb-0000-1000-8000-00805f9b0131"]
#define CUSTOM_RGB_CHARACTERISTIC_UUID        [CBUUID UUIDWithString:@"0003cbb1-0000-1000-8000-00805f9b0131"]
 
 
 
 
#define TRANSMISSION_POWER_SERVICE              [CBUUID UUIDWithString:@"1804"]
#define TRANSMISSION_POWER_LEVEL_UUID           [CBUUID UUIDWithString:@"2A07"]
#define LINK_LOSS_SERVICE_UUID                  [CBUUID UUIDWithString:@"1803"]
#define IMMEDIATE_ALERT_SERVICE_UUID            [CBUUID UUIDWithString:@"1802"]
#define ALERT_CHARACTERISTIC_UUID               [CBUUID UUIDWithString:@"2A06"]
 
 
#define DESCRIPTOR_CHARACTERISTIC_EXTENDED_PROPERTY_UUID       [CBUUID UUIDWithString:@"2900"]
#define DESCRIPTOR_CHARACTERISTIC_USER_DESCRIPTION_UUID        [CBUUID UUIDWithString:@"2901"]
#define DESCRIPTOR_CLIENT_CHARACTERISTIC_CONFIG_UUID           [CBUUID UUIDWithString:@"2902"]
#define DESCRIPTOR_SERVER_CHARACTERISTIC_CONFIG_UUID           [CBUUID UUIDWithString:@"2903"]
#define DESCRIPTOR_CHARACTERISTIC_PRESENTATION_FORMAT_UUID     [CBUUID UUIDWithString:@"2904"]
#define DESCRIPTOR_CHARACTERISTIC_AGGREGATE_FORMAT_UUID        [CBUUID UUIDWithString:@"2905"]
#define DESCRIPTOR_VALID_RANGE_UUID                            [CBUUID UUIDWithString:@"2906"]
#define DESCRIPTOR_EXTERNAL_REPORT_REFERENCE_UUID              [CBUUID UUIDWithString:@"2907"]
#define DESCRIPTOR_REPORT_REFERENCE_UUID                       [CBUUID UUIDWithString:@"2908"]
#define DESCRIPTOR_ENVIRONMENTAL_SENSING_CONFIG_UUID           [CBUUID UUIDWithString:@"290B"]
#define DESCRIPTOR_ENVIRONMENTAL_SENSING_MEASUREMENT_UUID      [CBUUID UUIDWithString:@"290C"]
#define DESCRIPTOR_ENVIRONMENTAL_SENSING_TRIGGER_SETTING_UUID  [CBUUID UUIDWithString:@"290D"]
 
 
 
#define BAROMETER_SERVICE_UUID                                     [CBUUID UUIDWithString:@"00040001-0000-1000-8000-00805f9b0131"]
#define BAROMETER_DIGITAL_SENSOR_CHARACTERISTIC_UUID               [CBUUID UUIDWithString:@"00040002-0000-1000-8000-00805f9b0131"]
#define BAROMETER_SENSOR_SCAN_INTERVAL_CHARACTERISTIC_UUID         [CBUUID UUIDWithString:@"00040004-0000-1000-8000-00805f9b0131"]
#define BAROMETER_DATA_ACCUMULATION_CHARACTERISTIC_UUID            [CBUUID UUIDWithString:@"00040007-0000-1000-8000-00805f9b0131"]
#define BAROMETER_READING_CHARACTERISTIC_UUID                      [CBUUID UUIDWithString:@"00040009-0000-1000-8000-00805f9b0131"]
#define BAROMETER_THRESHOLD_FOR_INDICATION_CHARACTERISTIC_UUID     [CBUUID UUIDWithString:@"0004000d-0000-1000-8000-00805f9b0131"]
 
 
#define ACCELEROMETER_SERVICE_UUID                             [CBUUID UUIDWithString:@"00040020-0000-1000-8000-00805f9b0131"]
#define ACCELEROMETER_ANALOG_SENSOR_CHARACTERISTIC_UUID        [CBUUID UUIDWithString:@"00040021-0000-1000-8000-00805f9b0131"]
#define ACCELEROMETER_SENSOR_SCAN_INTERVAL_CHARACTERISTIC_UUID [CBUUID UUIDWithString:@"00040023-0000-1000-8000-00805f9b0131"]
#define ACCELEROMETER_DATA_ACCUMULATION_CHARACTERISTIC_UUID    [CBUUID UUIDWithString:@"00040026-0000-1000-8000-00805f9b0131"]
#define ACCELEROMETER_READING_X_CHARACTERISTIC_UUID            [CBUUID UUIDWithString:@"00040028-0000-1000-8000-00805f9b0131"]
#define ACCELEROMETER_READING_Y_CHARACTERISTIC_UUID            [CBUUID UUIDWithString:@"0004002b-0000-1000-8000-00805f9b0131"]
#define ACCELEROMETER_READING_Z_CHARACTERISTIC_UUID            [CBUUID UUIDWithString:@"0004002d-0000-1000-8000-00805f9b0131"]
 
 
 
#define ANALOG_TEMPERATURE_SERVICE_UUID                          [CBUUID UUIDWithString:@"00040030-0000-1000-8000-00805f9b0131"]
#define TEMPERATURE_ANALOG_SENSOR_CHARACTERISTIC_UUID            [CBUUID UUIDWithString:@"00040031-0000-1000-8000-00805f9b0131"]
#define TEMPERATURE_SENSOR_SCAN_INTERVAL_CHARACTERISTIC_UUID     [CBUUID UUIDWithString:@"00040032-0000-1000-8000-00805f9b0131"]
#define TEMPERATURE_READING_CHARACTERISTIC_UUID                  [CBUUID UUIDWithString:@"00040033-0000-1000-8000-00805f9b0131"]
 
#define WARNING @"Warning!"
#define UNKNOWN_ERROR @"An Unknown error occurred."
 
 
#define CUSTOM_BOOT_LOADER_SERVICE_UUID          [CBUUID UUIDWithString:@"00060000-F8CE-11E4-ABF4-0002A5D5C51B"]
#define BOOT_LOADER_CHARACTERISTIC_UUID          [CBUUID UUIDWithString:@"00060001-F8CE-11E4-ABF4-0002A5D5C51B"]
 
#define COMMAND_START_BYTE    0x01
#define COMMAND_END_BYTE      0x17
//Bootloader command codes
 
#define VERIFY_CHECKSUM       0x31
#define GET_FLASH_SIZE        0x32
#define SEND_DATA             0x37
#define ENTER_BOOTLOADER      0x38
#define PROGRAM_ROW           0x39
#define VERIFY_ROW            0x3A
#define EXIT_BOOTLOADER       0x3B
 
 
// Bootloader status/Error codes
 
#define SUCCESS               @"0x00"
#define ERROR_FILE            @"0x01"
#define ERROR_EOF             @"0x02"
#define ERROR_LENGTH          @"0x03"
#define ERROR_DATA            @"0x04"
#define ERROR_COMMAND         @"0x05"
#define ERROR_DEVICE          @"0x06"
#define ERROR_VERSION         @"0x07"
#define ERROR_CHECKSUM        @"0x08"
#define ERROR_ARRAY           @"0x09"
#define ERROR_ROW             @"0x0A"
#define ERROR_BOOTLOADER      @"0x0B"
#define ERROR_APPLICATION     @"0x0C"
#define ERROR_ACTIVE          @"0x0D"
#define ERROR_UNKNOWN         @"0x0F"
#define ERROR_ABORT           @"0xFF"
 
 
 
 
#define FLASH_ARRAY_ID   @"flashArrayID"
#define FLASH_ROW_NUMBER  @"flashRowNumber"
 
#define CHECK_SUM   @"chec.3kSum"
#define CRC_16      @"crc_16"
#define ROW_DATA    @"rowData"
 
 
#define BLOOD_PRESSURE_UNIT_mmHg    @"mmHg"
#define BLOOD_PRESSURE_UNIT_kPa     @"kPa"
 
/*Carousel View Strings*/
#pragma mark - Carousel View
 
#define SERVICES @"Services"
#define GENERIC_ACCESS_SERVICE_UUID  @"00001800-0000-1000-8000-00805f9b34fb"
 
#define k_SERVICE_IMAGE_NAME_KEY    @"Service_Image"
#define k_SERVICE_NAME_KEY          @"Service_Name"
 
#define DEFAULT_FONT_BOLD               @"Roboto-Bold"
 
#define HRM_VIEW_SB_ID                  @"HRMId"
#define RSC_VIEW_SB_ID                  @"RSCID"
#define CSC_VIEW_SB_ID                  @"CSCId"
#define DEVICE_INFO_VIEW_SB_ID          @"DeviceInfoID"
#define GLUCOSE_VIEW_SB_ID              @"glucoseVCID"
#define BP_VIEW_SB_ID                   @"BloodPressureID"
#define CAPSENSE_VIEW_SB_ID             @"CapsenseRootID"
#define CAPSENSE_BTN_VIEW_SB_ID         @"CapsenseButtonID"
#define PROXIMITY_VIEW_SB_ID            @"proximityVCId"
#define CAPSENSE_SLIDER_VIEW_SB_ID      @"sliderVCId"
#define RGB_VIEW_SB_ID                  @"RGBViewID"
#define HEALTH_THERMO_VIEW_SB_ID        @"HealthThermometerID"
#define BATTERY_VIEW_SB_ID              @"BatteryServiceID"
#define FIND_ME_VIEW_SB_ID              @"findMeID"
#define SENSOR_HUB_VIEW_SB_ID           @"sensorHubID"
#define GATTDB_VIEW_SB_ID               @"ServicesID"
#define FILE_SEL_VIEW_SB_ID             @"FileSelectionID"
 
/*Navigation Bar Titles*/
#pragma mark - Navigation Bar Titles
 
// Device information strings
 
#define MANUFACTURER_NAME                       @"Manufacturer Name"
#define MODEL_NUMBER                            @"Model Number"
#define SERIAL_NUMBER                           @"Serial Number"
#define HARDWARE_REVISION                       @"Hardware Revision"
#define FIRMWARE_REVISION                       @"Firmware Revision"
#define SOFTWARE_REVISION                       @"Software Revision"
#define SYSTEM_ID                               @"System ID"
#define REGULATORY_CERTIFICATION_DATA_LIST      @"Regulatory Certification Data List"
#define PNP_ID                                  @"PnP ID"
 
 
#define BLE_DEVICE            @"BLE Devices"
#define UNKNOWN_PERIPHERAL    @"Unknown Peripheral"
#define BACK_BUTTON_IMAGE  @"backButton"
 
 
/* characteristic properties*/
 
#define READ @"Read"
#define WRITE @"Write"
#define NOTIFY @"Notify"
#define INDICATE @"Indicate"
 
/* firmware upgrade */
 
#define FIRMWARE_DISCONNECTION_ERROR        @"You have application upgrade pending."
 
 
 
/* log strings */
 
#define CONNECTION_REQUEST          @"Connection request sent"
#define CONNECTION_ESTABLISH        @"Connection established"
#define PAIRING_REQUEST             @"Pairing request sent"
#define PAIRING_RQUEST_RECEIVED     @"Pairing request received"
#define PAIRED                      @"Paired"
#define UNPAIRED                    @"Unpaired"
#define SERVICE_DISCOVERY_REQUEST   @"Service discovery request sent"
#define SERVICE_DISCOVERY_STATUS    @"Service discovery status "
#define DISCONNECTION_REQUEST       @"Disconnection request sent"
#define DISCONNECTED                @"Disconnected"
 
#define SERVICE_DISCOVERED          @"Success"
#define SERVICE_DISCOVERY_ERROR     @"Service discovery request failed with error : "
 
// BLE operations
 
#define WRITE_REQUEST               @"Write request sent with value "
#define WRITE_REQUEST_STATUS        @"Write request status "
#define WRITE_SUCCESS               @"Success"
#define WRITE_ERROR                 @"Failed with error : "
 
#define START_NOTIFY                @"Start notification request sent"
#define STOP_NOTIFY                 @"Stop notification request sent"
#define NOTIFY_RESPONSE             @"Notification received with value "
 
#define READ_REQUEST                @"Read request sent"
#define READ_RESPONSE               @"Read response received with value "
#define READ_ERROR                  @"Failed with error : "
 
 
#define START_INDICATE              @"Start indicate request sent"
#define STOP_INDICATE               @"Stop indicate request sent"
#define INDICATE_RESPONSE           @"Indicate response received with value "
 
 
 
 
 
#define DATA_SEPERATOR      @"##"
 
/* Date formats */
 
#define DATE_FORMAT     @"dd-MMM-yyyy"
#define TIME_FORMAT     @"HH:mm:ss"
 
//Device Detection Macros
#pragma mark - Device detection macros
 
#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
#define IS_IPHONE (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
#define IS_RETINA ([[UIScreen mainScreen] scale] >= 2.0)
 
#define SCREEN_WIDTH ([[UIScreen mainScreen] bounds].size.width)
#define SCREEN_HEIGHT ([[UIScreen mainScreen] bounds].size.height)
#define SCREEN_MAX_LENGTH (MAX(SCREEN_WIDTH, SCREEN_HEIGHT))
#define SCREEN_MIN_LENGTH (MIN(SCREEN_WIDTH, SCREEN_HEIGHT))
 
#define IS_IPHONE_4_OR_LESS (IS_IPHONE && SCREEN_MAX_LENGTH < 568.0)
#define IS_IPHONE_5 (IS_IPHONE && SCREEN_MAX_LENGTH == 568.0)
#define IS_IPHONE_6 (IS_IPHONE && SCREEN_MAX_LENGTH == 667.0)
#define IS_IPHONE_6P (IS_IPHONE && SCREEN_MAX_LENGTH == 736.0)
 
 
//OTA Upgrade
#pragma mark - OTA Upgrade
 
#define OTA_UPGRADE_STATUS                  @"UpgradeStatus"
 
#define OTA_UPGRADE_CANCELLED_MSG           @"Firmware upgrade cancelled."
#define OTA_FILES_SELECTED_MSG              @"Firmware File(s) Selected."
#define OTA_UPGRADE_IN_PROGRESS_MSG         @"Firmware upgrade in progress."
#define OTA_UPGRADE_COMPLETED_MSG           @"Firmware upgrade completed successfully."
#define OTA_APP_UPGRADE_PENDING_MSG         @"Stack upgrade completed successfully. Application upgrade pending."
#define OTA_ROW_NO_OUT_OF_BOUND_MSG         @"Error: The row number exceeds the bounds"
#define OTA_INVALID_APPLICATION_FILE_MSG    @"Error: The application is invalid"
#define OTA_CHECKSUM_MISMATCH_MSG           @"Error: The checksum do not match"
#define OTA_WRITING_FAILED_MSG              @"Error: Failed writing data row"
#define OTA_SEND_DATA_COMMAND_FAILED        @"Error: Failed writing data with SEND_DATA command"
#define OTA_SILICON_ID_MISMATCH_MSG         @"Error: The SiliconID or SiliconRev does not match"
#define OTA_UPGRADE_CANCEL_CONFIRM_MSG      @"Do you want to cancel the OTA update?"
#define OTA_UPGRADE_RESUME_CONFIRM_MSG      @"Do you want to resume the OTA update?"
#define OTA_APP_UPGRADE_PENDING_WARNIG      @"Warning! Application upgrade pending."