Proyecto ABInBev para la tarjeta Guaria 1/2.

Committer:
fmanzano_dtk
Date:
Mon Jul 04 22:28:16 2022 -0600
Revision:
5:07720e3f99d2
Parent:
3:6e55713bc91d
Child:
7:01141979e5f2
Se restaura la libreria de Flash como alternativa adicional a la memoria externa de EEPROM

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