Proyecto ABInBev para la tarjeta Guaria 1/2.

Committer:
fmanzano_dtk
Date:
Mon Jul 04 23:23:01 2022 -0600
Revision:
7:01141979e5f2
Parent:
5:07720e3f99d2
Child:
8:a174cef25049
Se agregan las definiciones para soportar dos lectores de huellas

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fmanzano_dtk 1:9e821e640117 1 /**
fmanzano_dtk 1:9e821e640117 2 * @file fmu130_exe.cpp
fmanzano_dtk 1:9e821e640117 3 * @author Felícito Manzano (felicito.manzano@detektor.com.sv)
fmanzano_dtk 1:9e821e640117 4 * @brief
fmanzano_dtk 1:9e821e640117 5 * @version 0.1
fmanzano_dtk 1:9e821e640117 6 * @date 2020-10-03
fmanzano_dtk 1:9e821e640117 7 *
fmanzano_dtk 1:9e821e640117 8 * @copyright Copyright (c) 2020
fmanzano_dtk 1:9e821e640117 9 *
fmanzano_dtk 1:9e821e640117 10 */
fmanzano_dtk 1:9e821e640117 11
fmanzano_dtk 1:9e821e640117 12 #include "mbed.h"
fmanzano_dtk 1:9e821e640117 13 #include "fmu130_exe.hpp" //////
fmanzano_dtk 1:9e821e640117 14 #include "BufferedSerial.h"
fmanzano_dtk 1:9e821e640117 15 //#include "GT521FX.hpp"
fmanzano_dtk 1:9e821e640117 16 #include "New_GT521Fx.hpp"
fmanzano_dtk 1:9e821e640117 17 #include "jq8400_voice.hpp"
fmanzano_dtk 1:9e821e640117 18 #include "voice_cn_pa.hpp"
fmanzano_dtk 1:9e821e640117 19 #include "teltonika_fmu130.hpp"
fmanzano_dtk 1:9e821e640117 20 #include "fingerprint_frame.hpp"
fmanzano_dtk 1:9e821e640117 21 #include "avl_fmu130.hpp"
fmanzano_dtk 1:9e821e640117 22 #include "USBSerial.h"
fmanzano_dtk 1:9e821e640117 23 #include "eeprom.h"
fmanzano_dtk 5:07720e3f99d2 24 #include "eeprom_exe.hpp"
fmanzano_dtk 5:07720e3f99d2 25 #include "custom_def.hpp"
fmanzano_dtk 1:9e821e640117 26
fmanzano_dtk 1:9e821e640117 27
fmanzano_dtk 1:9e821e640117 28 /**
fmanzano_dtk 1:9e821e640117 29 * @brief
fmanzano_dtk 1:9e821e640117 30 * Objetos Entradas Digitales / Seriales
fmanzano_dtk 1:9e821e640117 31 */
fmanzano_dtk 1:9e821e640117 32 extern BufferedSerial avl_uart;
fmanzano_dtk 1:9e821e640117 33 extern BufferedSerial voice_uart;
fmanzano_dtk 1:9e821e640117 34 extern DigitalOut out1_fingerprint;
fmanzano_dtk 1:9e821e640117 35 extern DigitalOut out2_ble_reset;
fmanzano_dtk 1:9e821e640117 36 extern DigitalOut out3_gt521fx;
fmanzano_dtk 1:9e821e640117 37 extern DigitalOut out4_gt521fx;
fmanzano_dtk 1:9e821e640117 38 extern BufferedSerial fingerprint;
fmanzano_dtk 1:9e821e640117 39 extern USBSerial myPC_debug;
fmanzano_dtk 1:9e821e640117 40 extern Ticker tick_idle_shutdown;
fmanzano_dtk 1:9e821e640117 41 extern Ticker tick_idle_reminder;
fmanzano_dtk 1:9e821e640117 42 extern Ticker tick_safety_tip;
fmanzano_dtk 1:9e821e640117 43 extern Ticker tick_rain_sensor;
fmanzano_dtk 1:9e821e640117 44 extern Ticker tick_autoreset_ble;
fmanzano_dtk 1:9e821e640117 45 extern EEPROM ep;
fmanzano_dtk 1:9e821e640117 46
fmanzano_dtk 7:01141979e5f2 47 #define DEBUG_FMU130_CPP 1
fmanzano_dtk 7:01141979e5f2 48 #define FP_READER_GT521 1
fmanzano_dtk 1:9e821e640117 49
fmanzano_dtk 1:9e821e640117 50 /**
fmanzano_dtk 1:9e821e640117 51 * @brief
fmanzano_dtk 1:9e821e640117 52 * Variables Externas de Recepción
fmanzano_dtk 1:9e821e640117 53 */
fmanzano_dtk 1:9e821e640117 54 extern bool rg9_raining;
fmanzano_dtk 1:9e821e640117 55 extern bool ignition;
fmanzano_dtk 1:9e821e640117 56 extern bool estado_actual_ignicion;
fmanzano_dtk 1:9e821e640117 57 extern char fmu130_payload[1024];
fmanzano_dtk 1:9e821e640117 58 extern int fmu130_payload_type;
fmanzano_dtk 1:9e821e640117 59 extern int incoming_bytes;
fmanzano_dtk 1:9e821e640117 60 extern int temp_JQ8400_Volume;
fmanzano_dtk 1:9e821e640117 61
fmanzano_dtk 1:9e821e640117 62 /**
fmanzano_dtk 1:9e821e640117 63 * @brief
fmanzano_dtk 1:9e821e640117 64 * Variables externas de comandos AVL
fmanzano_dtk 1:9e821e640117 65 */
fmanzano_dtk 1:9e821e640117 66 extern const char hardware_version[];
fmanzano_dtk 1:9e821e640117 67 extern const char firmware_version[];
fmanzano_dtk 1:9e821e640117 68 extern char avl_fmu130_header[2];
fmanzano_dtk 1:9e821e640117 69 extern char avl_fmu130_imei[16];
fmanzano_dtk 1:9e821e640117 70 extern int avl_fmu130_id;
fmanzano_dtk 1:9e821e640117 71 extern int avl_fmu130_status;
fmanzano_dtk 1:9e821e640117 72
fmanzano_dtk 1:9e821e640117 73 /**
fmanzano_dtk 1:9e821e640117 74 * @brief
fmanzano_dtk 1:9e821e640117 75 * Variables externas con comandos del lector de huellas y
fmanzano_dtk 1:9e821e640117 76 * funciones de habilitación
fmanzano_dtk 1:9e821e640117 77 */
fmanzano_dtk 1:9e821e640117 78 extern int bluetooth_cmd_id;
fmanzano_dtk 1:9e821e640117 79 extern int fingerprint_id;
fmanzano_dtk 1:9e821e640117 80 extern char fingerprint_cmd[4];
fmanzano_dtk 1:9e821e640117 81 extern char fingerprint_hex[997];
fmanzano_dtk 1:9e821e640117 82 extern char fingerprint_asc[499];
fmanzano_dtk 1:9e821e640117 83 extern bool flag_idle_force_shutdown;
fmanzano_dtk 1:9e821e640117 84 extern bool flag_idle_reminder;
fmanzano_dtk 1:9e821e640117 85 extern bool flag_fingerprint_Sleep;
fmanzano_dtk 1:9e821e640117 86 extern bool functionality_fingerprint_reader;
fmanzano_dtk 1:9e821e640117 87 extern bool fingerprint_remotly_disable;
fmanzano_dtk 1:9e821e640117 88 extern bool functionality_force_driver_buclke;
fmanzano_dtk 1:9e821e640117 89 extern bool functionality_idle_shutdown;
fmanzano_dtk 1:9e821e640117 90 extern bool functionality_idle_reminder;
fmanzano_dtk 1:9e821e640117 91 extern bool functionality_rain_sensor;
fmanzano_dtk 1:9e821e640117 92 extern bool functionality_seatbelt_reading;
fmanzano_dtk 1:9e821e640117 93 extern int wet_Speed_Limit;
fmanzano_dtk 1:9e821e640117 94 extern int wet_Speed_Warning;
fmanzano_dtk 1:9e821e640117 95 extern int dry_Speed_Limit;
fmanzano_dtk 1:9e821e640117 96 extern int dry_Speed_Warning;
fmanzano_dtk 1:9e821e640117 97 extern char wet_Speed_CMD[30];
fmanzano_dtk 1:9e821e640117 98 extern char dry_Speed_CMD[30];
fmanzano_dtk 1:9e821e640117 99 extern bool flag_query_rain_sensor;
fmanzano_dtk 1:9e821e640117 100 extern bool flag_safety_tip_enable;
fmanzano_dtk 1:9e821e640117 101 extern bool functionality_safety_tip;
fmanzano_dtk 1:9e821e640117 102 extern float time_safety_tip;
fmanzano_dtk 1:9e821e640117 103 extern float time_sample_rain;
fmanzano_dtk 1:9e821e640117 104 extern bool fingerprint_override;
fmanzano_dtk 1:9e821e640117 105 extern int fp_override_limit;
fmanzano_dtk 1:9e821e640117 106 extern bool functionality_geo_warning;
fmanzano_dtk 1:9e821e640117 107 extern bool functionality_rainSensor_silentMode;
fmanzano_dtk 1:9e821e640117 108 extern bool functionality_ble_autoreset;
fmanzano_dtk 1:9e821e640117 109 extern float time_ble_autoreset;
fmanzano_dtk 1:9e821e640117 110 extern bool finterprint_flag_working;
fmanzano_dtk 1:9e821e640117 111 extern bool fingerprint_flag_poweroff;
fmanzano_dtk 1:9e821e640117 112 // Cinturones
fmanzano_dtk 1:9e821e640117 113 extern bool pilot_buckle_type;
fmanzano_dtk 1:9e821e640117 114 extern int pilot_buckleUp;
fmanzano_dtk 1:9e821e640117 115 extern int pilot_unfasten;
fmanzano_dtk 1:9e821e640117 116 extern bool copilot_buckle_type;
fmanzano_dtk 1:9e821e640117 117 extern int copilot_buckleUp;
fmanzano_dtk 1:9e821e640117 118 extern int copilot_unfasten;
fmanzano_dtk 1:9e821e640117 119 extern bool crew_buckle_type;
fmanzano_dtk 1:9e821e640117 120 extern int crew_buckleUp;
fmanzano_dtk 1:9e821e640117 121 extern int crew_unfasten;
fmanzano_dtk 1:9e821e640117 122
fmanzano_dtk 1:9e821e640117 123
fmanzano_dtk 1:9e821e640117 124 // Variables de flash
fmanzano_dtk 1:9e821e640117 125 //extern uint16_t VirtAddVarTab[];
fmanzano_dtk 1:9e821e640117 126 //extern uint16_t VarDataTab[];
fmanzano_dtk 1:9e821e640117 127 extern uint32_t eprom_AddressArray[];
fmanzano_dtk 1:9e821e640117 128
fmanzano_dtk 1:9e821e640117 129
fmanzano_dtk 1:9e821e640117 130 /**
fmanzano_dtk 1:9e821e640117 131 * @brief
fmanzano_dtk 1:9e821e640117 132 * Variables locales
fmanzano_dtk 1:9e821e640117 133 */
fmanzano_dtk 1:9e821e640117 134 const char TCA_ID_FP_WORKING_STATUS[] = "TCA|111|";
fmanzano_dtk 1:9e821e640117 135 const char TCA_ID_FP_SERVER_ADD[] = "TCA|112|";
fmanzano_dtk 1:9e821e640117 136 const char TCA_ID_FP_ENROLL_CNT[] = "TCA|114|";
fmanzano_dtk 1:9e821e640117 137 const char TCA_ID_FP_SERVER_DEL[] = "TCA|115|";
fmanzano_dtk 1:9e821e640117 138 const char TCA_ID_IDLE_SHUTDOWN[] = "TCA|123|";
fmanzano_dtk 1:9e821e640117 139 const char TCA_ID_FORCE_SEATBELT[] = "TCA|126|";
fmanzano_dtk 1:9e821e640117 140 const char TCA_ID_FORCE_IDLE_SHUTDOWN[] = "TCA|127|";
fmanzano_dtk 1:9e821e640117 141 const char TCA_ID_RAIN_SENSOR_ENA[] = "TCA|128|";
fmanzano_dtk 1:9e821e640117 142 const char TCA_ID_SEATBELT_READ_ENA[] = "TCA|129|";
fmanzano_dtk 1:9e821e640117 143 const char TCA_ID_VOLUME_SET[] = "TCA|130|";
fmanzano_dtk 1:9e821e640117 144 const char TCA_ID_QUERY_SPEED_LIMIT[] = "TCA|131|";
fmanzano_dtk 1:9e821e640117 145 const char TCA_ID_QUERY_IDLE_TIMER[] = "TCA|132|";
fmanzano_dtk 1:9e821e640117 146 const char TCA_ID_IDLE_REMINDER[] = "TCA|133|2";
fmanzano_dtk 1:9e821e640117 147 const char TCA_ID_IDLE_REMINDER_ENA[] = "TCA|133|1";
fmanzano_dtk 1:9e821e640117 148 const char TCA_ID_IDLE_REMINDER_DIS[] = "TCA|133|0";
fmanzano_dtk 1:9e821e640117 149 const char TCA_ID_SAFETY_TIP_REMINDER[] = "TCA|134|2";
fmanzano_dtk 1:9e821e640117 150 const char TCA_ID_SAFETY_TIP_ENABLE[] = "TCA|134|1";
fmanzano_dtk 1:9e821e640117 151 const char TCA_ID_SAFETY_TIP_DISABLE[] = "TCA|134|0";
fmanzano_dtk 1:9e821e640117 152 const char TCA_ID_QUERY_SAFETY_TIP[] = "TCA|136|";
fmanzano_dtk 1:9e821e640117 153 const char TCA_ID_Q_FINGERPRINT_STATUS[] = "TCA|137|";
fmanzano_dtk 1:9e821e640117 154 const char TCA_ID_Q_RAINSENSOR_STATUS[] = "TCA|138|";
fmanzano_dtk 1:9e821e640117 155 const char TCA_ID_Q_IDLE_SHUTDOWN_ST[] = "TCA|139|";
fmanzano_dtk 1:9e821e640117 156 const char TCA_ID_Q_FORCE_SEATBELT_ST[] = "TCA|140|";
fmanzano_dtk 1:9e821e640117 157 const char TCA_ID_Q_VOLUME_LEVEL[] = "TCA|141|";
fmanzano_dtk 1:9e821e640117 158 const char TCA_ID_CHECK_ENROLLED_ID[] = "TCA|142|";
fmanzano_dtk 1:9e821e640117 159 const char TCA_ID_HARDWARE_VERSION[] = "TCA|143|";
fmanzano_dtk 1:9e821e640117 160 const char TCA_ID_FIRMWARE_VERSION[] = "TCA|144|";
fmanzano_dtk 1:9e821e640117 161 const char TCA_ID_DIN_CONFIGURATION[] = "TCA|145|";
fmanzano_dtk 1:9e821e640117 162 const char TCA_ID_Q_RAIN_SAMPLE_TIMER[] = "TCA|146|";
fmanzano_dtk 1:9e821e640117 163 const char TCA_ID_FP_OVERRIDE_ENABLE[] = "TCA|147|1";
fmanzano_dtk 1:9e821e640117 164 const char TCA_ID_FP_OVERRIDE_DISABLE[] = "TCA|147|0";
fmanzano_dtk 1:9e821e640117 165 const char TCA_ID_Q_FP_OVERRIDE[] = "TCA|148|";
fmanzano_dtk 1:9e821e640117 166 const char TCA_ID_GEO_WARNING_DISABLE[] = "TCA|135|0";
fmanzano_dtk 1:9e821e640117 167 const char TCA_ID_GEO_WARNING_ENABLE[] = "TCA|135|1";
fmanzano_dtk 1:9e821e640117 168 const char TCA_ID_GEO_WARNING_QUERY_OFF[] = "TCA|135|2";
fmanzano_dtk 1:9e821e640117 169 const char TCA_ID_GEO_WARNING_QUERY_ON[] = "TCA|135|3";
fmanzano_dtk 1:9e821e640117 170 const char TCA_ID_GEO_WARNING_GETIN[] = "TCA|151|0;";
fmanzano_dtk 1:9e821e640117 171 const char TCA_ID_GEO_WARNING_EVENT[] = "TCA|151|1;";
fmanzano_dtk 1:9e821e640117 172 const char TCA_ID_GEO_WARNING_GETOUT[] = "TCA|151|2;";
fmanzano_dtk 1:9e821e640117 173 const char TCA_ID_RAIN_SILENT_MODE_ENA[] = "TCA|152|1";
fmanzano_dtk 1:9e821e640117 174 const char TCA_ID_RAIN_SILENT_MODE_DIS[] = "TCA|152|0";
fmanzano_dtk 1:9e821e640117 175 const char TCA_ID_RAIN_SILENT_MODE_Q[] = "TCA|153|";
fmanzano_dtk 1:9e821e640117 176 const char TCA_ID_BLE_AUTORESET_DIS[] = "TCA|155|0";
fmanzano_dtk 1:9e821e640117 177 const char TCA_ID_BLE_AUTORESET_ENA[] = "TCA|155|1";
fmanzano_dtk 1:9e821e640117 178 const char TCA_ID_BLE_AUTORESET_qDIS[] = "TCA|156|0,";
fmanzano_dtk 1:9e821e640117 179 const char TCA_ID_BLE_AUTORESET_qENA[] = "TCA|156|1,";
fmanzano_dtk 1:9e821e640117 180 const char TCA_ID_IDLE_REMINDER_TIME[] = "TCA|158|";
fmanzano_dtk 1:9e821e640117 181 // cinturones individuales
fmanzano_dtk 1:9e821e640117 182 const char TCA_ID_PILOT_BUCKLE_NO[] = "TCA|145|2";
fmanzano_dtk 1:9e821e640117 183 const char TCA_ID_PILOT_BUCKLE_NC[] = "TCA|145|3";
fmanzano_dtk 1:9e821e640117 184 const char TCA_ID_COPILOT_BUCKLE_NO[] = "TCA|145|4";
fmanzano_dtk 1:9e821e640117 185 const char TCA_ID_COPILOT_BUCKLE_NC[] = "TCA|145|5";
fmanzano_dtk 1:9e821e640117 186 const char TCA_ID_CREW_BUCKLE_NO[] = "TCA|145|6";
fmanzano_dtk 1:9e821e640117 187 const char TCA_ID_CREW_BUCKLE_NC[] = "TCA|145|7";
fmanzano_dtk 1:9e821e640117 188
fmanzano_dtk 1:9e821e640117 189 const char FMU_ENGINE_LOCK[] = "setdigout 0?? ? ? ? ? ? ?";
fmanzano_dtk 1:9e821e640117 190 const char FMU_ENGINE_UNLOCK[] = "setdigout 1?? ? ? ? ? ? ?";
fmanzano_dtk 1:9e821e640117 191 char fmu_buffer[64];
fmanzano_dtk 1:9e821e640117 192 long longitud_huella = 498;
fmanzano_dtk 1:9e821e640117 193 bool trama_con_huella = false;
fmanzano_dtk 1:9e821e640117 194 float wait_idle_shutdown;
fmanzano_dtk 1:9e821e640117 195 float wait_idle_reminder;
fmanzano_dtk 1:9e821e640117 196 int tipo_trama_entrante = 0;
fmanzano_dtk 1:9e821e640117 197 int resultado = 0;
fmanzano_dtk 1:9e821e640117 198 int consultar_ID_FP = 0;
fmanzano_dtk 1:9e821e640117 199 int enrolado = -1;
fmanzano_dtk 1:9e821e640117 200 int id_geozone = 0;
fmanzano_dtk 1:9e821e640117 201
fmanzano_dtk 5:07720e3f99d2 202 // Variables externas
fmanzano_dtk 5:07720e3f99d2 203 extern const char hardware_version[];
fmanzano_dtk 5:07720e3f99d2 204 extern const char firmware_version[];
fmanzano_dtk 5:07720e3f99d2 205 extern const char release_date[];
fmanzano_dtk 5:07720e3f99d2 206
fmanzano_dtk 5:07720e3f99d2 207
fmanzano_dtk 1:9e821e640117 208
fmanzano_dtk 1:9e821e640117 209 /**
fmanzano_dtk 1:9e821e640117 210 * @brief
fmanzano_dtk 1:9e821e640117 211 *
fmanzano_dtk 1:9e821e640117 212 */
fmanzano_dtk 1:9e821e640117 213 void activate_idle_shutdown() {
fmanzano_dtk 1:9e821e640117 214 flag_idle_force_shutdown = true;
fmanzano_dtk 1:9e821e640117 215 }
fmanzano_dtk 1:9e821e640117 216
fmanzano_dtk 1:9e821e640117 217 void activate_idle_reminder() {
fmanzano_dtk 1:9e821e640117 218 flag_idle_reminder = true;
fmanzano_dtk 1:9e821e640117 219 }
fmanzano_dtk 1:9e821e640117 220
fmanzano_dtk 1:9e821e640117 221 void queryRG9(){
fmanzano_dtk 1:9e821e640117 222 flag_query_rain_sensor = true;
fmanzano_dtk 1:9e821e640117 223 }
fmanzano_dtk 1:9e821e640117 224
fmanzano_dtk 1:9e821e640117 225 void BLE_reset() { // Aplicar reset a módulo BLE
fmanzano_dtk 1:9e821e640117 226 out2_ble_reset = true;
fmanzano_dtk 1:9e821e640117 227 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 228 myPC_debug.printf("\r\nBLE - Reset\r\n");
fmanzano_dtk 1:9e821e640117 229 #endif
fmanzano_dtk 1:9e821e640117 230 wait_ms(BLE_RESET_PULSE_WIDTH);
fmanzano_dtk 1:9e821e640117 231 out2_ble_reset = false;
fmanzano_dtk 1:9e821e640117 232 }
fmanzano_dtk 1:9e821e640117 233
fmanzano_dtk 1:9e821e640117 234
fmanzano_dtk 1:9e821e640117 235 /**
fmanzano_dtk 1:9e821e640117 236 * @brief
fmanzano_dtk 1:9e821e640117 237 *
fmanzano_dtk 1:9e821e640117 238 */
fmanzano_dtk 1:9e821e640117 239 void exe_idle_shutdown() {
fmanzano_dtk 1:9e821e640117 240 flag_idle_force_shutdown = false;
fmanzano_dtk 1:9e821e640117 241 tick_idle_shutdown.detach();
fmanzano_dtk 1:9e821e640117 242 if (functionality_idle_shutdown) {
fmanzano_dtk 1:9e821e640117 243 if (ignition) {
fmanzano_dtk 1:9e821e640117 244 tx_fmu130_command(FMU_ENGINE_LOCK, &avl_uart);
fmanzano_dtk 1:9e821e640117 245 jq8400_addQueue(VOICE_IDLE_ENGINE_SHUTDOWN);
fmanzano_dtk 1:9e821e640117 246 sprintf(fmu_buffer, "%s1", TCA_ID_IDLE_SHUTDOWN);
fmanzano_dtk 1:9e821e640117 247 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 248 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 249 myPC_debug.printf("IDLE - Apagado por exceso de Ralenti\r\n");
fmanzano_dtk 1:9e821e640117 250 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 251 #endif
fmanzano_dtk 1:9e821e640117 252 } else {
fmanzano_dtk 1:9e821e640117 253 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 254 myPC_debug.printf("IDLE - Ignicion OFF - No se envia apagado.\r\n");
fmanzano_dtk 1:9e821e640117 255 #endif
fmanzano_dtk 1:9e821e640117 256 }
fmanzano_dtk 1:9e821e640117 257 }
fmanzano_dtk 1:9e821e640117 258 }
fmanzano_dtk 1:9e821e640117 259
fmanzano_dtk 1:9e821e640117 260 void exe_idle_reminder() {
fmanzano_dtk 1:9e821e640117 261 flag_idle_reminder = false;
fmanzano_dtk 1:9e821e640117 262 jq8400_addQueue(VOICE_IDLE_REMINDER);
fmanzano_dtk 1:9e821e640117 263 sprintf(fmu_buffer, "%s", TCA_ID_IDLE_REMINDER);
fmanzano_dtk 1:9e821e640117 264 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 265 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 266 myPC_debug.printf("IDLE - Recordatorio por exceso de Ralenti\r\n");
fmanzano_dtk 1:9e821e640117 267 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 268 #endif
fmanzano_dtk 1:9e821e640117 269 }
fmanzano_dtk 1:9e821e640117 270
fmanzano_dtk 1:9e821e640117 271 /**
fmanzano_dtk 1:9e821e640117 272 * @brief
fmanzano_dtk 1:9e821e640117 273 *
fmanzano_dtk 1:9e821e640117 274 */
fmanzano_dtk 1:9e821e640117 275 void boot_message() {
fmanzano_dtk 1:9e821e640117 276 sprintf(fmu_buffer, "TCA|100|%s", firmware_version);
fmanzano_dtk 1:9e821e640117 277 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 278 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 279 myPC_debug.printf("\r\n\r\nDETEKTOR I+D. TEAM CAPTURA\r\n");
fmanzano_dtk 1:9e821e640117 280 myPC_debug.printf("Proyecto ABInBev PA\r\n");
fmanzano_dtk 1:9e821e640117 281 myPC_debug.printf("Version %s - %s\r\n\r\n", firmware_version, release_date);
fmanzano_dtk 1:9e821e640117 282 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 283 #endif
fmanzano_dtk 1:9e821e640117 284 }
fmanzano_dtk 1:9e821e640117 285
fmanzano_dtk 1:9e821e640117 286
fmanzano_dtk 1:9e821e640117 287 /**
fmanzano_dtk 1:9e821e640117 288 * @brief
fmanzano_dtk 1:9e821e640117 289 *
fmanzano_dtk 1:9e821e640117 290 */
fmanzano_dtk 1:9e821e640117 291 void process_FMU130() {
fmanzano_dtk 1:9e821e640117 292 memset(fmu_buffer, '\0', sizeof(fmu_buffer));
fmanzano_dtk 1:9e821e640117 293 memset(fmu130_payload, '\0', sizeof(fmu130_payload));
fmanzano_dtk 1:9e821e640117 294
fmanzano_dtk 1:9e821e640117 295 /**
fmanzano_dtk 1:9e821e640117 296 * @brief
fmanzano_dtk 1:9e821e640117 297 *
fmanzano_dtk 1:9e821e640117 298 */
fmanzano_dtk 1:9e821e640117 299 incoming_bytes = read_avl_uart(&avl_uart, fmu130_payload);
fmanzano_dtk 1:9e821e640117 300
fmanzano_dtk 1:9e821e640117 301 if (incoming_bytes > 0) {
fmanzano_dtk 1:9e821e640117 302 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 303 myPC_debug.printf("\r\nBLE - Bytes entrantes: %d\r\n", incoming_bytes);
fmanzano_dtk 1:9e821e640117 304 #endif
fmanzano_dtk 1:9e821e640117 305 tipo_trama_entrante = identify_fmu130_payload(fmu130_payload);
fmanzano_dtk 1:9e821e640117 306
fmanzano_dtk 1:9e821e640117 307 /**
fmanzano_dtk 1:9e821e640117 308 * @brief Construct a new switch object
fmanzano_dtk 1:9e821e640117 309 *
fmanzano_dtk 1:9e821e640117 310 */
fmanzano_dtk 1:9e821e640117 311 switch (tipo_trama_entrante) {
fmanzano_dtk 1:9e821e640117 312 case TRAMA_AVL_FMU130 :
fmanzano_dtk 1:9e821e640117 313 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 314 myPC_debug.printf("BLE - Evento AVL\r\n");
fmanzano_dtk 1:9e821e640117 315 #endif
fmanzano_dtk 1:9e821e640117 316 if (verify_fmu130_payload(fmu130_payload)) {
fmanzano_dtk 1:9e821e640117 317 parse_fmu130_payload(fmu130_payload, avl_fmu130_header, avl_fmu130_imei, &avl_fmu130_id, &avl_fmu130_status);
fmanzano_dtk 1:9e821e640117 318 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 319 myPC_debug.printf("BLE - FMU_ID:%d Status:%d\r\n", avl_fmu130_id, avl_fmu130_status);
fmanzano_dtk 1:9e821e640117 320 #endif
fmanzano_dtk 1:9e821e640117 321 switch (avl_fmu130_id) {
fmanzano_dtk 1:9e821e640117 322 case AVLID_OVERSPEED: // Exceso de velocidad
fmanzano_dtk 1:9e821e640117 323 if (rg9_raining) {
fmanzano_dtk 1:9e821e640117 324 if (functionality_rainSensor_silentMode) {
fmanzano_dtk 1:9e821e640117 325 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 326 myPC_debug.printf("BLE - Modo Silencioso Activado - No se notifica\r\n");
fmanzano_dtk 1:9e821e640117 327 #endif
fmanzano_dtk 1:9e821e640117 328 //
fmanzano_dtk 1:9e821e640117 329 } else {
fmanzano_dtk 1:9e821e640117 330 jq8400_addQueue(VOICE_OVERSPEED_ALERT_WET);
fmanzano_dtk 1:9e821e640117 331 }
fmanzano_dtk 1:9e821e640117 332 } else {
fmanzano_dtk 1:9e821e640117 333 jq8400_addQueue(VOICE_OVERSPEED_ALERT);
fmanzano_dtk 1:9e821e640117 334 }
fmanzano_dtk 1:9e821e640117 335 break;
fmanzano_dtk 1:9e821e640117 336
fmanzano_dtk 1:9e821e640117 337 case AVLID_TOWING: // Movimiento ilegal
fmanzano_dtk 1:9e821e640117 338 // No se notifica
fmanzano_dtk 1:9e821e640117 339 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 340 myPC_debug.printf("BLE - Vehiculo en Grua - No se notifica\r\n");
fmanzano_dtk 1:9e821e640117 341 #endif
fmanzano_dtk 1:9e821e640117 342 break;
fmanzano_dtk 1:9e821e640117 343
fmanzano_dtk 1:9e821e640117 344 case AVLID_JAMMING: // Jamming
fmanzano_dtk 1:9e821e640117 345 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 346 myPC_debug.printf("BLE - Deteccion de Jamming - No se notifica\r\n");
fmanzano_dtk 1:9e821e640117 347 #endif
fmanzano_dtk 1:9e821e640117 348 break;
fmanzano_dtk 1:9e821e640117 349
fmanzano_dtk 1:9e821e640117 350 case AVLID_IDLE: // Ralentí
fmanzano_dtk 1:9e821e640117 351 if (avl_fmu130_status == 1) {
fmanzano_dtk 1:9e821e640117 352 if (estado_actual_ignicion) {
fmanzano_dtk 1:9e821e640117 353 jq8400_addQueue(VOICE_IDLE_TIME_WARNING);
fmanzano_dtk 1:9e821e640117 354 if (functionality_idle_shutdown) {
fmanzano_dtk 1:9e821e640117 355 tick_idle_shutdown.attach(&activate_idle_shutdown, (wait_idle_shutdown + 6.0)); // 6.0 = Duración de audio de ralentí
fmanzano_dtk 1:9e821e640117 356 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 357 myPC_debug.printf("Apagar por ralenti en %.1f seg.\r\n", wait_idle_shutdown);
fmanzano_dtk 1:9e821e640117 358 #endif
fmanzano_dtk 1:9e821e640117 359 }
fmanzano_dtk 1:9e821e640117 360 if (functionality_idle_reminder) {
fmanzano_dtk 1:9e821e640117 361 tick_idle_reminder.attach(&activate_idle_reminder,(wait_idle_reminder + 0.0));
fmanzano_dtk 1:9e821e640117 362 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 363 myPC_debug.printf("Recordatorio por ralenti en %.1f seg.\r\n", wait_idle_reminder);
fmanzano_dtk 1:9e821e640117 364 #endif
fmanzano_dtk 1:9e821e640117 365 }
fmanzano_dtk 1:9e821e640117 366 } else {
fmanzano_dtk 1:9e821e640117 367 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 368 myPC_debug.printf("BLE - Ignicion OFF no se notifica\r\n");
fmanzano_dtk 1:9e821e640117 369 #endif
fmanzano_dtk 1:9e821e640117 370 }
fmanzano_dtk 1:9e821e640117 371 } else if (avl_fmu130_status == 0) {
fmanzano_dtk 1:9e821e640117 372 tick_idle_shutdown.detach();
fmanzano_dtk 1:9e821e640117 373 tick_idle_reminder.detach();
fmanzano_dtk 1:9e821e640117 374 }
fmanzano_dtk 1:9e821e640117 375 break;
fmanzano_dtk 1:9e821e640117 376
fmanzano_dtk 1:9e821e640117 377 case AVLID_HARSH_BEHAVIOUR: // Hábitos de manejo
fmanzano_dtk 1:9e821e640117 378 if (avl_fmu130_status == 1){
fmanzano_dtk 1:9e821e640117 379 jq8400_addQueue(VOICE_HARSH_ACCELERATION);
fmanzano_dtk 1:9e821e640117 380 } else if (avl_fmu130_status == 2) {
fmanzano_dtk 1:9e821e640117 381 jq8400_addQueue(VOICE_HARSH_BREAKING);
fmanzano_dtk 1:9e821e640117 382 } else if (avl_fmu130_status == 3) {
fmanzano_dtk 1:9e821e640117 383 jq8400_addQueue(VOICE_SHARP_CORNERING);
fmanzano_dtk 1:9e821e640117 384 }
fmanzano_dtk 1:9e821e640117 385 break;
fmanzano_dtk 1:9e821e640117 386
fmanzano_dtk 1:9e821e640117 387 case AVLID_WARNING_SPEED: // Pre alerta de Exceso de velocidad
fmanzano_dtk 1:9e821e640117 388 if (rg9_raining) {
fmanzano_dtk 1:9e821e640117 389 if (functionality_rainSensor_silentMode) {
fmanzano_dtk 1:9e821e640117 390 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 391 myPC_debug.printf("BLE - Modo Silencioso Activado - No se notifica\r\n");
fmanzano_dtk 1:9e821e640117 392 #endif
fmanzano_dtk 1:9e821e640117 393 } else {
fmanzano_dtk 1:9e821e640117 394 jq8400_addQueue(VOICE_WARNING_OVERSPEED_WET);
fmanzano_dtk 1:9e821e640117 395 }
fmanzano_dtk 1:9e821e640117 396 } else {
fmanzano_dtk 1:9e821e640117 397 jq8400_addQueue(VOICE_WARNING_OVERSPEED);
fmanzano_dtk 1:9e821e640117 398 }
fmanzano_dtk 1:9e821e640117 399 break;
fmanzano_dtk 1:9e821e640117 400
fmanzano_dtk 1:9e821e640117 401 case AVLID_CRASH: // Colisión
fmanzano_dtk 1:9e821e640117 402 jq8400_addQueue(VOICE_CRASH_DETECTION);
fmanzano_dtk 1:9e821e640117 403 break;
fmanzano_dtk 1:9e821e640117 404
fmanzano_dtk 1:9e821e640117 405 default:
fmanzano_dtk 1:9e821e640117 406 // ID no identificado
fmanzano_dtk 1:9e821e640117 407 break;
fmanzano_dtk 1:9e821e640117 408 }
fmanzano_dtk 1:9e821e640117 409
fmanzano_dtk 1:9e821e640117 410 } else {
fmanzano_dtk 1:9e821e640117 411 // Trama invalida
fmanzano_dtk 1:9e821e640117 412 }
fmanzano_dtk 1:9e821e640117 413 break;
fmanzano_dtk 1:9e821e640117 414
fmanzano_dtk 1:9e821e640117 415
fmanzano_dtk 1:9e821e640117 416 case TRAMA_SERVIDOR:
fmanzano_dtk 1:9e821e640117 417 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 418 myPC_debug.printf("BLE - Comando Servidor\r\n");
fmanzano_dtk 1:9e821e640117 419 myPC_debug.printf("RAW DATA:\r\n%s\r\n\r\n", fmu130_payload);
fmanzano_dtk 1:9e821e640117 420 #endif
fmanzano_dtk 1:9e821e640117 421 if (verify_finger_payload(fmu130_payload)) {
fmanzano_dtk 1:9e821e640117 422 /* DESHABILITADA LA FUNCIÓN DE SLEEP EN EL LECTOR
fmanzano_dtk 1:9e821e640117 423 if (flag_fingerprint_Sleep) {
fmanzano_dtk 1:9e821e640117 424 fingerprint.WakeUp();
fmanzano_dtk 1:9e821e640117 425 flag_fingerprint_Sleep = false;
fmanzano_dtk 1:9e821e640117 426 //myPC_debug.printf("BLE - GT521Fx@WakeUp\r\n");
fmanzano_dtk 1:9e821e640117 427 }
fmanzano_dtk 1:9e821e640117 428 */
fmanzano_dtk 1:9e821e640117 429 trama_con_huella = parse_finger_payload(fmu130_payload, fingerprint_cmd, &fingerprint_id, fingerprint_hex);
fmanzano_dtk 1:9e821e640117 430 if (trama_con_huella) {
fmanzano_dtk 1:9e821e640117 431 fingerprint_HEX2CHAR(fingerprint_hex, fingerprint_asc);
fmanzano_dtk 1:9e821e640117 432 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 433 myPC_debug.printf("BLE - Huella HEX:\r\n%s\r\n", fingerprint_hex);
fmanzano_dtk 1:9e821e640117 434 #endif
fmanzano_dtk 1:9e821e640117 435 }
fmanzano_dtk 1:9e821e640117 436 bluetooth_cmd_id = identify_server_cmd(fingerprint_cmd);
fmanzano_dtk 1:9e821e640117 437
fmanzano_dtk 1:9e821e640117 438 switch (bluetooth_cmd_id) {
fmanzano_dtk 1:9e821e640117 439 /** ********************************
fmanzano_dtk 1:9e821e640117 440 * COMANDOS DE NOTIFICACION DE GEOCERCAS
fmanzano_dtk 1:9e821e640117 441 * ******************************** */
fmanzano_dtk 1:9e821e640117 442 case CMD_GEO_WARNING_GETIN:
fmanzano_dtk 1:9e821e640117 443 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 444 myPC_debug.printf("BLE - Notificacion de Entrada a Geocerca Controlada\r\n");
fmanzano_dtk 1:9e821e640117 445 #endif
fmanzano_dtk 1:9e821e640117 446 //
fmanzano_dtk 1:9e821e640117 447 if (functionality_geo_warning) {
fmanzano_dtk 1:9e821e640117 448 id_geozone = fingerprint_id;
fmanzano_dtk 1:9e821e640117 449 jq8400_addQueue(id_geozone);
fmanzano_dtk 1:9e821e640117 450 sprintf(fmu_buffer, "%s%d", TCA_ID_GEO_WARNING_GETIN, id_geozone);
fmanzano_dtk 1:9e821e640117 451 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 452 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 453 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 454 #endif
fmanzano_dtk 1:9e821e640117 455 } else {
fmanzano_dtk 1:9e821e640117 456 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 457 myPC_debug.printf("BLE - Funcion deshabilitada. No se notifica Entrada de Geocerca\r\n");
fmanzano_dtk 1:9e821e640117 458 #endif
fmanzano_dtk 1:9e821e640117 459 }
fmanzano_dtk 1:9e821e640117 460 break;
fmanzano_dtk 1:9e821e640117 461
fmanzano_dtk 1:9e821e640117 462 case CMD_GEO_WARNING_GETOUT:
fmanzano_dtk 1:9e821e640117 463 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 464 myPC_debug.printf("BLE - Notificacion de Salida de Geocerca Controlada\r\n");
fmanzano_dtk 1:9e821e640117 465 #endif
fmanzano_dtk 1:9e821e640117 466 if (functionality_geo_warning) {
fmanzano_dtk 1:9e821e640117 467 id_geozone = fingerprint_id;
fmanzano_dtk 1:9e821e640117 468 jq8400_addQueue(id_geozone);
fmanzano_dtk 1:9e821e640117 469 sprintf(fmu_buffer, "%s%d", TCA_ID_GEO_WARNING_GETOUT, id_geozone);
fmanzano_dtk 1:9e821e640117 470 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 471 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 472 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 473 #endif
fmanzano_dtk 1:9e821e640117 474 } else {
fmanzano_dtk 1:9e821e640117 475 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 476 myPC_debug.printf("BLE - Funcion deshabilitada. No se notifica Salida de Geocerca\r\n");
fmanzano_dtk 1:9e821e640117 477 #endif
fmanzano_dtk 1:9e821e640117 478 }
fmanzano_dtk 1:9e821e640117 479 break;
fmanzano_dtk 1:9e821e640117 480
fmanzano_dtk 1:9e821e640117 481 case CMD_GEO_WARNING_EVENT:
fmanzano_dtk 1:9e821e640117 482 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 483
fmanzano_dtk 1:9e821e640117 484 #endif
fmanzano_dtk 1:9e821e640117 485 //myPC_debug.printf("BLE - Notificacion de Evento en Geocerca Controlada\r\n");
fmanzano_dtk 1:9e821e640117 486 if (functionality_geo_warning) {
fmanzano_dtk 1:9e821e640117 487 id_geozone = fingerprint_id;
fmanzano_dtk 1:9e821e640117 488 jq8400_addQueue(id_geozone);
fmanzano_dtk 1:9e821e640117 489 sprintf(fmu_buffer, "%s%d", TCA_ID_GEO_WARNING_EVENT, id_geozone);
fmanzano_dtk 1:9e821e640117 490 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 491
fmanzano_dtk 1:9e821e640117 492 #endif
fmanzano_dtk 1:9e821e640117 493 //myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 494 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 495
fmanzano_dtk 1:9e821e640117 496 } else {
fmanzano_dtk 1:9e821e640117 497 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 498
fmanzano_dtk 1:9e821e640117 499 #endif
fmanzano_dtk 1:9e821e640117 500 //myPC_debug.printf("BLE - Funcion deshabilitada. No se notifica Evento de Geocerca\r\n");
fmanzano_dtk 1:9e821e640117 501 }
fmanzano_dtk 1:9e821e640117 502 break;
fmanzano_dtk 1:9e821e640117 503
fmanzano_dtk 1:9e821e640117 504
fmanzano_dtk 1:9e821e640117 505
fmanzano_dtk 1:9e821e640117 506 /** ********************************
fmanzano_dtk 1:9e821e640117 507 * COMANDOS DE LECTOR DE HUELLA
fmanzano_dtk 1:9e821e640117 508 * ******************************** */
fmanzano_dtk 1:9e821e640117 509 case CMD_FINGER_ADD:
fmanzano_dtk 1:9e821e640117 510 out3_gt521fx = out4_gt521fx = finterprint_flag_working = true;
fmanzano_dtk 1:9e821e640117 511 wait_us(500000);
fmanzano_dtk 1:9e821e640117 512 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 513 myPC_debug.printf("BLE - OUT3:TRUE\r\n");
fmanzano_dtk 1:9e821e640117 514 #endif
fmanzano_dtk 1:9e821e640117 515 fingerprint_flag_poweroff = false;
fmanzano_dtk 1:9e821e640117 516 FP_Open();
fmanzano_dtk 1:9e821e640117 517 resultado = FP_SetTemplate(fingerprint_id, fingerprint_asc);
fmanzano_dtk 1:9e821e640117 518 if (resultado == 0) {
fmanzano_dtk 1:9e821e640117 519 sprintf(fmu_buffer, "%s%d", TCA_ID_FP_SERVER_ADD, fingerprint_id);
fmanzano_dtk 1:9e821e640117 520 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 521 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 522 myPC_debug.printf("BLE - Huella agregada exitosamente\r\n");
fmanzano_dtk 1:9e821e640117 523 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 524 #endif
fmanzano_dtk 1:9e821e640117 525 } else {
fmanzano_dtk 1:9e821e640117 526 sprintf(fmu_buffer, "%s%d", TCA_ID_FP_SERVER_ADD, resultado);
fmanzano_dtk 1:9e821e640117 527 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 528 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 529 myPC_debug.printf("BLE - Error al agregar huella\r\n");
fmanzano_dtk 1:9e821e640117 530 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 531 #endif
fmanzano_dtk 1:9e821e640117 532 }
fmanzano_dtk 1:9e821e640117 533 FP_Close();
fmanzano_dtk 1:9e821e640117 534 wait_us(1000000);
fmanzano_dtk 1:9e821e640117 535 fingerprint_flag_poweroff = true;
fmanzano_dtk 1:9e821e640117 536 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 537 myPC_debug.printf("BLE - Pendiente apagar FP GT521Fx...\r\n");
fmanzano_dtk 1:9e821e640117 538 #endif
fmanzano_dtk 1:9e821e640117 539 break;
fmanzano_dtk 1:9e821e640117 540
fmanzano_dtk 1:9e821e640117 541 case CMD_FINGER_DELETE:
fmanzano_dtk 1:9e821e640117 542 out3_gt521fx = out4_gt521fx = finterprint_flag_working = true;
fmanzano_dtk 1:9e821e640117 543 wait_us(500000);
fmanzano_dtk 1:9e821e640117 544 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 545 myPC_debug.printf("BLE - OUT3:TRUE\r\n");
fmanzano_dtk 1:9e821e640117 546 #endif
fmanzano_dtk 1:9e821e640117 547 fingerprint_flag_poweroff = false;
fmanzano_dtk 1:9e821e640117 548 FP_Open();
fmanzano_dtk 1:9e821e640117 549 if (fingerprint_id == 3000) {
fmanzano_dtk 1:9e821e640117 550 resultado = FP_DeleteAll();
fmanzano_dtk 1:9e821e640117 551 } else {
fmanzano_dtk 1:9e821e640117 552 resultado = FP_DeleteID(fingerprint_id);
fmanzano_dtk 1:9e821e640117 553 }
fmanzano_dtk 1:9e821e640117 554 if (resultado >= 0) {
fmanzano_dtk 1:9e821e640117 555 sprintf(fmu_buffer, "%s%d", TCA_ID_FP_SERVER_DEL, fingerprint_id);
fmanzano_dtk 1:9e821e640117 556 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 557 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 558 myPC_debug.printf("BLE - Huella eliminada exitosamente\r\n");
fmanzano_dtk 1:9e821e640117 559 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 560 #endif
fmanzano_dtk 1:9e821e640117 561 } else {
fmanzano_dtk 1:9e821e640117 562 sprintf(fmu_buffer, "%s%d", TCA_ID_FP_SERVER_DEL, resultado);
fmanzano_dtk 1:9e821e640117 563 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 564 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 565 myPC_debug.printf("BLE - Error al eliminar huella\r\n");
fmanzano_dtk 1:9e821e640117 566 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 567 #endif
fmanzano_dtk 1:9e821e640117 568 }
fmanzano_dtk 1:9e821e640117 569 FP_Close();
fmanzano_dtk 1:9e821e640117 570 wait_us(1000000);
fmanzano_dtk 1:9e821e640117 571 fingerprint_flag_poweroff = true;
fmanzano_dtk 1:9e821e640117 572 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 573 myPC_debug.printf("BLE - Pendiente apagar FP GT521Fx...\r\n");
fmanzano_dtk 1:9e821e640117 574 #endif
fmanzano_dtk 1:9e821e640117 575 break;
fmanzano_dtk 1:9e821e640117 576
fmanzano_dtk 1:9e821e640117 577 case CMD_FINGER_ENABLE:
fmanzano_dtk 1:9e821e640117 578 jq8400_addQueue(VOICE_functionality_fingerprint_reader);
fmanzano_dtk 1:9e821e640117 579 functionality_fingerprint_reader = true;
fmanzano_dtk 1:9e821e640117 580 fingerprint_remotly_disable = false;
fmanzano_dtk 1:9e821e640117 581 ep.write(eprom_AddressArray[EE_Address_FINGERPRINT], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 582 ep.write(eprom_AddressArray[EE_Address_FINGERPRINT_RE], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 583 sprintf(fmu_buffer, "%s1", TCA_ID_FP_WORKING_STATUS);
fmanzano_dtk 1:9e821e640117 584 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 585 FP_Flush();
fmanzano_dtk 1:9e821e640117 586 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 587 myPC_debug.printf("BLE - Lector Huella Habilitado\r\n");
fmanzano_dtk 1:9e821e640117 588 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 589 #endif
fmanzano_dtk 1:9e821e640117 590 break;
fmanzano_dtk 1:9e821e640117 591
fmanzano_dtk 1:9e821e640117 592 case CMD_FINGER_DISABLE:
fmanzano_dtk 1:9e821e640117 593 jq8400_addQueue(VOICE_FINGERPRINT_DISABLE);
fmanzano_dtk 1:9e821e640117 594 tx_fmu130_command(FMU_ENGINE_UNLOCK, &avl_uart);
fmanzano_dtk 1:9e821e640117 595 out1_fingerprint = 1;
fmanzano_dtk 1:9e821e640117 596 wait_us(1000000);
fmanzano_dtk 1:9e821e640117 597 out1_fingerprint = 0;
fmanzano_dtk 1:9e821e640117 598 functionality_fingerprint_reader = false;
fmanzano_dtk 1:9e821e640117 599 fingerprint_remotly_disable = true;
fmanzano_dtk 1:9e821e640117 600 ep.write(eprom_AddressArray[EE_Address_FINGERPRINT], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 601 ep.write(eprom_AddressArray[EE_Address_FINGERPRINT_RE], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 602 sprintf(fmu_buffer, "%s0", TCA_ID_FP_WORKING_STATUS);
fmanzano_dtk 1:9e821e640117 603 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 604 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 605 myPC_debug.printf("BLE - Lector Huella Deshabilitado\r\n");
fmanzano_dtk 1:9e821e640117 606 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 607 #endif
fmanzano_dtk 1:9e821e640117 608 break;
fmanzano_dtk 1:9e821e640117 609
fmanzano_dtk 1:9e821e640117 610 case CMD_FINGERPRINT_QUERY:
fmanzano_dtk 1:9e821e640117 611 sprintf(fmu_buffer, "%s%d", TCA_ID_Q_FINGERPRINT_STATUS, functionality_fingerprint_reader);
fmanzano_dtk 1:9e821e640117 612 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 613 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 614 myPC_debug.printf("BLE - Consulta Estatus del Lector Biometrico\r\n");
fmanzano_dtk 1:9e821e640117 615 myPC_debug.printf("BLE - Lector Biometrico: %d\r\n", functionality_fingerprint_reader);
fmanzano_dtk 1:9e821e640117 616 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 617 #endif
fmanzano_dtk 1:9e821e640117 618 break;
fmanzano_dtk 1:9e821e640117 619
fmanzano_dtk 1:9e821e640117 620 case CMD_FINGER_ENROLL_CNT:
fmanzano_dtk 1:9e821e640117 621 out3_gt521fx = out4_gt521fx = finterprint_flag_working = true;
fmanzano_dtk 1:9e821e640117 622 wait_us(500000);
fmanzano_dtk 1:9e821e640117 623 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 624 myPC_debug.printf("BLE - OUT3:TRUE\r\n");
fmanzano_dtk 1:9e821e640117 625 #endif
fmanzano_dtk 1:9e821e640117 626 fingerprint_flag_poweroff = false;
fmanzano_dtk 1:9e821e640117 627 FP_Open();
fmanzano_dtk 1:9e821e640117 628 resultado = FP_GetEnrollCount();
fmanzano_dtk 1:9e821e640117 629 sprintf(fmu_buffer, "%s%d", TCA_ID_FP_ENROLL_CNT, resultado);
fmanzano_dtk 1:9e821e640117 630 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 631 FP_Close();
fmanzano_dtk 1:9e821e640117 632 wait_us(1000000);
fmanzano_dtk 1:9e821e640117 633 fingerprint_flag_poweroff = true;
fmanzano_dtk 1:9e821e640117 634 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 635 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 636 myPC_debug.printf("BLE - Pendiente apagar FP GT521Fx...\r\n");
fmanzano_dtk 1:9e821e640117 637 #endif
fmanzano_dtk 1:9e821e640117 638 break;
fmanzano_dtk 1:9e821e640117 639
fmanzano_dtk 1:9e821e640117 640 case CMD_CHECK_ENROLLED_ID:
fmanzano_dtk 1:9e821e640117 641 out3_gt521fx = out4_gt521fx = finterprint_flag_working= true;
fmanzano_dtk 1:9e821e640117 642 fingerprint_flag_poweroff = false;
fmanzano_dtk 1:9e821e640117 643 wait_us(500000);
fmanzano_dtk 1:9e821e640117 644 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 645 myPC_debug.printf("BLE - OUT3:TRUE\r\n");
fmanzano_dtk 1:9e821e640117 646 #endif
fmanzano_dtk 1:9e821e640117 647
fmanzano_dtk 1:9e821e640117 648 FP_Open();
fmanzano_dtk 1:9e821e640117 649 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 650 myPC_debug.printf("BLE - Consulta de Posicion de Memoria - Lector de Huellas\r\n");
fmanzano_dtk 1:9e821e640117 651
fmanzano_dtk 1:9e821e640117 652 #endif
fmanzano_dtk 1:9e821e640117 653 consultar_ID_FP = fingerprint_id;
fmanzano_dtk 1:9e821e640117 654 enrolado = FP_CheckEnrolled(consultar_ID_FP);
fmanzano_dtk 1:9e821e640117 655 sprintf(fmu_buffer, "%s%d", TCA_ID_CHECK_ENROLLED_ID, enrolado);
fmanzano_dtk 1:9e821e640117 656 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 657 FP_Close();
fmanzano_dtk 1:9e821e640117 658 wait_us(1000000);
fmanzano_dtk 1:9e821e640117 659 fingerprint_flag_poweroff = true;
fmanzano_dtk 1:9e821e640117 660 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 661 myPC_debug.printf("BLE - Posicion de huella %d: %d\r\n", consultar_ID_FP, enrolado);
fmanzano_dtk 1:9e821e640117 662 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 663 myPC_debug.printf("BLE - Pendiente apagar FP GT521Fx...\r\n");
fmanzano_dtk 1:9e821e640117 664 #endif
fmanzano_dtk 1:9e821e640117 665 break;
fmanzano_dtk 1:9e821e640117 666
fmanzano_dtk 1:9e821e640117 667 case CMD_FP_OVERRIDE_ENABLE:
fmanzano_dtk 1:9e821e640117 668 fingerprint_override = true;
fmanzano_dtk 1:9e821e640117 669 ep.write(eprom_AddressArray[EE_Address_OVERRIDE_FP], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 670 sprintf(fmu_buffer, "%s", TCA_ID_FP_OVERRIDE_ENABLE);
fmanzano_dtk 1:9e821e640117 671 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 672 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 673 myPC_debug.printf("BLE - Habilitar Anulacion de Lector de Huella\r\n");
fmanzano_dtk 1:9e821e640117 674 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 675 #endif
fmanzano_dtk 1:9e821e640117 676 break;
fmanzano_dtk 1:9e821e640117 677
fmanzano_dtk 1:9e821e640117 678 case CMD_FP_OVERRIDE_DISABLE:
fmanzano_dtk 1:9e821e640117 679 fingerprint_override = false;
fmanzano_dtk 1:9e821e640117 680 ep.write(eprom_AddressArray[EE_Address_OVERRIDE_FP], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 681 sprintf(fmu_buffer, "%s", TCA_ID_FP_OVERRIDE_DISABLE);
fmanzano_dtk 1:9e821e640117 682 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 683 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 684 myPC_debug.printf("BLE - Deshabilitar Anulacion de Lector de Huella\r\n");
fmanzano_dtk 1:9e821e640117 685 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 686 #endif
fmanzano_dtk 1:9e821e640117 687 break;
fmanzano_dtk 1:9e821e640117 688
fmanzano_dtk 1:9e821e640117 689 case CMD_FP_OVERRIDE_COUNT:
fmanzano_dtk 1:9e821e640117 690 ep.write(eprom_AddressArray[EE_Address_OVERRIDE_LIMIT], ((uint16_t) fingerprint_id));
fmanzano_dtk 1:9e821e640117 691 fp_override_limit = fingerprint_id;
fmanzano_dtk 1:9e821e640117 692 sprintf(fmu_buffer, "%s%d,%d", TCA_ID_Q_FP_OVERRIDE, fingerprint_override, fp_override_limit);
fmanzano_dtk 1:9e821e640117 693 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 694 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 695 myPC_debug.printf("BLE - Cambio Muestras para Anulacion de Lector de Huella\n");
fmanzano_dtk 1:9e821e640117 696 myPC_debug.printf("BLE - Nuevo valor de Huellas no Autorizadas: %d seg\r\n", fingerprint_id);
fmanzano_dtk 1:9e821e640117 697 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 698 #endif
fmanzano_dtk 1:9e821e640117 699 break;
fmanzano_dtk 1:9e821e640117 700
fmanzano_dtk 1:9e821e640117 701 case CMD_FP_OVERRIDE_QUERY:
fmanzano_dtk 1:9e821e640117 702 sprintf(fmu_buffer, "%s%d,%d", TCA_ID_Q_FP_OVERRIDE, fingerprint_override, fp_override_limit);
fmanzano_dtk 1:9e821e640117 703 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 704 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 705 myPC_debug.printf("BLE - Consulta por Anulacion de Lector de Huella\r\n");
fmanzano_dtk 1:9e821e640117 706 myPC_debug.printf("BLE - Anulacion: %s\r\n", fingerprint_override?"TRUE":"FALSE");
fmanzano_dtk 1:9e821e640117 707 myPC_debug.printf("BLE - Cantidad de No Autorizados: %d\r\n", fp_override_limit);
fmanzano_dtk 1:9e821e640117 708 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 709 #endif
fmanzano_dtk 1:9e821e640117 710 break;
fmanzano_dtk 1:9e821e640117 711
fmanzano_dtk 1:9e821e640117 712
fmanzano_dtk 1:9e821e640117 713 /** ********************************
fmanzano_dtk 1:9e821e640117 714 * COMANDOS DE PARLANTE
fmanzano_dtk 1:9e821e640117 715 * ******************************** */
fmanzano_dtk 1:9e821e640117 716 case CMD_SET_VOLUME:
fmanzano_dtk 1:9e821e640117 717 temp_JQ8400_Volume = fingerprint_id;
fmanzano_dtk 5:07720e3f99d2 718 //writeEE(EE_Address_VOLUME, temp_JQ8400_Volume);
fmanzano_dtk 1:9e821e640117 719 jq8400_setVol(&temp_JQ8400_Volume, &voice_uart);
fmanzano_dtk 1:9e821e640117 720 sprintf(fmu_buffer, "%s%d", TCA_ID_VOLUME_SET, fingerprint_id);
fmanzano_dtk 1:9e821e640117 721 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 722 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 723 myPC_debug.printf("BLE - Volumen %d\r\n",fingerprint_id);
fmanzano_dtk 1:9e821e640117 724 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 725 #endif
fmanzano_dtk 1:9e821e640117 726 break;
fmanzano_dtk 1:9e821e640117 727
fmanzano_dtk 1:9e821e640117 728 case CMD_QUERY_VOLUME_LEVEL:
fmanzano_dtk 1:9e821e640117 729 sprintf(fmu_buffer, "%s%d", TCA_ID_Q_VOLUME_LEVEL, temp_JQ8400_Volume);
fmanzano_dtk 1:9e821e640117 730 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 731 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 732 myPC_debug.printf("BLE - Consulta por el Nivel de Volumen del Parlante\r\n");
fmanzano_dtk 1:9e821e640117 733 myPC_debug.printf("BLE - Nivel de Volumen del Parlante: %d\r\n", temp_JQ8400_Volume);
fmanzano_dtk 1:9e821e640117 734 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 735 #endif
fmanzano_dtk 1:9e821e640117 736 break;
fmanzano_dtk 1:9e821e640117 737
fmanzano_dtk 1:9e821e640117 738
fmanzano_dtk 1:9e821e640117 739
fmanzano_dtk 1:9e821e640117 740 /** ********************************
fmanzano_dtk 1:9e821e640117 741 * COMANDOS DE SENSOR DE LLUVIA
fmanzano_dtk 1:9e821e640117 742 * ******************************** */
fmanzano_dtk 1:9e821e640117 743 case CMD_RAIN_ENABLE:
fmanzano_dtk 1:9e821e640117 744 functionality_rain_sensor = true;
fmanzano_dtk 1:9e821e640117 745 ep.write(eprom_AddressArray[EE_Address_RAINSENSOR], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 746 tick_rain_sensor.detach();
fmanzano_dtk 1:9e821e640117 747 sprintf(fmu_buffer, "%s%d", TCA_ID_RAIN_SENSOR_ENA, 1);
fmanzano_dtk 1:9e821e640117 748 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 749 tick_rain_sensor.attach(&queryRG9, time_sample_rain);
fmanzano_dtk 1:9e821e640117 750 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 751 myPC_debug.printf("BLE - Sensor de Lluvia Habilitado\r\n");
fmanzano_dtk 1:9e821e640117 752 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 753 #endif
fmanzano_dtk 1:9e821e640117 754 break;
fmanzano_dtk 1:9e821e640117 755
fmanzano_dtk 1:9e821e640117 756 case CMD_RAIN_DISABLE:
fmanzano_dtk 1:9e821e640117 757 functionality_rain_sensor = false;
fmanzano_dtk 1:9e821e640117 758 ep.write(eprom_AddressArray[EE_Address_RAINSENSOR], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 759 tick_rain_sensor.detach();
fmanzano_dtk 1:9e821e640117 760 sprintf(fmu_buffer, "%s%d", TCA_ID_RAIN_SENSOR_ENA, 0);
fmanzano_dtk 1:9e821e640117 761 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 762 tx_fmu130_var_command(dry_Speed_CMD, &avl_uart);
fmanzano_dtk 1:9e821e640117 763 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 764 myPC_debug.printf("BLE - Sensor de Lluvia Deshabilitado\r\n");
fmanzano_dtk 1:9e821e640117 765 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 766 #endif
fmanzano_dtk 1:9e821e640117 767 break;
fmanzano_dtk 1:9e821e640117 768
fmanzano_dtk 1:9e821e640117 769 case CMD_RAIN_QUERY:
fmanzano_dtk 1:9e821e640117 770 sprintf(fmu_buffer, "%s%d", TCA_ID_Q_RAINSENSOR_STATUS, functionality_rain_sensor);
fmanzano_dtk 1:9e821e640117 771 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 772 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 773 myPC_debug.printf("BLE - Consulta Estatus del Sensor de Lluvia\r\n");
fmanzano_dtk 1:9e821e640117 774 myPC_debug.printf("BLE - Sensor de Lluvia: %d\r\n", functionality_rain_sensor);
fmanzano_dtk 1:9e821e640117 775 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 776 #endif
fmanzano_dtk 1:9e821e640117 777 break;
fmanzano_dtk 1:9e821e640117 778
fmanzano_dtk 1:9e821e640117 779 case CMD_CHANGE_RAIN_TIMER:
fmanzano_dtk 1:9e821e640117 780 ep.write(eprom_AddressArray[EE_Address_RS_SAMPLE_T], ((uint16_t) fingerprint_id));
fmanzano_dtk 1:9e821e640117 781 time_sample_rain = fingerprint_id * 1.0;
fmanzano_dtk 1:9e821e640117 782 if (functionality_rain_sensor) {
fmanzano_dtk 1:9e821e640117 783 tick_rain_sensor.detach();
fmanzano_dtk 1:9e821e640117 784 tick_rain_sensor.attach(&queryRG9, time_sample_rain);
fmanzano_dtk 1:9e821e640117 785 }
fmanzano_dtk 1:9e821e640117 786 sprintf(fmu_buffer, "%s%.1f", TCA_ID_Q_RAIN_SAMPLE_TIMER, time_sample_rain);
fmanzano_dtk 1:9e821e640117 787 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 788 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 789 myPC_debug.printf("BLE - Cambio Temp. de Muestras para Sensor de Lluvia\n");
fmanzano_dtk 1:9e821e640117 790 myPC_debug.printf("BLE - Nuevo Temp. para muestreo: %d seg\r\n", fingerprint_id);
fmanzano_dtk 1:9e821e640117 791 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 792 #endif
fmanzano_dtk 1:9e821e640117 793 break;
fmanzano_dtk 1:9e821e640117 794
fmanzano_dtk 1:9e821e640117 795 case CMD_QUERY_RAIN_TIMER:
fmanzano_dtk 1:9e821e640117 796 sprintf(fmu_buffer, "%s%.1f", TCA_ID_Q_RAIN_SAMPLE_TIMER, time_sample_rain);
fmanzano_dtk 1:9e821e640117 797 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 798 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 799 myPC_debug.printf("BLE - Consulta por Temp. de Muestras para Sensor de Lluvia\r\n");
fmanzano_dtk 1:9e821e640117 800 myPC_debug.printf("BLE - Muestras en: %.1f seg\r\n", time_sample_rain);
fmanzano_dtk 1:9e821e640117 801 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 802 #endif
fmanzano_dtk 1:9e821e640117 803 break;
fmanzano_dtk 1:9e821e640117 804
fmanzano_dtk 1:9e821e640117 805 case CMD_RAIN_SILENT_MODE_ENA:
fmanzano_dtk 1:9e821e640117 806 functionality_rainSensor_silentMode = true;
fmanzano_dtk 1:9e821e640117 807 sprintf(fmu_buffer, "%s", TCA_ID_RAIN_SILENT_MODE_ENA);
fmanzano_dtk 1:9e821e640117 808 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 809 tx_fmu130_var_command(dry_Speed_CMD, &avl_uart);
fmanzano_dtk 1:9e821e640117 810 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 811 myPC_debug.printf("BLE - Habilitar Modo silencioso de Sensor de Lluvia\r\n");
fmanzano_dtk 1:9e821e640117 812 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 813 #endif
fmanzano_dtk 1:9e821e640117 814 break;
fmanzano_dtk 1:9e821e640117 815
fmanzano_dtk 1:9e821e640117 816
fmanzano_dtk 1:9e821e640117 817 case CMD_RAIN_SILENT_MODE_DIS:
fmanzano_dtk 1:9e821e640117 818 functionality_rainSensor_silentMode = false;
fmanzano_dtk 1:9e821e640117 819 ep.write(eprom_AddressArray[EE_Address_RS_SILENTMODE], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 820 sprintf(fmu_buffer, "%s", TCA_ID_RAIN_SILENT_MODE_DIS);
fmanzano_dtk 1:9e821e640117 821 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 822 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 823 myPC_debug.printf("BLE - Deshabilitar Modo silencioso de Sensor de Lluvia\r\n");
fmanzano_dtk 1:9e821e640117 824 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 825 #endif
fmanzano_dtk 1:9e821e640117 826 break;
fmanzano_dtk 1:9e821e640117 827
fmanzano_dtk 1:9e821e640117 828 case CMD_RAIN_SILENT_MODE_Q:
fmanzano_dtk 1:9e821e640117 829 sprintf(fmu_buffer, "%s%d", TCA_ID_RAIN_SILENT_MODE_Q, functionality_rainSensor_silentMode);
fmanzano_dtk 1:9e821e640117 830 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 831 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 832 myPC_debug.printf("BLE - Consulta por Modo silencioso de Sensor de Lluvia\r\n");
fmanzano_dtk 1:9e821e640117 833 myPC_debug.printf("BLE - Modo silencioso: %s\r\n", functionality_rainSensor_silentMode?"TRUE":"FALSE");
fmanzano_dtk 1:9e821e640117 834 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 835 #endif
fmanzano_dtk 1:9e821e640117 836 break;
fmanzano_dtk 1:9e821e640117 837
fmanzano_dtk 1:9e821e640117 838 case CMD_CHANGE_WSL:
fmanzano_dtk 1:9e821e640117 839 wet_Speed_Limit = fingerprint_id;
fmanzano_dtk 1:9e821e640117 840 ep.write(eprom_AddressArray[EE_Address_WET_LIMIT], ((uint16_t) wet_Speed_Limit));
fmanzano_dtk 1:9e821e640117 841 sprintf(wet_Speed_CMD, "setparam 50092:%d", wet_Speed_Limit);
fmanzano_dtk 1:9e821e640117 842 tx_fmu130_var_command(wet_Speed_CMD, &avl_uart);
fmanzano_dtk 1:9e821e640117 843 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 844 myPC_debug.printf("BLE - Cambio Limite velocidad Mojado\r\n");
fmanzano_dtk 1:9e821e640117 845 myPC_debug.printf("BLE - Nuevo Limite: %d\r\n", wet_Speed_Limit);
fmanzano_dtk 1:9e821e640117 846 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 847 #endif
fmanzano_dtk 1:9e821e640117 848 sprintf(fmu_buffer, "%s%d,%d,%d,%d", TCA_ID_QUERY_SPEED_LIMIT,
fmanzano_dtk 1:9e821e640117 849 wet_Speed_Warning, wet_Speed_Limit, dry_Speed_Warning, dry_Speed_Limit);
fmanzano_dtk 1:9e821e640117 850 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 851 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 852 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 853 #endif
fmanzano_dtk 1:9e821e640117 854 break;
fmanzano_dtk 1:9e821e640117 855
fmanzano_dtk 1:9e821e640117 856 case CMD_CHANGE_WSW:
fmanzano_dtk 1:9e821e640117 857 wet_Speed_Warning = fingerprint_id;
fmanzano_dtk 1:9e821e640117 858 ep.write(eprom_AddressArray[EE_Address_WET_WARNING], ((uint16_t) wet_Speed_Warning));
fmanzano_dtk 1:9e821e640117 859 sprintf(wet_Speed_CMD, "setparam 11104:%d", wet_Speed_Warning);
fmanzano_dtk 1:9e821e640117 860 tx_fmu130_var_command(wet_Speed_CMD, &avl_uart);
fmanzano_dtk 1:9e821e640117 861 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 862 myPC_debug.printf("BLE - Cambio Limite advertencia Mojado\r\n");
fmanzano_dtk 1:9e821e640117 863 myPC_debug.printf("BLE - Nueva advertencia: %d\r\n", wet_Speed_Warning);
fmanzano_dtk 1:9e821e640117 864 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 865 #endif
fmanzano_dtk 1:9e821e640117 866 sprintf(fmu_buffer, "%s%d,%d,%d,%d", TCA_ID_QUERY_SPEED_LIMIT,
fmanzano_dtk 1:9e821e640117 867 wet_Speed_Warning, wet_Speed_Limit, dry_Speed_Warning, dry_Speed_Limit);
fmanzano_dtk 1:9e821e640117 868 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 869 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 870 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 871 #endif
fmanzano_dtk 1:9e821e640117 872 break;
fmanzano_dtk 1:9e821e640117 873
fmanzano_dtk 1:9e821e640117 874 case CMD_CHANGE_DSL:
fmanzano_dtk 1:9e821e640117 875 dry_Speed_Limit = fingerprint_id;
fmanzano_dtk 1:9e821e640117 876 ep.write(eprom_AddressArray[EE_Address_DRY_LIMIT], ((uint16_t) dry_Speed_Limit));
fmanzano_dtk 1:9e821e640117 877 sprintf(dry_Speed_CMD, "setparam 50092:%d", dry_Speed_Limit);
fmanzano_dtk 1:9e821e640117 878 tx_fmu130_var_command(dry_Speed_CMD, &avl_uart);
fmanzano_dtk 1:9e821e640117 879 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 880 myPC_debug.printf("BLE - Cambio Limite velocidad Seco\r\n");
fmanzano_dtk 1:9e821e640117 881 myPC_debug.printf("BLE - Nuevo Limite: %d\r\n", dry_Speed_Limit);
fmanzano_dtk 1:9e821e640117 882 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 883 #endif
fmanzano_dtk 1:9e821e640117 884 sprintf(fmu_buffer, "%s%d,%d,%d,%d", TCA_ID_QUERY_SPEED_LIMIT,
fmanzano_dtk 1:9e821e640117 885 wet_Speed_Warning, wet_Speed_Limit, dry_Speed_Warning, dry_Speed_Limit);
fmanzano_dtk 1:9e821e640117 886 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 887 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 888 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 889 #endif
fmanzano_dtk 1:9e821e640117 890 break;
fmanzano_dtk 1:9e821e640117 891
fmanzano_dtk 1:9e821e640117 892 case CMD_CHANGE_DSW:
fmanzano_dtk 1:9e821e640117 893 dry_Speed_Warning = fingerprint_id;
fmanzano_dtk 1:9e821e640117 894 ep.write(eprom_AddressArray[EE_Address_DRY_WARNING], ((uint16_t) dry_Speed_Warning));
fmanzano_dtk 1:9e821e640117 895 sprintf(dry_Speed_CMD, "setparam 11104:%d", dry_Speed_Warning);
fmanzano_dtk 1:9e821e640117 896 tx_fmu130_var_command(dry_Speed_CMD, &avl_uart);
fmanzano_dtk 1:9e821e640117 897 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 898 myPC_debug.printf("BLE - Cambio Limite advertencia Seco\r\n");
fmanzano_dtk 1:9e821e640117 899 myPC_debug.printf("BLE - Nueva advertencia: %d\r\n", dry_Speed_Warning);
fmanzano_dtk 1:9e821e640117 900 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 901 #endif
fmanzano_dtk 1:9e821e640117 902 sprintf(fmu_buffer, "%s%d,%d,%d,%d", TCA_ID_QUERY_SPEED_LIMIT,
fmanzano_dtk 1:9e821e640117 903 wet_Speed_Warning, wet_Speed_Limit, dry_Speed_Warning, dry_Speed_Limit);
fmanzano_dtk 1:9e821e640117 904 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 905 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 906 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 907 #endif
fmanzano_dtk 1:9e821e640117 908 break;
fmanzano_dtk 1:9e821e640117 909
fmanzano_dtk 1:9e821e640117 910 case CMD_QUERY_SPEED_LIMIT:
fmanzano_dtk 1:9e821e640117 911 sprintf(fmu_buffer, "%s%d,%d,%d,%d", TCA_ID_QUERY_SPEED_LIMIT,
fmanzano_dtk 1:9e821e640117 912 wet_Speed_Warning, wet_Speed_Limit, dry_Speed_Warning, dry_Speed_Limit);
fmanzano_dtk 1:9e821e640117 913 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 914 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 915 myPC_debug.printf("BLE - Consulta Limites Velocidad\r\n");
fmanzano_dtk 1:9e821e640117 916 myPC_debug.printf("BLE - Mojado Advertencia: %d, Limite: %d\r\n", wet_Speed_Warning, wet_Speed_Limit);
fmanzano_dtk 1:9e821e640117 917 myPC_debug.printf("BLE - Seco Advertencia: %d, Limite: %d\r\n", dry_Speed_Warning, dry_Speed_Limit);
fmanzano_dtk 1:9e821e640117 918 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 919 #endif
fmanzano_dtk 1:9e821e640117 920 break;
fmanzano_dtk 1:9e821e640117 921
fmanzano_dtk 1:9e821e640117 922
fmanzano_dtk 1:9e821e640117 923
fmanzano_dtk 1:9e821e640117 924 /** ********************************
fmanzano_dtk 1:9e821e640117 925 * COMANDOS DE CINTURONES
fmanzano_dtk 1:9e821e640117 926 * ******************************** */
fmanzano_dtk 1:9e821e640117 927 case CMD_SEATBELT_ENABLE:
fmanzano_dtk 1:9e821e640117 928 functionality_seatbelt_reading = true;
fmanzano_dtk 1:9e821e640117 929 ep.write(eprom_AddressArray[EE_Address_SEATBELT_READ], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 930 sprintf(fmu_buffer, "%s%d", TCA_ID_SEATBELT_READ_ENA, 1);
fmanzano_dtk 1:9e821e640117 931 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 932 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 933 myPC_debug.printf("BLE - Lectura Cinturones Habilitado\r\n");
fmanzano_dtk 1:9e821e640117 934 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 935 #endif
fmanzano_dtk 1:9e821e640117 936 break;
fmanzano_dtk 1:9e821e640117 937
fmanzano_dtk 1:9e821e640117 938 case CMD_SEATBELT_DISABLE:
fmanzano_dtk 1:9e821e640117 939 functionality_seatbelt_reading = false;
fmanzano_dtk 1:9e821e640117 940 ep.write(eprom_AddressArray[EE_Address_SEATBELT_READ], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 941 sprintf(fmu_buffer, "%s%d", TCA_ID_SEATBELT_READ_ENA, 0);
fmanzano_dtk 1:9e821e640117 942 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 943 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 944 myPC_debug.printf("BLE - Lectura Cinturones Deshabilitado\r\n");
fmanzano_dtk 1:9e821e640117 945 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 946 #endif
fmanzano_dtk 1:9e821e640117 947 break;
fmanzano_dtk 1:9e821e640117 948
fmanzano_dtk 1:9e821e640117 949 case CMD_SEATBELT_QUERY:
fmanzano_dtk 1:9e821e640117 950 sprintf(fmu_buffer, "%s%d", TCA_ID_SEATBELT_READ_ENA, functionality_force_driver_buclke);
fmanzano_dtk 1:9e821e640117 951 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 952 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 953 myPC_debug.printf("BLE - Consulta Estado de Lectura de Cinturones\r\n");
fmanzano_dtk 1:9e821e640117 954 myPC_debug.printf("BLE - Lectura de Cinturones: %s\r\n", functionality_force_driver_buclke?"TRUE":"FALSE");
fmanzano_dtk 1:9e821e640117 955 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 956 #endif
fmanzano_dtk 1:9e821e640117 957 break;
fmanzano_dtk 1:9e821e640117 958
fmanzano_dtk 1:9e821e640117 959 case CMD_FORCE_BUCLKE_ENABLE:
fmanzano_dtk 1:9e821e640117 960 functionality_force_driver_buclke = true;
fmanzano_dtk 1:9e821e640117 961 functionality_seatbelt_reading = true;
fmanzano_dtk 1:9e821e640117 962 ep.write(eprom_AddressArray[EE_Address_SEATBELT_READ], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 963 ep.write(eprom_AddressArray[EE_Address_ENFORCE_SB], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 964 sprintf(fmu_buffer, "%s%d", TCA_ID_FORCE_SEATBELT, 1);
fmanzano_dtk 1:9e821e640117 965 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 966 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 967 myPC_debug.printf("BLE - Forzar Cinturon de Piloto Habilitado\r\n");
fmanzano_dtk 1:9e821e640117 968 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 969 #endif
fmanzano_dtk 1:9e821e640117 970 break;
fmanzano_dtk 1:9e821e640117 971
fmanzano_dtk 1:9e821e640117 972 case CMD_FORCE_BUCLKE_DISABLE:
fmanzano_dtk 1:9e821e640117 973 tx_fmu130_command(FMU_ENGINE_UNLOCK, &avl_uart);
fmanzano_dtk 1:9e821e640117 974 out1_fingerprint = 1;
fmanzano_dtk 1:9e821e640117 975 wait_us(1000000);
fmanzano_dtk 1:9e821e640117 976 out1_fingerprint = 0;
fmanzano_dtk 1:9e821e640117 977 functionality_force_driver_buclke = false;
fmanzano_dtk 1:9e821e640117 978 ep.write(eprom_AddressArray[EE_Address_ENFORCE_SB], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 979 sprintf(fmu_buffer, "%s%d", TCA_ID_FORCE_SEATBELT, 0);
fmanzano_dtk 1:9e821e640117 980 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 981 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 982 myPC_debug.printf("BLE - Forzar Cinturon de Piloto Deshabilitado\r\n");
fmanzano_dtk 1:9e821e640117 983 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 984 #endif
fmanzano_dtk 1:9e821e640117 985 break;
fmanzano_dtk 1:9e821e640117 986
fmanzano_dtk 1:9e821e640117 987 case CMD_QUERY_FORCE_SEATBELT:
fmanzano_dtk 1:9e821e640117 988 sprintf(fmu_buffer, "%s%d", TCA_ID_Q_FORCE_SEATBELT_ST, functionality_force_driver_buclke);
fmanzano_dtk 1:9e821e640117 989 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 990 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 991 myPC_debug.printf("BLE - Consulta Estatus para Forzar Cinturon de Piloto\r\n");
fmanzano_dtk 1:9e821e640117 992 myPC_debug.printf("BLE - Forzar Cinturon de Piloto: %d\r\n", functionality_force_driver_buclke);
fmanzano_dtk 1:9e821e640117 993 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 994 #endif
fmanzano_dtk 1:9e821e640117 995 break;
fmanzano_dtk 1:9e821e640117 996
fmanzano_dtk 1:9e821e640117 997 case CMD_SET_INPUT_NORMAL_O: // CONFIGURACIÓN DE LIVIANO y Cinturón Chino
fmanzano_dtk 1:9e821e640117 998 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 999 myPC_debug.printf("BLE - Entradas como Normalmente Abierta\r\n");
fmanzano_dtk 1:9e821e640117 1000 #endif
fmanzano_dtk 1:9e821e640117 1001 pilot_buckle_type = copilot_buckle_type = crew_buckle_type = true; // HONDURAS
fmanzano_dtk 1:9e821e640117 1002 ep.write(eprom_AddressArray[EE_Address_PILOT_BTYPE], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 1003 ep.write(eprom_AddressArray[EE_Address_COPILOT_BTYPE], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 1004 ep.write(eprom_AddressArray[EE_Address_CREW_BTYPE], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 1005 pilot_buckleUp = copilot_buckleUp = crew_buckleUp = 1;
fmanzano_dtk 1:9e821e640117 1006 pilot_unfasten = copilot_unfasten = crew_unfasten = -1;
fmanzano_dtk 1:9e821e640117 1007 sprintf(fmu_buffer, "%s", TCA_ID_PILOT_BUCKLE_NO);
fmanzano_dtk 1:9e821e640117 1008 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1009 sprintf(fmu_buffer, "%s", TCA_ID_COPILOT_BUCKLE_NO);
fmanzano_dtk 1:9e821e640117 1010 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1011 sprintf(fmu_buffer, "%s", TCA_ID_CREW_BUCKLE_NO);
fmanzano_dtk 1:9e821e640117 1012 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1013 break;
fmanzano_dtk 1:9e821e640117 1014
fmanzano_dtk 1:9e821e640117 1015 case CMD_SET_INPUT_NORMAL_C: // CONFIGURACIÓN DE CAMIÓN
fmanzano_dtk 1:9e821e640117 1016 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1017 myPC_debug.printf("BLE - Entradas como Normalmente Cerradas\r\n");
fmanzano_dtk 1:9e821e640117 1018 #endif
fmanzano_dtk 1:9e821e640117 1019 pilot_buckle_type = copilot_buckle_type = crew_buckle_type = false; // PANAMA
fmanzano_dtk 1:9e821e640117 1020 ep.write(eprom_AddressArray[EE_Address_PILOT_BTYPE], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 1021 ep.write(eprom_AddressArray[EE_Address_COPILOT_BTYPE], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 1022 ep.write(eprom_AddressArray[EE_Address_CREW_BTYPE], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 1023 pilot_buckleUp = copilot_buckleUp = crew_buckleUp = -1;
fmanzano_dtk 1:9e821e640117 1024 pilot_unfasten = copilot_unfasten = crew_unfasten = 1;
fmanzano_dtk 1:9e821e640117 1025 sprintf(fmu_buffer, "%s", TCA_ID_PILOT_BUCKLE_NC);
fmanzano_dtk 1:9e821e640117 1026 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1027 sprintf(fmu_buffer, "%s", TCA_ID_COPILOT_BUCKLE_NC);
fmanzano_dtk 1:9e821e640117 1028 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1029 sprintf(fmu_buffer, "%s", TCA_ID_CREW_BUCKLE_NC);
fmanzano_dtk 1:9e821e640117 1030 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1031 break;
fmanzano_dtk 1:9e821e640117 1032
fmanzano_dtk 1:9e821e640117 1033 case CMD_QUERY_DIN_CONFIG:
fmanzano_dtk 1:9e821e640117 1034 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1035 myPC_debug.printf("BLE - Consulta por DIN Config.\r\n");
fmanzano_dtk 1:9e821e640117 1036 #endif
fmanzano_dtk 1:9e821e640117 1037
fmanzano_dtk 1:9e821e640117 1038 if (pilot_buckle_type) {
fmanzano_dtk 1:9e821e640117 1039 sprintf(fmu_buffer, "%s", TCA_ID_PILOT_BUCKLE_NO);
fmanzano_dtk 1:9e821e640117 1040 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1041 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1042 myPC_debug.printf("%s\r\n", "BLE - Cinturon de Piloto: NO");
fmanzano_dtk 1:9e821e640117 1043 #endif
fmanzano_dtk 1:9e821e640117 1044 } else {
fmanzano_dtk 1:9e821e640117 1045 sprintf(fmu_buffer, "%s", TCA_ID_PILOT_BUCKLE_NC);
fmanzano_dtk 1:9e821e640117 1046 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1047 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1048 myPC_debug.printf("%s\r\n", "BLE - Cinturon de Piloto: NC");
fmanzano_dtk 1:9e821e640117 1049 #endif
fmanzano_dtk 1:9e821e640117 1050 }
fmanzano_dtk 1:9e821e640117 1051
fmanzano_dtk 1:9e821e640117 1052 if (copilot_buckle_type) {
fmanzano_dtk 1:9e821e640117 1053 sprintf(fmu_buffer, "%s", TCA_ID_COPILOT_BUCKLE_NO);
fmanzano_dtk 1:9e821e640117 1054 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1055 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1056 myPC_debug.printf("%s\r\n", "BLE - Cinturon de Copiloto: NO");
fmanzano_dtk 1:9e821e640117 1057 #endif
fmanzano_dtk 1:9e821e640117 1058 } else {
fmanzano_dtk 1:9e821e640117 1059 sprintf(fmu_buffer, "%s", TCA_ID_COPILOT_BUCKLE_NC);
fmanzano_dtk 1:9e821e640117 1060 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1061 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1062 myPC_debug.printf("%s\r\n", "BLE - Cinturon de Copiloto: NC");
fmanzano_dtk 1:9e821e640117 1063 #endif
fmanzano_dtk 1:9e821e640117 1064 }
fmanzano_dtk 1:9e821e640117 1065
fmanzano_dtk 1:9e821e640117 1066 if (crew_buckle_type) {
fmanzano_dtk 1:9e821e640117 1067 sprintf(fmu_buffer, "%s", TCA_ID_CREW_BUCKLE_NO);
fmanzano_dtk 1:9e821e640117 1068 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1069 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1070 myPC_debug.printf("%s\r\n", "BLE - Cinturon de Tripulante: NO");
fmanzano_dtk 1:9e821e640117 1071 #endif
fmanzano_dtk 1:9e821e640117 1072 } else {
fmanzano_dtk 1:9e821e640117 1073 sprintf(fmu_buffer, "%s", TCA_ID_CREW_BUCKLE_NC);
fmanzano_dtk 1:9e821e640117 1074 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1075 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1076 myPC_debug.printf("%s\r\n", "BLE - Cinturon de Tripulante: NC");
fmanzano_dtk 1:9e821e640117 1077 #endif
fmanzano_dtk 1:9e821e640117 1078 }
fmanzano_dtk 1:9e821e640117 1079 break;
fmanzano_dtk 1:9e821e640117 1080
fmanzano_dtk 1:9e821e640117 1081 case CMD_PILOT_BUCKLE_NO: // CONFIGURACIÓN DE LIVIANO y Cinturón Chino
fmanzano_dtk 1:9e821e640117 1082 pilot_buckle_type = true; // HONDURAS
fmanzano_dtk 1:9e821e640117 1083 ep.write(eprom_AddressArray[EE_Address_PILOT_BTYPE], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 1084 pilot_buckleUp = 1;
fmanzano_dtk 1:9e821e640117 1085 pilot_unfasten = -1;
fmanzano_dtk 1:9e821e640117 1086 sprintf(fmu_buffer, "%s", TCA_ID_PILOT_BUCKLE_NO);
fmanzano_dtk 1:9e821e640117 1087 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1088 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1089 myPC_debug.printf("BLE - Cambio Config. Cinturon de Piloto: NO\r\n");
fmanzano_dtk 1:9e821e640117 1090 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1091 #endif
fmanzano_dtk 1:9e821e640117 1092 break;
fmanzano_dtk 1:9e821e640117 1093
fmanzano_dtk 1:9e821e640117 1094 case CMD_PILOT_BUCKLE_NC: // CONFIGURACIÓN DE CAMIÓN
fmanzano_dtk 1:9e821e640117 1095 pilot_buckle_type = false; // PANAMA
fmanzano_dtk 1:9e821e640117 1096 ep.write(eprom_AddressArray[EE_Address_PILOT_BTYPE], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 1097 pilot_buckleUp = -1;
fmanzano_dtk 1:9e821e640117 1098 pilot_unfasten = 1;
fmanzano_dtk 1:9e821e640117 1099 sprintf(fmu_buffer, "%s", TCA_ID_PILOT_BUCKLE_NC);
fmanzano_dtk 1:9e821e640117 1100 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1101 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1102 myPC_debug.printf("BLE - Cambio Config. Cinturon de Piloto: NC\r\n");
fmanzano_dtk 1:9e821e640117 1103 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1104 #endif
fmanzano_dtk 1:9e821e640117 1105 break;
fmanzano_dtk 1:9e821e640117 1106
fmanzano_dtk 1:9e821e640117 1107 case CMD_QUERY_PILOT_BT:
fmanzano_dtk 1:9e821e640117 1108 if (pilot_buckle_type) {
fmanzano_dtk 1:9e821e640117 1109 sprintf(fmu_buffer, "%s", TCA_ID_PILOT_BUCKLE_NO);
fmanzano_dtk 1:9e821e640117 1110 } else {
fmanzano_dtk 1:9e821e640117 1111 sprintf(fmu_buffer, "%s", TCA_ID_PILOT_BUCKLE_NC);
fmanzano_dtk 1:9e821e640117 1112 }
fmanzano_dtk 1:9e821e640117 1113 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1114 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1115 myPC_debug.printf("BLE - Consulta por Config. Cinturon de Piloto\r\n");
fmanzano_dtk 1:9e821e640117 1116 myPC_debug.printf("BLE - Cinturon Piloto Tipo: %s\r\n", pilot_buckle_type?"N. OPEN":"N. CLOSE");
fmanzano_dtk 1:9e821e640117 1117 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1118 #endif
fmanzano_dtk 1:9e821e640117 1119 break;
fmanzano_dtk 1:9e821e640117 1120
fmanzano_dtk 1:9e821e640117 1121 case CMD_COPILOT_BUCKLE_NO: // CONFIGURACIÓN DE LIVIANO y Cinturón Chino
fmanzano_dtk 1:9e821e640117 1122 copilot_buckle_type = true; // HONDURAS
fmanzano_dtk 1:9e821e640117 1123 ep.write(eprom_AddressArray[EE_Address_COPILOT_BTYPE], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 1124 copilot_buckleUp = 1;
fmanzano_dtk 1:9e821e640117 1125 copilot_unfasten = -1;
fmanzano_dtk 1:9e821e640117 1126 sprintf(fmu_buffer, "%s", TCA_ID_COPILOT_BUCKLE_NO);
fmanzano_dtk 1:9e821e640117 1127 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1128 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1129 myPC_debug.printf("BLE - Cambio Config. Cinturon de Copiloto: NO\r\n");
fmanzano_dtk 1:9e821e640117 1130 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1131 #endif
fmanzano_dtk 1:9e821e640117 1132 break;
fmanzano_dtk 1:9e821e640117 1133
fmanzano_dtk 1:9e821e640117 1134 case CMD_COPILOT_BUCKLE_NC: // CONFIGURACIÓN DE CAMIÓN
fmanzano_dtk 1:9e821e640117 1135 copilot_buckle_type = false; // PANAMA
fmanzano_dtk 1:9e821e640117 1136 ep.write(eprom_AddressArray[EE_Address_COPILOT_BTYPE], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 1137 copilot_buckleUp = -1;
fmanzano_dtk 1:9e821e640117 1138 copilot_unfasten = 1;
fmanzano_dtk 1:9e821e640117 1139 sprintf(fmu_buffer, "%s", TCA_ID_COPILOT_BUCKLE_NC);
fmanzano_dtk 1:9e821e640117 1140 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1141 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1142 myPC_debug.printf("BLE - Cambio Config. Cinturon de Copiloto: NC\r\n");
fmanzano_dtk 1:9e821e640117 1143 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1144 #endif
fmanzano_dtk 1:9e821e640117 1145 break;
fmanzano_dtk 1:9e821e640117 1146
fmanzano_dtk 1:9e821e640117 1147 case CMD_QUERY_COPILOT_BT:
fmanzano_dtk 1:9e821e640117 1148 if (copilot_buckle_type) {
fmanzano_dtk 1:9e821e640117 1149 sprintf(fmu_buffer, "%s", TCA_ID_COPILOT_BUCKLE_NO);
fmanzano_dtk 1:9e821e640117 1150 } else {
fmanzano_dtk 1:9e821e640117 1151 sprintf(fmu_buffer, "%s", TCA_ID_COPILOT_BUCKLE_NC);
fmanzano_dtk 1:9e821e640117 1152 }
fmanzano_dtk 1:9e821e640117 1153 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1154 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1155 myPC_debug.printf("BLE - Consulta por Config. Cinturon de Copiloto\r\n");
fmanzano_dtk 1:9e821e640117 1156 myPC_debug.printf("BLE - Cinturon Copiloto Tipo: %s\r\n", copilot_buckle_type?"N. OPEN":"N. CLOSE");
fmanzano_dtk 1:9e821e640117 1157 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1158 #endif
fmanzano_dtk 1:9e821e640117 1159 break;
fmanzano_dtk 1:9e821e640117 1160
fmanzano_dtk 1:9e821e640117 1161 case CMD_CREW_BUCKLE_NO: // CONFIGURACIÓN DE LIVIANO y Cinturón Chino
fmanzano_dtk 1:9e821e640117 1162 crew_buckle_type = true; // HONDURAS
fmanzano_dtk 1:9e821e640117 1163 ep.write(eprom_AddressArray[EE_Address_CREW_BTYPE], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 1164 crew_buckleUp = 1;
fmanzano_dtk 1:9e821e640117 1165 crew_unfasten = -1;
fmanzano_dtk 1:9e821e640117 1166 sprintf(fmu_buffer, "%s", TCA_ID_CREW_BUCKLE_NO);
fmanzano_dtk 1:9e821e640117 1167 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1168 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1169 myPC_debug.printf("BLE - Cambio Config. Cinturon de Tripulante: NO\r\n");
fmanzano_dtk 1:9e821e640117 1170 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1171 #endif
fmanzano_dtk 1:9e821e640117 1172 break;
fmanzano_dtk 1:9e821e640117 1173
fmanzano_dtk 1:9e821e640117 1174 case CMD_CREW_BUCKLE_NC: // CONFIGURACIÓN DE CAMIÓN
fmanzano_dtk 1:9e821e640117 1175 crew_buckle_type = false; // PANAMA
fmanzano_dtk 1:9e821e640117 1176 ep.write(eprom_AddressArray[EE_Address_CREW_BTYPE], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 1177 crew_buckleUp = -1;
fmanzano_dtk 1:9e821e640117 1178 crew_unfasten = 1;
fmanzano_dtk 1:9e821e640117 1179 sprintf(fmu_buffer, "%s", TCA_ID_CREW_BUCKLE_NC);
fmanzano_dtk 1:9e821e640117 1180 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1181 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1182 myPC_debug.printf("BLE - Cambio Config. Cinturon de Tripulante: NC\r\n");
fmanzano_dtk 1:9e821e640117 1183 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1184 #endif
fmanzano_dtk 1:9e821e640117 1185 break;
fmanzano_dtk 1:9e821e640117 1186
fmanzano_dtk 1:9e821e640117 1187 case CMD_QUERY_CREW_BT:
fmanzano_dtk 1:9e821e640117 1188 if (crew_buckle_type) {
fmanzano_dtk 1:9e821e640117 1189 sprintf(fmu_buffer, "%s", TCA_ID_CREW_BUCKLE_NO);
fmanzano_dtk 1:9e821e640117 1190 } else {
fmanzano_dtk 1:9e821e640117 1191 sprintf(fmu_buffer, "%s", TCA_ID_CREW_BUCKLE_NC);
fmanzano_dtk 1:9e821e640117 1192 }
fmanzano_dtk 1:9e821e640117 1193 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1194 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1195 myPC_debug.printf("BLE - Consulta por Config. Cinturon de Tripulante\r\n");
fmanzano_dtk 1:9e821e640117 1196 myPC_debug.printf("BLE - Cinturon Tripulante Tipo: %s\r\n", crew_buckle_type?"N. OPEN":"N. CLOSE");
fmanzano_dtk 1:9e821e640117 1197 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1198 #endif
fmanzano_dtk 1:9e821e640117 1199 break;
fmanzano_dtk 1:9e821e640117 1200
fmanzano_dtk 1:9e821e640117 1201
fmanzano_dtk 1:9e821e640117 1202
fmanzano_dtk 1:9e821e640117 1203 /** ********************************
fmanzano_dtk 1:9e821e640117 1204 * COMANDOS DE APAGADO POR RALENTI
fmanzano_dtk 1:9e821e640117 1205 * ******************************** */
fmanzano_dtk 1:9e821e640117 1206 case CMD_IDLE_SHUTDOWN_ENABLE:
fmanzano_dtk 1:9e821e640117 1207 functionality_idle_shutdown = true;
fmanzano_dtk 1:9e821e640117 1208 ep.write(eprom_AddressArray[EE_Address_IDLE_SHUTDOWN], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 1209 sprintf(fmu_buffer, "%s%d", TCA_ID_FORCE_IDLE_SHUTDOWN, 1);
fmanzano_dtk 1:9e821e640117 1210 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1211 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1212 myPC_debug.printf("BLE - Apagado por Ralenti Habilitado\r\n");
fmanzano_dtk 1:9e821e640117 1213 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1214 #endif
fmanzano_dtk 1:9e821e640117 1215 break;
fmanzano_dtk 1:9e821e640117 1216
fmanzano_dtk 1:9e821e640117 1217 case CMD_IDLE_SHUTDOWN_DISABLE:
fmanzano_dtk 1:9e821e640117 1218 functionality_idle_shutdown = false;
fmanzano_dtk 1:9e821e640117 1219 ep.write(eprom_AddressArray[EE_Address_IDLE_SHUTDOWN], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 1220 tick_idle_shutdown.detach();
fmanzano_dtk 1:9e821e640117 1221 sprintf(fmu_buffer, "%s%d", TCA_ID_FORCE_IDLE_SHUTDOWN, 0);
fmanzano_dtk 1:9e821e640117 1222 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1223 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1224 myPC_debug.printf("BLE - Apagado por Ralenti Deshabilitado\r\n");
fmanzano_dtk 1:9e821e640117 1225 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1226 #endif
fmanzano_dtk 1:9e821e640117 1227 break;
fmanzano_dtk 1:9e821e640117 1228
fmanzano_dtk 1:9e821e640117 1229 case CMD_IDLE_SHUTDOWN_QUERY:
fmanzano_dtk 1:9e821e640117 1230 sprintf(fmu_buffer, "%s%d", TCA_ID_Q_IDLE_SHUTDOWN_ST, functionality_idle_shutdown);
fmanzano_dtk 1:9e821e640117 1231 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1232 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1233 myPC_debug.printf("BLE - Consulta Estatus de Apagado por Ralenti\r\n");
fmanzano_dtk 1:9e821e640117 1234 myPC_debug.printf("BLE - Apagado por Ralenti: %s\r\n", functionality_idle_shutdown?"TRUE":"FALSE");
fmanzano_dtk 1:9e821e640117 1235 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1236 #endif
fmanzano_dtk 1:9e821e640117 1237 break;
fmanzano_dtk 1:9e821e640117 1238
fmanzano_dtk 1:9e821e640117 1239 case CMD_CHANGE_IDLE_SHUTDOWN_T:
fmanzano_dtk 1:9e821e640117 1240 ep.write(eprom_AddressArray[EE_Address_IDLE_S_TIME], ((uint16_t) fingerprint_id));
fmanzano_dtk 1:9e821e640117 1241 wait_idle_shutdown = fingerprint_id * 1.0;
fmanzano_dtk 1:9e821e640117 1242 sprintf(fmu_buffer, "%s%.1f", TCA_ID_QUERY_IDLE_TIMER, wait_idle_shutdown);
fmanzano_dtk 1:9e821e640117 1243 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1244 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1245 myPC_debug.printf("BLE - Cambio Temp. de Apagado Ralenti\r\n");
fmanzano_dtk 1:9e821e640117 1246 myPC_debug.printf("BLE - Nuevo Temp. Ralendi: %d seg\r\n", fingerprint_id);
fmanzano_dtk 1:9e821e640117 1247 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1248 #endif
fmanzano_dtk 1:9e821e640117 1249 break;
fmanzano_dtk 1:9e821e640117 1250
fmanzano_dtk 1:9e821e640117 1251 case CMD_QUERY_IDLE_SHUTDOWN_T:
fmanzano_dtk 1:9e821e640117 1252 sprintf(fmu_buffer, "%s%.1f", TCA_ID_QUERY_IDLE_TIMER, wait_idle_shutdown);
fmanzano_dtk 1:9e821e640117 1253 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1254 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1255 myPC_debug.printf("BLE - Consulta Temp. de Apagado Ralenti\r\n");
fmanzano_dtk 1:9e821e640117 1256 myPC_debug.printf("BLE - Apagado Ralenti en %.1f seg\r\n", wait_idle_shutdown);
fmanzano_dtk 1:9e821e640117 1257 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1258 #endif
fmanzano_dtk 1:9e821e640117 1259 break;
fmanzano_dtk 1:9e821e640117 1260
fmanzano_dtk 1:9e821e640117 1261
fmanzano_dtk 1:9e821e640117 1262 /** ********************************
fmanzano_dtk 1:9e821e640117 1263 * COMANDOS DE RECORDATORIO DE RALENTI
fmanzano_dtk 1:9e821e640117 1264 * ******************************** */
fmanzano_dtk 1:9e821e640117 1265 case CMD_IDLE_REMINDER_ENABLE:
fmanzano_dtk 1:9e821e640117 1266 functionality_idle_reminder = true;
fmanzano_dtk 1:9e821e640117 1267 ep.write(eprom_AddressArray[EE_Address_IDLE_REMINDER], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 1268 sprintf(fmu_buffer, "%s", TCA_ID_IDLE_REMINDER_ENA);
fmanzano_dtk 1:9e821e640117 1269 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1270 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1271 myPC_debug.printf("BLE - Recordatorio por Ralenti Habilitado\r\n");
fmanzano_dtk 1:9e821e640117 1272 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1273 #endif
fmanzano_dtk 1:9e821e640117 1274 break;
fmanzano_dtk 1:9e821e640117 1275
fmanzano_dtk 1:9e821e640117 1276 case CMD_IDLE_REMINDER_DISABLE:
fmanzano_dtk 1:9e821e640117 1277 functionality_idle_reminder = false;
fmanzano_dtk 1:9e821e640117 1278 ep.write(eprom_AddressArray[EE_Address_IDLE_REMINDER], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 1279 sprintf(fmu_buffer, "%s", TCA_ID_IDLE_REMINDER_DIS);
fmanzano_dtk 1:9e821e640117 1280 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1281 tick_idle_reminder.detach();
fmanzano_dtk 1:9e821e640117 1282 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1283 myPC_debug.printf("BLE - Recordatorio por Ralenti Deshabilitado\r\n");
fmanzano_dtk 1:9e821e640117 1284 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1285 #endif
fmanzano_dtk 1:9e821e640117 1286 break;
fmanzano_dtk 1:9e821e640117 1287
fmanzano_dtk 1:9e821e640117 1288 case CMD_IDLE_REMINDER_QUERY:
fmanzano_dtk 1:9e821e640117 1289 if (functionality_idle_reminder) {
fmanzano_dtk 1:9e821e640117 1290 sprintf(fmu_buffer, "%s", TCA_ID_IDLE_REMINDER_ENA);
fmanzano_dtk 1:9e821e640117 1291 } else {
fmanzano_dtk 1:9e821e640117 1292 sprintf(fmu_buffer, "%s", TCA_ID_IDLE_REMINDER_DIS);
fmanzano_dtk 1:9e821e640117 1293 }
fmanzano_dtk 1:9e821e640117 1294 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1295 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1296 myPC_debug.printf("BLE - Consulta Estatus de Recordatorio por Ralenti\r\n");
fmanzano_dtk 1:9e821e640117 1297 myPC_debug.printf("BLE - Recordatorio por Ralenti: %s\r\n", functionality_idle_reminder?"TRUE":"FALSE");
fmanzano_dtk 1:9e821e640117 1298 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1299 #endif
fmanzano_dtk 1:9e821e640117 1300 break;
fmanzano_dtk 1:9e821e640117 1301
fmanzano_dtk 1:9e821e640117 1302 case CMD_CHANGE_IDLE_REMINDER_T:
fmanzano_dtk 1:9e821e640117 1303 ep.write(eprom_AddressArray[EE_Address_IDLE_R_TIME], ((uint16_t) fingerprint_id));
fmanzano_dtk 1:9e821e640117 1304 wait_idle_reminder = fingerprint_id * 1.0;
fmanzano_dtk 1:9e821e640117 1305 sprintf(fmu_buffer, "%s%.1f", TCA_ID_IDLE_REMINDER_TIME, wait_idle_reminder);
fmanzano_dtk 1:9e821e640117 1306 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1307 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1308 myPC_debug.printf("BLE - Cambio Temp. de Recordatorio Ralenti\r\n");
fmanzano_dtk 1:9e821e640117 1309 myPC_debug.printf("BLE - Nuevo Recordatorio Ralendi: %d seg\r\n", fingerprint_id);
fmanzano_dtk 1:9e821e640117 1310 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1311 #endif
fmanzano_dtk 1:9e821e640117 1312 break;
fmanzano_dtk 1:9e821e640117 1313
fmanzano_dtk 1:9e821e640117 1314 case CMD_QUERY_IDLE_REMINDER_T:
fmanzano_dtk 1:9e821e640117 1315 sprintf(fmu_buffer, "%s%.1f", TCA_ID_IDLE_REMINDER_TIME, wait_idle_reminder);
fmanzano_dtk 1:9e821e640117 1316 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1317 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1318 myPC_debug.printf("BLE - Consulta Temp. de Recordatorio Ralenti\r\n");
fmanzano_dtk 1:9e821e640117 1319 myPC_debug.printf("BLE - Recordatorio Ralenti en %.1f seg\r\n", wait_idle_reminder);
fmanzano_dtk 1:9e821e640117 1320 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1321 #endif
fmanzano_dtk 1:9e821e640117 1322 break;
fmanzano_dtk 1:9e821e640117 1323
fmanzano_dtk 1:9e821e640117 1324
fmanzano_dtk 1:9e821e640117 1325 /** ********************************
fmanzano_dtk 1:9e821e640117 1326 * COMANDOS DE TIP DE SEGURIDAD
fmanzano_dtk 1:9e821e640117 1327 * ******************************** */
fmanzano_dtk 1:9e821e640117 1328 case CMD_QUERY_SAFETY_TIP_TIME:
fmanzano_dtk 1:9e821e640117 1329 sprintf(fmu_buffer, "%s%.1f", TCA_ID_QUERY_SAFETY_TIP, time_safety_tip);
fmanzano_dtk 1:9e821e640117 1330 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1331 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1332 myPC_debug.printf("BLE - Consulta Temp. de Tip de Seguridad\r\n");
fmanzano_dtk 1:9e821e640117 1333 myPC_debug.printf("BLE - Tip de Seguridad en %.1f seg\r\n", time_safety_tip);
fmanzano_dtk 1:9e821e640117 1334 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1335 #endif
fmanzano_dtk 1:9e821e640117 1336 break;
fmanzano_dtk 1:9e821e640117 1337
fmanzano_dtk 1:9e821e640117 1338 case CHANGE_SAFETY_TIP_TIME:
fmanzano_dtk 1:9e821e640117 1339 ep.write(eprom_AddressArray[EE_Address_SAFETY_TIP_T], ((uint16_t) fingerprint_id));
fmanzano_dtk 1:9e821e640117 1340 time_safety_tip = fingerprint_id * 1.0;
fmanzano_dtk 1:9e821e640117 1341 sprintf(fmu_buffer, "%s%.1f", TCA_ID_QUERY_SAFETY_TIP, time_safety_tip);
fmanzano_dtk 1:9e821e640117 1342 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1343 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1344 myPC_debug.printf("BLE - Cambio Temp. de Tip de Seguridad\r\n");
fmanzano_dtk 1:9e821e640117 1345 myPC_debug.printf("BLE - Nuevo Temp. para Tip de Seguridad: %d seg\r\n", fingerprint_id);
fmanzano_dtk 1:9e821e640117 1346 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1347 #endif
fmanzano_dtk 1:9e821e640117 1348 break;
fmanzano_dtk 1:9e821e640117 1349
fmanzano_dtk 1:9e821e640117 1350 case CMD_SAFETY_TIP_ENABLE:
fmanzano_dtk 1:9e821e640117 1351 functionality_safety_tip = true;
fmanzano_dtk 1:9e821e640117 1352 ep.write(eprom_AddressArray[EE_Address_SAFETY_TIP], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 1353 sprintf(fmu_buffer, "%s", TCA_ID_SAFETY_TIP_ENABLE);
fmanzano_dtk 1:9e821e640117 1354 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1355 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1356 myPC_debug.printf("BLE - Tip de Seguridad Habilitado\r\n");
fmanzano_dtk 1:9e821e640117 1357 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1358 #endif
fmanzano_dtk 1:9e821e640117 1359 break;
fmanzano_dtk 1:9e821e640117 1360
fmanzano_dtk 1:9e821e640117 1361 case CMD_SAFETY_TIP_DISABLE:
fmanzano_dtk 1:9e821e640117 1362 functionality_safety_tip = false;
fmanzano_dtk 1:9e821e640117 1363 ep.write(eprom_AddressArray[EE_Address_SAFETY_TIP], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 1364 tick_safety_tip.detach();
fmanzano_dtk 1:9e821e640117 1365 sprintf(fmu_buffer, "%s", TCA_ID_SAFETY_TIP_DISABLE);
fmanzano_dtk 1:9e821e640117 1366 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1367 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1368 myPC_debug.printf("BLE - Tip de Seguridad Deshabilitado\r\n");
fmanzano_dtk 1:9e821e640117 1369 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1370 #endif
fmanzano_dtk 1:9e821e640117 1371 break;
fmanzano_dtk 1:9e821e640117 1372
fmanzano_dtk 1:9e821e640117 1373 /** ********************************
fmanzano_dtk 1:9e821e640117 1374 * COMANDOS DE INFORMACIÓN ICS5
fmanzano_dtk 1:9e821e640117 1375 * ******************************** */
fmanzano_dtk 1:9e821e640117 1376 case CMD_QUERY_HARDWARE_VER:
fmanzano_dtk 1:9e821e640117 1377 sprintf(fmu_buffer, "%s%s", TCA_ID_HARDWARE_VERSION, hardware_version);
fmanzano_dtk 1:9e821e640117 1378 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1379 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1380 myPC_debug.printf("BLE - Consulta por Version de HW\r\n");
fmanzano_dtk 1:9e821e640117 1381 myPC_debug.printf("BLE - HW: %s\r\n", hardware_version);
fmanzano_dtk 1:9e821e640117 1382 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1383 #endif
fmanzano_dtk 1:9e821e640117 1384 break;
fmanzano_dtk 1:9e821e640117 1385
fmanzano_dtk 1:9e821e640117 1386 case CMD_QUERY_FIRMWARE_VER:
fmanzano_dtk 1:9e821e640117 1387 sprintf(fmu_buffer, "%s%s", TCA_ID_FIRMWARE_VERSION, firmware_version);
fmanzano_dtk 1:9e821e640117 1388 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1389 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1390 myPC_debug.printf("BLE - Consulta por Version de Firmware\r\n");
fmanzano_dtk 1:9e821e640117 1391 myPC_debug.printf("BLE - FW: %s\r\n", firmware_version);
fmanzano_dtk 1:9e821e640117 1392 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1393 #endif
fmanzano_dtk 1:9e821e640117 1394 break;
fmanzano_dtk 1:9e821e640117 1395
fmanzano_dtk 1:9e821e640117 1396 /** ********************************
fmanzano_dtk 1:9e821e640117 1397 * COMANDOS DE GEOCERCAS
fmanzano_dtk 1:9e821e640117 1398 * ******************************** */
fmanzano_dtk 1:9e821e640117 1399 case CMD_GEO_WARNING_ENABLE:
fmanzano_dtk 1:9e821e640117 1400 functionality_geo_warning = true;
fmanzano_dtk 1:9e821e640117 1401 ep.write(eprom_AddressArray[EE_Address_GEOZONE], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 1402 sprintf(fmu_buffer, "%s", TCA_ID_GEO_WARNING_ENABLE);
fmanzano_dtk 1:9e821e640117 1403 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1404 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1405 myPC_debug.printf("BLE - Habilitar Notificacion de Geocercas Controladas\r\n");
fmanzano_dtk 1:9e821e640117 1406 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1407 #endif
fmanzano_dtk 1:9e821e640117 1408 break;
fmanzano_dtk 1:9e821e640117 1409
fmanzano_dtk 1:9e821e640117 1410 case CMD_GEO_WARNING_DISABLE:
fmanzano_dtk 1:9e821e640117 1411 functionality_geo_warning = false;
fmanzano_dtk 1:9e821e640117 1412 ep.write(eprom_AddressArray[EE_Address_GEOZONE], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 1413 sprintf(fmu_buffer, "%s", TCA_ID_GEO_WARNING_DISABLE);
fmanzano_dtk 1:9e821e640117 1414 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1415 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1416 myPC_debug.printf("BLE - Deshabilitar Notificacion de Geocercas Controladas\r\n");
fmanzano_dtk 1:9e821e640117 1417 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1418 #endif
fmanzano_dtk 1:9e821e640117 1419 break;
fmanzano_dtk 1:9e821e640117 1420
fmanzano_dtk 1:9e821e640117 1421 case CMD_GEO_WARNING_QUERY:
fmanzano_dtk 1:9e821e640117 1422 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1423 myPC_debug.printf("BLE - Consulta por Notificacion de Geocercas Controladas\r\n");
fmanzano_dtk 1:9e821e640117 1424 myPC_debug.printf("BLE - Notificacion de Geocercas: %s\r\n", functionality_geo_warning?"TRUE":"FALSE");
fmanzano_dtk 1:9e821e640117 1425 #endif
fmanzano_dtk 1:9e821e640117 1426 if (functionality_geo_warning) {
fmanzano_dtk 1:9e821e640117 1427 sprintf(fmu_buffer, "%s", TCA_ID_GEO_WARNING_QUERY_ON);
fmanzano_dtk 1:9e821e640117 1428 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1429 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1430 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1431 #endif
fmanzano_dtk 1:9e821e640117 1432 } else {
fmanzano_dtk 1:9e821e640117 1433 sprintf(fmu_buffer, "%s", TCA_ID_GEO_WARNING_QUERY_OFF);
fmanzano_dtk 1:9e821e640117 1434 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1435 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1436 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1437 #endif
fmanzano_dtk 1:9e821e640117 1438 }
fmanzano_dtk 1:9e821e640117 1439 break;
fmanzano_dtk 1:9e821e640117 1440
fmanzano_dtk 1:9e821e640117 1441
fmanzano_dtk 1:9e821e640117 1442 /** ********************************
fmanzano_dtk 1:9e821e640117 1443 * COMANDOS DE AUTORESET BLUETOOTH
fmanzano_dtk 1:9e821e640117 1444 * ******************************** */
fmanzano_dtk 1:9e821e640117 1445 case CMD_BLE_AUTORESET_ENABLE:
fmanzano_dtk 1:9e821e640117 1446 functionality_ble_autoreset = true;
fmanzano_dtk 1:9e821e640117 1447 ep.write(eprom_AddressArray[EE_Address_BLE_RESET], ((uint16_t) true));
fmanzano_dtk 1:9e821e640117 1448 tick_autoreset_ble.detach();
fmanzano_dtk 1:9e821e640117 1449 tick_autoreset_ble.attach(&BLE_reset, time_ble_autoreset);
fmanzano_dtk 1:9e821e640117 1450 sprintf(fmu_buffer, "%s", TCA_ID_BLE_AUTORESET_ENA);
fmanzano_dtk 1:9e821e640117 1451 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1452 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1453 myPC_debug.printf("BLE - Habilitar Autoreset de Bluetooth\r\n");
fmanzano_dtk 1:9e821e640117 1454 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1455 #endif
fmanzano_dtk 1:9e821e640117 1456 break;
fmanzano_dtk 1:9e821e640117 1457
fmanzano_dtk 1:9e821e640117 1458 case CMD_BLE_AUTORESET_DISABLE:
fmanzano_dtk 1:9e821e640117 1459 functionality_ble_autoreset = false;
fmanzano_dtk 1:9e821e640117 1460 ep.write(eprom_AddressArray[EE_Address_BLE_RESET], ((uint16_t) false));
fmanzano_dtk 1:9e821e640117 1461 tick_autoreset_ble.detach();
fmanzano_dtk 1:9e821e640117 1462 sprintf(fmu_buffer, "%s", TCA_ID_BLE_AUTORESET_DIS);
fmanzano_dtk 1:9e821e640117 1463 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1464 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1465 myPC_debug.printf("BLE - Deshabilitar Autoreset de Bluetooth\r\n");
fmanzano_dtk 1:9e821e640117 1466 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1467 #endif
fmanzano_dtk 1:9e821e640117 1468 break;
fmanzano_dtk 1:9e821e640117 1469
fmanzano_dtk 1:9e821e640117 1470 case CMD_BLE_AUTORESET_TIME:
fmanzano_dtk 1:9e821e640117 1471 ep.write(eprom_AddressArray[EE_Address_BLE_RESET_T], ((uint16_t) fingerprint_id));
fmanzano_dtk 1:9e821e640117 1472 time_ble_autoreset = fingerprint_id * 1.0;
fmanzano_dtk 1:9e821e640117 1473 if (functionality_ble_autoreset) {
fmanzano_dtk 1:9e821e640117 1474 tick_autoreset_ble.detach();
fmanzano_dtk 1:9e821e640117 1475 tick_autoreset_ble.attach(&BLE_reset, time_ble_autoreset);
fmanzano_dtk 1:9e821e640117 1476 }
fmanzano_dtk 1:9e821e640117 1477 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1478 myPC_debug.printf("BLE - Cambio Temp. Autoreset de Bluetooth\n");
fmanzano_dtk 1:9e821e640117 1479 myPC_debug.printf("BLE - Nuevo Temp. para muestreo: %d seg\r\n", fingerprint_id);
fmanzano_dtk 1:9e821e640117 1480 #endif
fmanzano_dtk 1:9e821e640117 1481 break;
fmanzano_dtk 1:9e821e640117 1482
fmanzano_dtk 1:9e821e640117 1483 case CMD_BLE_AUTORESET_QUERY:
fmanzano_dtk 1:9e821e640117 1484 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1485 myPC_debug.printf("BLE - Consulta por Autoreset de Bluetooth\r\n");
fmanzano_dtk 1:9e821e640117 1486 myPC_debug.printf("BLE - Autoreset de Bluetooth: %s\r\n", functionality_ble_autoreset?"TRUE":"FALSE");
fmanzano_dtk 1:9e821e640117 1487 myPC_debug.printf("BLE - Tiempo Autoreset de Bluetooth: %.1f\r\n", time_ble_autoreset);
fmanzano_dtk 1:9e821e640117 1488
fmanzano_dtk 1:9e821e640117 1489 #endif
fmanzano_dtk 1:9e821e640117 1490 if (functionality_ble_autoreset) {
fmanzano_dtk 1:9e821e640117 1491 sprintf(fmu_buffer, "%s%.0f", TCA_ID_BLE_AUTORESET_qENA, time_ble_autoreset);
fmanzano_dtk 1:9e821e640117 1492 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1493 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1494 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1495 #endif
fmanzano_dtk 1:9e821e640117 1496 } else {
fmanzano_dtk 1:9e821e640117 1497 sprintf(fmu_buffer, "%s%.0f", TCA_ID_BLE_AUTORESET_qDIS, time_ble_autoreset);
fmanzano_dtk 1:9e821e640117 1498 tx_fmu130_message(fmu_buffer, &avl_uart);
fmanzano_dtk 1:9e821e640117 1499 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1500 myPC_debug.printf("%s\r\n", fmu_buffer);
fmanzano_dtk 1:9e821e640117 1501 #endif
fmanzano_dtk 1:9e821e640117 1502 }
fmanzano_dtk 1:9e821e640117 1503 break;
fmanzano_dtk 1:9e821e640117 1504
fmanzano_dtk 1:9e821e640117 1505 default:
fmanzano_dtk 1:9e821e640117 1506 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1507 myPC_debug.printf("BLE - Comando no identificado\r\n");
fmanzano_dtk 1:9e821e640117 1508 #endif
fmanzano_dtk 1:9e821e640117 1509 break;
fmanzano_dtk 1:9e821e640117 1510 }
fmanzano_dtk 1:9e821e640117 1511
fmanzano_dtk 1:9e821e640117 1512 } else {
fmanzano_dtk 1:9e821e640117 1513 // Error trama incompleta.
fmanzano_dtk 1:9e821e640117 1514 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1515 myPC_debug.printf("BLE - Trama incompleta\r\n");
fmanzano_dtk 1:9e821e640117 1516 #endif
fmanzano_dtk 1:9e821e640117 1517 }
fmanzano_dtk 1:9e821e640117 1518 /* DESHABILITADA LA FUNCIÓN DE SLEEP EN EL LECTOR
fmanzano_dtk 1:9e821e640117 1519 fingerprint.Sleep();
fmanzano_dtk 1:9e821e640117 1520 flag_fingerprint_Sleep = true;
fmanzano_dtk 1:9e821e640117 1521 myPC_debug.printf("BLE - GT521Fx@Sleep\r\n");
fmanzano_dtk 1:9e821e640117 1522 */
fmanzano_dtk 1:9e821e640117 1523 break;
fmanzano_dtk 1:9e821e640117 1524
fmanzano_dtk 1:9e821e640117 1525 default:
fmanzano_dtk 1:9e821e640117 1526 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1527 myPC_debug.printf("BLE - Trama no identificada\r\n");
fmanzano_dtk 1:9e821e640117 1528 myPC_debug.printf("BLE PAYLOAD:\r\n%s\r\n", fmu130_payload);
fmanzano_dtk 1:9e821e640117 1529 #endif
fmanzano_dtk 1:9e821e640117 1530 break;
fmanzano_dtk 1:9e821e640117 1531 }
fmanzano_dtk 1:9e821e640117 1532 } else {
fmanzano_dtk 1:9e821e640117 1533 #ifdef DEBUG_FMU130_CPP
fmanzano_dtk 1:9e821e640117 1534 myPC_debug.printf("BLE - Sin bytes recibidos\r\n");
fmanzano_dtk 1:9e821e640117 1535 #endif
fmanzano_dtk 1:9e821e640117 1536 }
fmanzano_dtk 1:9e821e640117 1537 }