{"id":2224,"date":"2020-03-04T07:56:40","date_gmt":"2020-03-04T12:56:40","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/edelros\/?p=2224"},"modified":"2020-09-23T18:30:07","modified_gmt":"2020-09-23T23:30:07","slug":"lora-multipunto-temperatura-humedad-dispositivo-archivo-ino","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/girni\/lora-multipunto-temperatura-humedad-dispositivo-archivo-ino\/","title":{"rendered":"3.3 LoRa multipunto - Temperatura, Humedad: Dispositivo Archivo.ino"},"content":{"rendered":"<h4>1. Instrucciones en Arduino IDE<\/h4>\n<p>Para facilitar la programaci\u00f3n, se separan en funciones las acciones para enviar y recibir mensajes Lora y las de manejo de sensor\/actuador.<\/p>\n<p>El sensor DTH-11 se conecta al pin 13<\/p>\n<p>El sensor de bateria se conecta al pin 36 como entrada anal\u00f3gica.<\/p>\n<pre><span style=\"color: #95a5a6\">\/*<\/span>\n<span style=\"color: #95a5a6\"> \u00a0Dispositivo Sensor Temperatura y Humedad con DHT11<\/span>\n<span style=\"color: #95a5a6\"> \u00a0Broker: MQTT\/Home-Assistant<\/span>\n<span style=\"color: #95a5a6\"> \u00a0Red ruta: LoRa\/WiFi\/Ethernet<\/span>\n<span style=\"color: #95a5a6\"> \u00a0edelros@espol.edu.ec<\/span>\n<span style=\"color: #95a5a6\"> \u00a0<\/span><u><span style=\"color: #95a5a6\">http:\/\/blog.espol.edu.ec\/edelros\/<\/span><\/u>\n<span style=\"color: #95a5a6\"> \u00a0Referencia: Ejemplos de Aaron.Lee <\/span><u><span style=\"color: #95a5a6\">www.heltec.cn<\/span><\/u>\n<span style=\"color: #95a5a6\">*\/<\/span>\n<span style=\"color: #5e6d03\">#include<\/span> <span style=\"color: #005c5f\">\"heltec.h\"<\/span>\n<span style=\"color: #5e6d03\">#include<\/span> <span style=\"color: #005c5f\">\"DHT.h\"<\/span>\n\n<span style=\"color: #434f54\">\/\/ Sensor de Temperatura&amp;Humedad<\/span>\n<span style=\"color: #5e6d03\">#define<\/span> <span style=\"color: #000000\">DHTPIN<\/span> <span style=\"color: #000000\">13<\/span>\n<span style=\"color: #5e6d03\">#define<\/span> <span style=\"color: #000000\">DHTTYPE<\/span> <span style=\"color: #000000\">DHT11<\/span> \n<b><span style=\"color: #d35400\">DHT<\/span><\/b> <span style=\"color: #000000\">dht<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">DHTPIN<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #000000\">DHTTYPE<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n<span style=\"color: #00979c\">String<\/span> <span style=\"color: #000000\">temperatura<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #005c5f\">\"\"<\/span><span style=\"color: #000000\">;<\/span>\n<span style=\"color: #00979c\">String<\/span> <span style=\"color: #000000\">humedad<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #005c5f\">\"\"<\/span><span style=\"color: #000000\">;<\/span> \n\n<span style=\"color: #434f54\">\/\/ Sensor de Bateria<\/span>\n<span style=\"color: #5e6d03\"># define<\/span> <span style=\"color: #000000\">BattPIN<\/span> <span style=\"color: #000000\">36<\/span>\n<span style=\"color: #00979c\">String<\/span> <span style=\"color: #000000\">battNivel<\/span><span style=\"color: #000000\">;<\/span>\n\n<span style=\"color: #434f54\">\/\/Banda LoRa 915Mhz - ISM en Regi\u00f3n <\/span>\n<span style=\"color: #5e6d03\">#define<\/span> <span style=\"color: #000000\">BAND<\/span> \u00a0<span style=\"color: #000000\">915E6<\/span> <span style=\"color: #434f54\">\/\/ 433E6,868E6,915E6<\/span>\n<span style=\"color: #434f54\">\/\/ ranges from 6-12,default 7 see API docs<\/span>\n<span style=\"color: #00979c\">byte<\/span> <span style=\"color: #000000\">spread_factor<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">8<\/span><span style=\"color: #000000\">;<\/span>\n\n<span style=\"color: #434f54\">\/\/ Mensaje a enviar por direcciones<\/span>\n<span style=\"color: #00979c\">byte<\/span> <span style=\"color: #000000\">dir_local<\/span> \u00a0\u00a0<span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">0xD1<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/ Dispositivo \u00a01<\/span>\n<span style=\"color: #00979c\">byte<\/span> <span style=\"color: #000000\">dir_destino<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">0xC1<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/ Concentrador 1<\/span>\n<span style=\"color: #434f54\">\/\/ identificador de mensaje<\/span>\n<span style=\"color: #00979c\">byte<\/span> <span style=\"color: #000000\">msjContador<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">0<\/span><span style=\"color: #000000\">;<\/span>\n<span style=\"color: #434f54\">\/\/ tiempo entre lecturas<\/span>\n<span style=\"color: #00979c\">long<\/span> <span style=\"color: #000000\">t_anterior<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">0<\/span><span style=\"color: #000000\">;<\/span>\n<span style=\"color: #00979c\">int<\/span> \u00a0<span style=\"color: #000000\">t_intervalo<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">5000<\/span><span style=\"color: #000000\">;<\/span>\n\n<span style=\"color: #434f54\">\/\/ Mensaje Recibido<\/span>\n<span style=\"color: #00979c\">byte<\/span> <span style=\"color: #000000\">dir_envio<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">0xC1<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/ Concentrador 1<\/span>\n<span style=\"color: #00979c\">int<\/span> <span style=\"color: #000000\">dir_remite<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">0xD0<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/ Inicia Remitente<\/span>\n<span style=\"color: #00979c\">String<\/span> <span style=\"color: #000000\">paqueteRcb<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #005c5f\">\"\"<\/span><span style=\"color: #000000\">;<\/span>\n<span style=\"color: #00979c\">byte<\/span> \u00a0\u00a0<span style=\"color: #000000\">paqrcbvID<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">0<\/span><span style=\"color: #000000\">;<\/span>\n<span style=\"color: #00979c\">byte<\/span> \u00a0\u00a0<span style=\"color: #000000\">paqrcbEstado<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">0<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #434f54\">\/\/ 0:vacio, 1: nuevo, 2:incompleto<\/span>\n \u00a0<span style=\"color: #434f54\">\/\/ 3:otro destinatario, 4:Broadcast<\/span>\n\n <span style=\"color: #434f54\">\/\/ Mensajes por Puerto Serial<\/span>\n<span style=\"color: #00979c\">volatile<\/span> <span style=\"color: #00979c\">boolean<\/span> <span style=\"color: #000000\">serial_msj<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #00979c\">true<\/span><span style=\"color: #000000\">;<\/span>\n\n<span style=\"color: #00979c\">void<\/span> <span style=\"color: #5e6d03\">setup<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0<span style=\"color: #d35400\">Heltec<\/span><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">begin<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #00979c\">false<\/span> <span style=\"color: #95a5a6\">\/*DisplayEnable Enable*\/<\/span><span style=\"color: #434f54\">,<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #00979c\">true<\/span> <span style=\"color: #95a5a6\">\/*Heltec.Heltec.Heltec.LoRa Disable*\/<\/span><span style=\"color: #434f54\">,<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">serial_msj<\/span> <span style=\"color: #95a5a6\">\/*Serial Enable*\/<\/span><span style=\"color: #434f54\">,<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #00979c\">true<\/span> <span style=\"color: #95a5a6\">\/*PABOOST Enable*\/<\/span><span style=\"color: #434f54\">,<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">BAND<\/span> <span style=\"color: #95a5a6\">\/*long BAND*\/<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\n \u00a0<span style=\"color: #434f54\">\/\/ ranges from 6-12,default 7 see API docs<\/span>\n \u00a0<b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">setSpreadingFactor<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">spread_factor<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #434f54\">\/\/LoRa.onReceive(cbk);<\/span>\n \u00a0<b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">receive<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n\n \u00a0<span style=\"color: #434f54\">\/\/inicializa sensores<\/span>\n \u00a0<span style=\"color: #d35400\">pinMode<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">DHTPIN<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #00979c\">INPUT<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">dht<\/span><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">begin<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #d35400\">pinMode<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">BattPIN<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #00979c\">INPUT<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">}<\/span>\n\n<span style=\"color: #00979c\">void<\/span> <span style=\"color: #5e6d03\">loop<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0<span style=\"color: #434f54\">\/\/ Enviar mensajes entre intervalos<\/span>\n \u00a0<span style=\"color: #00979c\">long<\/span> <span style=\"color: #000000\">t_ahora<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #d35400\">millis<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #00979c\">long<\/span> <span style=\"color: #000000\">t_transcurrido<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">t_ahora<\/span> <span style=\"color: #434f54\">-<\/span> <span style=\"color: #000000\">t_anterior<\/span><span style=\"color: #000000\">;<\/span>\n\n \u00a0<span style=\"color: #434f54\">\/\/ parametros de recepci\u00f3n<\/span>\n \u00a0<span style=\"color: #00979c\">int<\/span> <span style=\"color: #000000\">rssi_lora<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">0<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #00979c\">int<\/span> <span style=\"color: #000000\">snr_lora<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">0<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\n \u00a0<span style=\"color: #5e6d03\">if<\/span> <span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">t_transcurrido<\/span> <span style=\"color: #434f54\">&gt;=<\/span> <span style=\"color: #000000\">t_intervalo<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">sensorLeeDHT<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/actualiza estado del sensor<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">sensorBateria<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/ actualiza estado de bateria<\/span>\n \u00a0\u00a0\u00a0\n \u00a0\u00a0\u00a0<span style=\"color: #434f54\">\/\/ Construye paquete a enviar<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #00979c\">String<\/span> <span style=\"color: #000000\">paqueteEnv<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #005c5f\">\"\"<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">paqueteEnv<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">paqueteEnv<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #005c5f\">\"t\"<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #000000\">temperatura<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">paqueteEnv<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">paqueteEnv<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #005c5f\">\"|\"<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">paqueteEnv<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">paqueteEnv<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #005c5f\">\"h\"<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #000000\">humedad<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">paqueteEnv<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">paqueteEnv<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #005c5f\">\"|\"<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">paqueteEnv<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">paqueteEnv<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #005c5f\">\"v\"<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #000000\">battNivel<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">enviarlora<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">dir_destino<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #000000\">dir_local<\/span><span style=\"color: #434f54\">,<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #000000\">msjContador<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #000000\">paqueteEnv<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">msjContador<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">msjContador<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #000000\">1<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\n \u00a0\u00a0\u00a0<span style=\"color: #434f54\">\/\/ parametros de recepci\u00f3n<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">rssi_lora<\/span> <span style=\"color: #434f54\">=<\/span> <b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">packetRssi<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">snr_lora<\/span> <span style=\"color: #434f54\">=<\/span> <b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">packetSnr<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #d35400\">yield<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\n \u00a0\u00a0\u00a0<span style=\"color: #434f54\">\/\/ mensaje a serial<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03\">if<\/span> <span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">serial_msj<\/span><span style=\"color: #434f54\">==<\/span><span style=\"color: #00979c\">true<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #00979c\">String<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">dir_destino<\/span><span style=\"color: #434f54\">,<\/span><span style=\"color: #00979c\">HEX<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #005c5f\">\",\"<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #00979c\">String<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">dir_local<\/span><span style=\"color: #434f54\">,<\/span><span style=\"color: #00979c\">HEX<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #005c5f\">\",\"<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">msjContador<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span><b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #005c5f\">\",\"<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">paqueteEnv<\/span><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">length<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span><b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #005c5f\">\",\"<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">paqueteEnv<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span><b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #005c5f\">\",\"<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">rssi_lora<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span><b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #005c5f\">\",\"<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">println<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">snr_lora<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">}<\/span>\n \u00a0\u00a0\u00a0\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">t_anterior<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #d35400\">millis<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">t_intervalo<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">3000<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #d35400\">random<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">2000<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\n \u00a0\u00a0\u00a0<span style=\"color: #434f54\">\/\/ LED parpadea envio lora<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #d35400\">digitalWrite<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">LED<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #00979c\">HIGH<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #d35400\">delay<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">100<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #d35400\">digitalWrite<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">LED<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #00979c\">LOW<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span> \u00a0<span style=\"color: #d35400\">delay<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">100<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #d35400\">yield<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/ procesa wifi<\/span>\n \u00a0<span style=\"color: #000000\">}<\/span>\n\n \u00a0<span style=\"color: #434f54\">\/\/ Revisar mensajes LoRa entrantes<\/span>\n \u00a0<span style=\"color: #00979c\">int<\/span> <span style=\"color: #000000\">msjRcbLoRa<\/span> <span style=\"color: #434f54\">=<\/span> <b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">parsePacket<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #5e6d03\">if<\/span> <span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">msjRcbLoRa<\/span> <span style=\"color: #434f54\">!=<\/span><span style=\"color: #000000\">0<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">recibirlora<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">msjRcbLoRa<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">rssi_lora<\/span> <span style=\"color: #434f54\">=<\/span> <b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">packetRssi<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">snr_lora<\/span> <span style=\"color: #434f54\">=<\/span> <b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">packetSnr<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03\">if<\/span> <span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">serial_msj<\/span><span style=\"color: #434f54\">==<\/span><span style=\"color: #00979c\">true<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #5e6d03\">if<\/span> <span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">paqrcbEstado<\/span> <span style=\"color: #434f54\">==<\/span> <span style=\"color: #000000\">1<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">println<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #005c5f\">\"Mensaje: \"<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #000000\">paqueteRcb<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">println<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #005c5f\">\"RSSI: \"<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #00979c\">String<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">rssi_lora<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">println<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #005c5f\">\"Snr: \"<\/span> <span style=\"color: #434f54\">+<\/span> <span style=\"color: #00979c\">String<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">snr_lora<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">println<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #000000\">}<\/span><span style=\"color: #5e6d03\">else<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #005c5f\">\"Paquete recibido Estado: \"<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">println<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">paqrcbEstado<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #000000\">}<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">}<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #d35400\">yield<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/ procesa wifi<\/span>\n \u00a0\u00a0\u00a0\n \u00a0\u00a0\u00a0<span style=\"color: #434f54\">\/\/ LED parpadea Recibido Lora<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #d35400\">digitalWrite<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">LED<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #00979c\">HIGH<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #d35400\">delay<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">50<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #d35400\">digitalWrite<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">LED<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #00979c\">LOW<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #d35400\">delay<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">50<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #d35400\">digitalWrite<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">LED<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #00979c\">HIGH<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #d35400\">delay<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">50<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #d35400\">digitalWrite<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">LED<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #00979c\">LOW<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">}<\/span>\n \u00a0<span style=\"color: #d35400\">delay<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">100<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #d35400\">yield<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/ procesa wifi<\/span>\n<span style=\"color: #000000\">}<\/span>\n\n<span style=\"color: #00979c\">void<\/span> <span style=\"color: #000000\">enviarlora<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #00979c\">byte<\/span> <span style=\"color: #000000\">destino<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #00979c\">byte<\/span> <span style=\"color: #000000\">remite<\/span><span style=\"color: #434f54\">,<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #00979c\">byte<\/span> <span style=\"color: #000000\">paqueteID<\/span><span style=\"color: #434f54\">,<\/span> <span style=\"color: #00979c\">String<\/span> <span style=\"color: #000000\">paquete<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0<span style=\"color: #434f54\">\/\/ espera que el radio est\u00e9 listo<\/span>\n \u00a0<span style=\"color: #434f54\">\/\/ para enviar un paquete<\/span>\n \u00a0<span style=\"color: #5e6d03\">while<\/span><span style=\"color: #000000\">(<\/span><b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">beginPacket<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span> <span style=\"color: #434f54\">==<\/span> <span style=\"color: #000000\">0<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03\">if<\/span> <span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">serial_msj<\/span><span style=\"color: #434f54\">==<\/span><span style=\"color: #00979c\">true<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0\u00a0\u00a0\u00a0\u00a0<b><span style=\"color: #d35400\">Serial<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">println<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #005c5f\">\"Esperando radio disponible...\"<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">}<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #d35400\">yield<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/ procesa wifi<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #d35400\">delay<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">100<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">}<\/span>\n \u00a0<span style=\"color: #434f54\">\/\/ envio del mensaje LoRa<\/span>\n \u00a0<b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">beginPacket<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">write<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">destino<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">write<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">remite<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">write<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">paqueteID<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">write<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">paquete<\/span><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">length<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">print<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">paquete<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">endPacket<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n<span style=\"color: #000000\">}<\/span>\n\n<span style=\"color: #00979c\">void<\/span> <span style=\"color: #000000\">recibirlora<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #00979c\">int<\/span> <span style=\"color: #000000\">tamano<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0<span style=\"color: #5e6d03\">if<\/span> <span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">tamano<\/span> <span style=\"color: #434f54\">==<\/span> <span style=\"color: #000000\">0<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span> \n \u00a0\u00a0\u00a0<span style=\"color: #000000\">paqrcbEstado<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">0<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/vacio<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03\">return<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">}<\/span>\n \u00a0<span style=\"color: #434f54\">\/\/ lectura de paquete<\/span>\n \u00a0<span style=\"color: #000000\">paqueteRcb<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #005c5f\">\"\"<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">dir_envio<\/span> <span style=\"color: #434f54\">=<\/span> <b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">read<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">dir_remite<\/span> \u00a0<span style=\"color: #434f54\">=<\/span> <b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">read<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">paqrcbvID<\/span> <span style=\"color: #434f54\">=<\/span> <b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">read<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #00979c\">byte<\/span> <span style=\"color: #000000\">paqrcbTamano<\/span> <span style=\"color: #434f54\">=<\/span> <b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">read<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #5e6d03\">while<\/span><span style=\"color: #000000\">(<\/span><b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">available<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">paqueteRcb<\/span> <span style=\"color: #434f54\">+=<\/span> <span style=\"color: #000000\">(<\/span><span style=\"color: #00979c\">char<\/span><span style=\"color: #000000\">)<\/span><b><span style=\"color: #d35400\">LoRa<\/span><\/b><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">read<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">}<\/span>\n \u00a0<span style=\"color: #5e6d03\">if<\/span> <span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">paqrcbTamano<\/span> <span style=\"color: #434f54\">!=<\/span> <span style=\"color: #000000\">paqueteRcb<\/span><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">length<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">paqrcbEstado<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">2<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/ Tama\u00f1o incompleto<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03\">return<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">}<\/span>\n \u00a0<span style=\"color: #5e6d03\">if<\/span> <span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">dir_envio<\/span> <span style=\"color: #434f54\">!=<\/span> <span style=\"color: #000000\">dir_local<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">paqrcbEstado<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">3<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/ otro destino<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03\">return<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">}<\/span>\n \u00a0<span style=\"color: #5e6d03\">if<\/span> <span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">dir_envio<\/span> <span style=\"color: #434f54\">==<\/span> <span style=\"color: #000000\">0xFF<\/span><span style=\"color: #000000\">)<\/span> <span style=\"color: #000000\">{<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #000000\">paqrcbEstado<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">4<\/span><span style=\"color: #000000\">;<\/span> <span style=\"color: #434f54\">\/\/ Broadcast<\/span>\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03\">return<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">}<\/span>\n \u00a0<span style=\"color: #000000\">paqrcbEstado<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">1<\/span><span style=\"color: #000000\">;<\/span> \u00a0<span style=\"color: #434f54\">\/\/ mensaje Nuevo<\/span>\n<span style=\"color: #000000\">}<\/span>\n\n<span style=\"color: #434f54\">\/\/ Sensor lecturas<\/span>\n<span style=\"color: #00979c\">void<\/span> <span style=\"color: #000000\">sensorLeeDHT<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0<span style=\"color: #000000\">humedad<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #00979c\">String<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #00979c\">int<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">dht<\/span><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">readHumidity<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #434f54\">.<\/span><span style=\"color: #000000\">c_str<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">temperatura<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #00979c\">String<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">dht<\/span><span style=\"color: #434f54\">.<\/span><span style=\"color: #d35400\">readTemperature<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #434f54\">.<\/span><span style=\"color: #000000\">c_str<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n<span style=\"color: #000000\">}<\/span>\n\n<span style=\"color: #00979c\">void<\/span> <span style=\"color: #000000\">sensorBateria<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">{<\/span>\n \u00a0<span style=\"color: #00979c\">int<\/span> <span style=\"color: #000000\">lectura<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #d35400\">analogRead<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">BattPIN<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #434f54\">\/\/ convierte a equivalente en voltios<\/span>\n \u00a0<span style=\"color: #00979c\">float<\/span> <span style=\"color: #000000\">voltaje<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #000000\">(<\/span><span style=\"color: #00979c\">float<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">lectura<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #434f54\">\/<\/span><span style=\"color: #000000\">4096.0<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #434f54\">*<\/span><span style=\"color: #000000\">4.2<\/span><span style=\"color: #434f54\">*<\/span><span style=\"color: #000000\">3.0<\/span><span style=\"color: #434f54\">\/<\/span><span style=\"color: #000000\">2.0<\/span><span style=\"color: #000000\">;<\/span>\n \u00a0<span style=\"color: #000000\">battNivel<\/span> <span style=\"color: #434f54\">=<\/span> <span style=\"color: #00979c\">String<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">voltaje<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #434f54\">.<\/span><span style=\"color: #000000\">c_str<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #000000\">)<\/span><span style=\"color: #000000\">;<\/span>\n<span style=\"color: #000000\">}<\/span>\n\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>1. Instrucciones en Arduino IDE Para facilitar la programaci\u00f3n, se separan en funciones las acciones para enviar y recibir mensajes Lora y las de manejo de sensor\/actuador. El sensor DTH-11 se conecta al pin 13 El sensor de bateria se conecta al pin 36 como entrada anal\u00f3gica. \/* \u00a0Dispositivo Sensor Temperatura y Humedad con DHT11 &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/blog.espol.edu.ec\/girni\/lora-multipunto-temperatura-humedad-dispositivo-archivo-ino\/\" class=\"more-link\">Continuar leyendo<span class=\"screen-reader-text\"> \"3.3 LoRa multipunto - Temperatura, Humedad: Dispositivo Archivo.ino\"<\/span><\/a><\/p>\n","protected":false},"author":8043,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1457942],"tags":[602214,1457738],"class_list":["post-2224","post","type-post","status-publish","format-standard","hentry","category-lora-multpunto-temperatura-humedad","tag-iot","tag-lora"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/girni\/wp-json\/wp\/v2\/posts\/2224","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/girni\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/girni\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/girni\/wp-json\/wp\/v2\/users\/8043"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/girni\/wp-json\/wp\/v2\/comments?post=2224"}],"version-history":[{"count":2,"href":"https:\/\/blog.espol.edu.ec\/girni\/wp-json\/wp\/v2\/posts\/2224\/revisions"}],"predecessor-version":[{"id":2563,"href":"https:\/\/blog.espol.edu.ec\/girni\/wp-json\/wp\/v2\/posts\/2224\/revisions\/2563"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/girni\/wp-json\/wp\/v2\/media?parent=2224"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/girni\/wp-json\/wp\/v2\/categories?post=2224"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/girni\/wp-json\/wp\/v2\/tags?post=2224"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}