Diferència entre revisions de la pàgina «26 / 3 / 2022 - Tecnologías IoT, Hands on y MVP»

De binefa.com
Salta a la navegació Salta a la cerca
(Es crea la pàgina amb «= Conceptos previos (25 / 3 / 2022) = - Noción de broker MQTT (Mosquitto). ''Broker'': '''vps656540.ovh.net''' ''Usuario'': '''user''' ''Contraseña'': '''pass''' -...».)
 
 
(Hi ha 17 revisions intermèdies del mateix usuari que no es mostren)
Línia 1: Línia 1:
 
= Conceptos previos (25 / 3 / 2022) =
 
= Conceptos previos (25 / 3 / 2022) =
- Noción de broker MQTT (Mosquitto). ''Broker'': '''vps656540.ovh.net''' ''Usuario'': '''user''' ''Contraseña'': '''pass'''
+
- Noción de broker MQTT (Mosquitto). ''Broker'': '''vps656540.ovh.net''' ''Usuario'': '''user''' ''Contraseña'': '''pass''' (Puerto TCP: '''1883''', Puerto ws: '''8080''')
  
 
- Noción de Node-RED como a app de Node
 
- Noción de Node-RED como a app de Node
Línia 17: Línia 17:
 
Pautas y tablas de conversión hechas por [https://github.com/pixavier Xavier Pi]:
 
Pautas y tablas de conversión hechas por [https://github.com/pixavier Xavier Pi]:
  
[https://binefa.cat/training/upcSchool/conversionPseudocodigo/Pi_Algoritmo2C.pdf Pautas de conversión de un algoritmo a C]
+
[https://www.binefa.cat/training/upcSchool/conversionPseudocodigo/Pi_Algoritmo2C.pdf Pautas de conversión de un algoritmo a C]
  
[https://binefa.cat/training/upcSchool/conversionPseudocodigo/Pi_Algoritmo2ES6.pdf Tabla de conversión de un algoritmo a JavaScript (Node.js, ES6)]
+
[https://www.binefa.cat/training/upcSchool/conversionPseudocodigo/Pi_Algoritmo2ES6.pdf Tabla de conversión de un algoritmo a JavaScript (Node.js, ES6)]
  
[https://binefa.cat/training/upcSchool/conversionPseudocodigo/Pi_Algoritmo2Python.pdf Pautas de conversión de un algoritmo a Python]
+
[https://www.binefa.cat/training/upcSchool/conversionPseudocodigo/Pi_Algoritmo2Python.pdf Pautas de conversión de un algoritmo a Python]
  
[https://binefa.cat/training/upcSchool/conversionPseudocodigo/Pi_Algoritmo2Snap.pdf Tabla de conversión de un algoritmo a Snap!]
+
[https://www.binefa.cat/training/upcSchool/conversionPseudocodigo/Pi_Algoritmo2Snap.pdf Tabla de conversión de un algoritmo a Snap!]
 
<!--
 
<!--
 
putty vps656540.ovh.net
 
putty vps656540.ovh.net
Línia 47: Línia 47:
 
= Temario (26 / 3 / 2022) =
 
= Temario (26 / 3 / 2022) =
 
== Introducción a la placa IoT-02 ==
 
== Introducción a la placa IoT-02 ==
 +
[https://www.binefa.cat/training/iot02/pdf/iot02_00_es.pdf Introducción a la placa IoT-02 en castellano] en pdf ([https://www.binefa.cat/training/iot02/pdf/iot02_00_ca.pdf ''Introducció a la placa IoT-02'' en catalán])
 +
 +
[http://rebost.binefa.cat/iot/videos/01_Intro_placa_IoT-02_es.mkv Vídeo introductorio a la placa IoT-02]
 +
 +
[http://rebost.binefa.cat/iot/videos/02_IDE_Arduino_ESP32_es.mkv Vídeo de instalación del Arduino IDE y algunas bibliotecas extra para probar los códigos en la placa IoT-02]
  
 
[[Añadir ESP32 al IDE de Arduino]]
 
[[Añadir ESP32 al IDE de Arduino]]
Línia 52: Línia 57:
 
[[Image:14upcSchool.jpg|center|thumb|Placa IoT-02]]
 
[[Image:14upcSchool.jpg|center|thumb|Placa IoT-02]]
  
[https://binefa.cat/training/upcSchool/20200516/IoT-02_11_modbus_bme280.zip Firmware comprimido en zip de test de la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_11_modbus_bme280 IoT-02_11_modbus_bme280 en GitHub]. Este es el ''firmware'' que iba instalado cuando os llegó la placa.  
+
[https://www.binefa.cat/training/iot02/IoT-02_11_modbus_bme280.zip Firmware comprimido en zip de test de la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_11_modbus_bme280 IoT-02_11_modbus_bme280 en GitHub]. Este es el ''firmware'' que iba instalado cuando os llegó la placa.  
  
 
Muestra en línea del ejemplo inicial con microrruptores, relés ''reed'' y relés convencionales:
 
Muestra en línea del ejemplo inicial con microrruptores, relés ''reed'' y relés convencionales:
Línia 84: Línia 89:
 
[[Image:13spiRfm95.jpg|center|thumb|Placa IoT-02 con el módulo LoRa (RFM95)]]
 
[[Image:13spiRfm95.jpg|center|thumb|Placa IoT-02 con el módulo LoRa (RFM95)]]
  
Este puerto está implementado en la placa IoT-02 para la parte de LoRaWAN (control del RFM95). Debido a la circunstancia excepcional de no realizar las clases presencialmente no se puede garantizar la cobertura de pasarelas LoRa en todas las ubicaciones donde están los alumnos. Por eso se ha optado por no proporcionarlo, ante la desventaja que supone tener que conectar siempre la antena de 868MHz si el módulo RFM95 está soldado.
+
Este puerto está implementado en la placa IoT-02 para la parte de LoRaWAN (control del RFM95). <!-- Debido a la circunstancia excepcional de no realizar las clases presencialmente no se puede garantizar la cobertura de pasarelas LoRa en todas las ubicaciones donde están los alumnos. Por eso se ha optado por no proporcionarlo, ante la desventaja que supone tener que conectar siempre la antena de 868MHz si el módulo RFM95 está soldado. -->
  
 
=== I2C ===
 
=== I2C ===
Línia 93: Línia 98:
 
[[Image:10i2cScanner.png|center|10_i2cScanner]]
 
[[Image:10i2cScanner.png|center|10_i2cScanner]]
  
[https://binefa.cat/training/upcSchool/20200516/IoT-02_06_i2cScanner.zip Firmware comprimido en .zip para escanear todos los dispositivos I2C conectados]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_06_i2cScanner IoT-02_06_i2cScanner en el GitHub]  
+
[https://www.binefa.cat/training/iot02/IoT-02_06_i2cScanner.zip Firmware comprimido en .zip para escanear todos los dispositivos I2C conectados]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_06_i2cScanner IoT-02_06_i2cScanner en el GitHub]  
  
 
==== OLED ====
 
==== OLED ====
Línia 100: Línia 105:
 
La dirección I2C de la pantalla OLED es '''0x3C'''.
 
La dirección I2C de la pantalla OLED es '''0x3C'''.
  
[https://binefa.cat/training/upcSchool/20200516/IoT-02_08_SSD1306_io.zip Firmware comprimido en .zip de prueba de funcionamiento de la pantalla OLED en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_07_SSD1306 IoT-02_07_SSD1306 en el GitHub]
+
[https://www.binefa.cat/training/iot02/IoT-02_08_SSD1306_io.zip Firmware comprimido en .zip de prueba de funcionamiento de la pantalla OLED en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_07_SSD1306 IoT-02_07_SSD1306 en el GitHub]
  
 
==== BME280 ====
 
==== BME280 ====
Línia 107: Línia 112:
 
La dirección I2C del sensor BME280 es '''0x76''' (o '''0x77''' para el sensor BME680). Los datos leídos desde el BME280 se presentan en la pantalla OLED. Ambos dispositivos están usando el protocolo I2C. Esta versión de BME280 tiene el patillaje previsto para poder funcionar con el bus SPI, pero la placa IoT-02 está configurada para ir exclusivamente por el puerto I2C.
 
La dirección I2C del sensor BME280 es '''0x76''' (o '''0x77''' para el sensor BME680). Los datos leídos desde el BME280 se presentan en la pantalla OLED. Ambos dispositivos están usando el protocolo I2C. Esta versión de BME280 tiene el patillaje previsto para poder funcionar con el bus SPI, pero la placa IoT-02 está configurada para ir exclusivamente por el puerto I2C.
  
[https://binefa.cat/training/upcSchool/20200516/IoT-02_07_SSD1306_BME280.zip Firmware comprimido en .zip de prueba de funcionamiento del sensor BME280 en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_07_SSD1306_BME280 IoT-02_07_SSD1306_BME280 en el GitHub]
+
[https://www.binefa.cat/training/iot02/IoT-02_07_SSD1306_BME280.zip Firmware comprimido en .zip de prueba de funcionamiento del sensor BME280 en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_07_SSD1306_BME280 IoT-02_07_SSD1306_BME280 en el GitHub]
  
 
== Conexión WiFi ==
 
== Conexión WiFi ==
Línia 113: Línia 118:
 
[[Image:00wifiScan.png|center|00_wifiScan]]
 
[[Image:00wifiScan.png|center|00_wifiScan]]
  
[https://binefa.cat/training/upcSchool/20200516/IoT-02_wifi_00_scan.zip Firmware comprimido en .zip que lee cada 5 segundos las conexiones WiFi disponibles y su potencia en dBm]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_wifi_00_scan IoT-02_wifi_00_scan en el GitHub]
+
[https://www.binefa.cat/training/iot02/IoT-02_wifi_00_scan.zip Firmware comprimido en .zip que lee cada 5 segundos las conexiones WiFi disponibles y su potencia en dBm]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_wifi_00_scan IoT-02_wifi_00_scan en el GitHub]
  
[https://binefa.cat/training/upcSchool/2021/20210327/IoT-02_wifi_00c_oled.zip Firmware comprimido en .zip que lee cada 5 segundos las conexiones WiFi disponibles y las '''visualiza''' en las 6 primeras líneas de la '''pantalla OLED''' de la placa IoT-02]. Primero informa del número de señales WiFi detectadas. Un segundo después presenta una lista con el nombre de la red (SSID), entre paréntesis los dBm de potencia de la señal, una c seguida por el canal WiFi y si sale un * significa que la red está cifrada. El ciclo se repite cada 5 segundos.
+
[https://www.binefa.cat/training/iot02/IoT-02_wifi_00c_oled.zip Firmware comprimido en .zip que lee cada 5 segundos las conexiones WiFi disponibles y las '''visualiza''' en las 6 primeras líneas de la '''pantalla OLED''' de la placa IoT-02]. Primero informa del número de señales WiFi detectadas. Un segundo después presenta una lista con el nombre de la red (SSID), entre paréntesis los dBm de potencia de la señal, una c seguida por el canal WiFi y si sale un * significa que la red está cifrada. El ciclo se repite cada 5 segundos.
  
 
=== Conexión a una WiFi ===
 
=== Conexión a una WiFi ===
 
[[Image:02simpleWiFi.png|center|02_simpleWiFi]]
 
[[Image:02simpleWiFi.png|center|02_simpleWiFi]]
  
[https://binefa.cat/training/upcSchool/20200516/IoT-02_wifi_02_simpleWiFi.zip Firmware comprimido en zip para conectar a una WiFi]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_wifi_02_simpleWiFi IoT-02_wifi_02_simpleWiFi en GitHub]
+
[https://www.binefa.cat/training/iot02/IoT-02_wifi_02_simpleWiFi.zip Firmware comprimido en zip para conectar a una WiFi]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_wifi_02_simpleWiFi IoT-02_wifi_02_simpleWiFi en GitHub]
  
 
=== Conectividad a múltiples WiFi ===
 
=== Conectividad a múltiples WiFi ===
 
[[Image:03wifiMultiple.png|center|03_wifiMultiple]]
 
[[Image:03wifiMultiple.png|center|03_wifiMultiple]]
  
[https://binefa.cat/training/upcSchool/20200516/IoT-02_wifi_03_multWiFi.zip Firmware comprimido en zip para conectar a una WiFi de un listado]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_wifi_03_multWiFi IoT-02_wifi_03_multWiFi en GitHub]
+
[https://www.binefa.cat/training/iot02/IoT-02_wifi_03_multWiFi.zip Firmware comprimido en zip para conectar a una WiFi de un listado]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_wifi_03_multWiFi IoT-02_wifi_03_multWiFi en GitHub]
  
 
=== Solución a problemas de conectividad WiFi ===
 
=== Solución a problemas de conectividad WiFi ===
Línia 140: Línia 145:
 
[[Image:01simpleWifiServer.png|center|01_simpleWifiServer]]
 
[[Image:01simpleWifiServer.png|center|01_simpleWifiServer]]
  
[https://binefa.cat/training/upcSchool/20200516/IoT-02_wifi_01_simpleWiFiServer.zip Firmware comprimido en zip que presenta una página web en HTML capaz de controlar el led blanco]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_wifi_01_simpleWiFiServer IoT-02_wifi_01_simpleWiFiServer en GitHub]
+
[https://www.binefa.cat/training/iot02/IoT-02_wifi_01_simpleWiFiServer.zip Firmware comprimido en zip que presenta una página web en HTML capaz de controlar el led blanco]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_wifi_01_simpleWiFiServer IoT-02_wifi_01_simpleWiFiServer en GitHub]
  
 
=== MQTT y MQTTS ===
 
=== MQTT y MQTTS ===
Línia 147: Línia 152:
 
[https://wiki.binefa.cat/index.php?title=MQTT_i_MQTTS Más información sobre MQTT y MQTTS]
 
[https://wiki.binefa.cat/index.php?title=MQTT_i_MQTTS Más información sobre MQTT y MQTTS]
  
 +
<!--
 
[https://wiki.binefa.cat/index.php?title=Introducci%C3%B3_a_Internet_de_les_Coses_-_juny_2018#MQTT Otros usos de MQTT]
 
[https://wiki.binefa.cat/index.php?title=Introducci%C3%B3_a_Internet_de_les_Coses_-_juny_2018#MQTT Otros usos de MQTT]
  
[https://binefa.cat/training/adtelecom/20201110/IoT-02_mqtt_09_adtelecom.zip Firmware para probar el protocolo '''MQTT''' en la placa IoT-02] en un [https://binefa.cat/training/upcSchool/2021/20210327/prueba_IoT02_mqtt.xml código de Snap! usando '''websockets MQTT''']. [http://formacio.things.cat/snap/snap.html Snap! instalado en una máquina remota '''HTTP'''].
+
[https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip Firmware para probar el protocolo '''MQTT''' en la placa IoT-02] en un [https://binefa.cat/training/upcSchool/2021/20210327/prueba_IoT02_mqtt.xml código de Snap! usando '''websockets MQTT'''] (Nuevo: [https://www.binefa.cat/training/snap/iot-02/06_publishingOLED.xml 06_publishingOLED.xml]). [http://formacio.things.cat/snap/snap.html Snap! instalado en una máquina remota '''HTTP'''].
  
 
[https://binefa.cat/training/adtelecom/20201105/IoT-02_mqtts_09.zip Firmware para probar el protocolo '''MQTTS''' a la placa IoT-02] en un [https://binefa.cat/training/adtelecom/20201105/prova_IoT02.xml código de Snap! usando '''websockets MQTT'''] en un ''broker'' '''MQTTS'''. [http://formacio.things.cat/snap/snap.html Snap! instalado en una máquina remota '''HTTP'''].
 
[https://binefa.cat/training/adtelecom/20201105/IoT-02_mqtts_09.zip Firmware para probar el protocolo '''MQTTS''' a la placa IoT-02] en un [https://binefa.cat/training/adtelecom/20201105/prova_IoT02.xml código de Snap! usando '''websockets MQTT'''] en un ''broker'' '''MQTTS'''. [http://formacio.things.cat/snap/snap.html Snap! instalado en una máquina remota '''HTTP'''].
 
+
-->
 
[[Conexión entre la placa IoT-02 y Snap! mediante MQTT]]
 
[[Conexión entre la placa IoT-02 y Snap! mediante MQTT]]
 +
<!--
 +
[http://snap.berkeley.edu/snap/snap.html#open:https://raw.githubusercontent.com/pixavier/mqtt4snap/master/IoT-02board/prueba_IoT02_mqtt.xml Código prueba_IoT02_mqtt en xml para Snap!] (enlace directo)-->
  
[http://snap.berkeley.edu/snap/snap.html#open:https://raw.githubusercontent.com/pixavier/mqtt4snap/master/IoT-02board/prueba_IoT02_mqtt.xml Código prueba_IoT02_mqtt en xml para Snap!] (enlace directo)
+
[http://formacio.things.cat/mac_IoT-02_mI40/ Herramienta de gestión de la MAC de la placa IoT-02, mediante un cliente web usando JS]
  
 +
<!--
 
== Protocolo UDP ==
 
== Protocolo UDP ==
 
[https://www.ionos.es/digitalguide/servidores/know-how/udp-user-datagram-protocol/ UDP: ¿qué es el protocolo UDP?]
 
[https://www.ionos.es/digitalguide/servidores/know-how/udp-user-datagram-protocol/ UDP: ¿qué es el protocolo UDP?]
Línia 191: Línia 200:
  
 
* Ayuda: Es muy útil monitorizar un estado usando código de colores. [https://binefa.cat/training/upcSchool/20200516/IoT-02_ledColorNodeRed.nodered.txt Código en NodeRED capaz de cambiar el color de un indicador]
 
* Ayuda: Es muy útil monitorizar un estado usando código de colores. [https://binefa.cat/training/upcSchool/20200516/IoT-02_ledColorNodeRed.nodered.txt Código en NodeRED capaz de cambiar el color de un indicador]
 
+
--><!--
 
= Acceso a todos los códigos comentados hoy =
 
= Acceso a todos los códigos comentados hoy =
[https://binefa.cat/training/upcSchool/2021/20210327/ Acceso a todos los códigos comentados hoy]
+
[https://www.binefa.cat/training/upcSchool/2021/20210327/ Acceso a todos los códigos comentados hoy]-->

Revisió de 07:42, 26 març 2022

Conceptos previos (25 / 3 / 2022)[modifica]

- Noción de broker MQTT (Mosquitto). Broker: vps656540.ovh.net Usuario: user Contraseña: pass (Puerto TCP: 1883, Puerto ws: 8080)

- Noción de Node-RED como a app de Node

- MySQL básico. Instancia al servidor vps656540.ovh.net

- Acceso básico a MySQL desde Node-RED

- Concepto de sistema embebido (embbeded) pequeño y sofisticado. Diferencias entre Arduino y Raspberry Pi.

- Arduino básico. Blink, el Hola mundo en Arduino.

- Entradas y salidas (I/O) digitales y analógicas.

Conversiones de pseudocódigo a lenguajes de programación[modifica]

Pautas y tablas de conversión hechas por Xavier Pi:

Pautas de conversión de un algoritmo a C

Tabla de conversión de un algoritmo a JavaScript (Node.js, ES6)

Pautas de conversión de un algoritmo a Python

Tabla de conversión de un algoritmo a Snap!

Temario (26 / 3 / 2022)[modifica]

Introducción a la placa IoT-02[modifica]

Introducción a la placa IoT-02 en castellano en pdf (Introducció a la placa IoT-02 en catalán)

Vídeo introductorio a la placa IoT-02

Vídeo de instalación del Arduino IDE y algunas bibliotecas extra para probar los códigos en la placa IoT-02

Añadir ESP32 al IDE de Arduino

Placa IoT-02

Firmware comprimido en zip de test de la placa IoT-02. IoT-02_11_modbus_bme280 en GitHub. Este es el firmware que iba instalado cuando os llegó la placa.

Muestra en línea del ejemplo inicial con microrruptores, relés reed y relés convencionales:

Conexión de la placa IoT-02 con relé Reed, microrruptores y relés

Hoja de características del relé de enclavamiento HFD2/005-M-L2-D

Entradas y salidas de sensores[modifica]

UART[modifica]

UART con chip FT232 de FTDI

Esta placa tiene la opción de poder funcionar a 5V o 3,3V. Para el Arduino Nano o Uno tiene que ir a 5 voltios. Para el ESP32 (chip microcontrolador de la placa IoT-02) o para la Raspberry Pi tiene que ir a 3,3 voltios. Esta selección se hace mediante un puente (jumper). Por defecto, en vuestro kit ya venía seleccionado con el puente en la posición de 3,3 voltios.

Instalación drivers para UART

Programas de acceso directo a la UART

La placa IoT-02 usa dos UART (de las tres posibles en el ESP32). La primera es para la programación del firmware y la segunda se usa para la comunicación ModBus-RTU (protocolo industrial usado desde finales de los años 70 del siglo XX y todavía muy usado para la lectura de sensores y presente en cualquier sistema SCADA industrial).

Conexión de la UART a la placa IoT-02 para hacer la programación[modifica]

Posición de la conexión de la placa UART para la programción de la placa IoT-02:

Posición de la conexión de las placas para la programación

El cable microusb de alimentación (de color negro en la foto) sirve para proporcionar 5 voltios. Es necesario para poder activar y desactivar el relé blanco de la placa, así como la parte de ModBus-RTU.

SPI[modifica]

El bus SPI en Arduino

Placa IoT-02 con el módulo LoRa (RFM95)

Este puerto está implementado en la placa IoT-02 para la parte de LoRaWAN (control del RFM95).

I2C[modifica]

El bus I2C en Arduino

En la placa IoT-02 hay dos conectores para conectar un BME280 (o BME680) y una pantalla OLED de 0,97".

10_i2cScanner

Firmware comprimido en .zip para escanear todos los dispositivos I2C conectados. IoT-02_06_i2cScanner en el GitHub

OLED[modifica]

IoT-02 funcionando con la pantalla OLED

La dirección I2C de la pantalla OLED es 0x3C.

Firmware comprimido en .zip de prueba de funcionamiento de la pantalla OLED en la placa IoT-02. IoT-02_07_SSD1306 en el GitHub

BME280[modifica]

Placa IoT-02 probando el módulo BME280 y la pantalla OLED

La dirección I2C del sensor BME280 es 0x76 (o 0x77 para el sensor BME680). Los datos leídos desde el BME280 se presentan en la pantalla OLED. Ambos dispositivos están usando el protocolo I2C. Esta versión de BME280 tiene el patillaje previsto para poder funcionar con el bus SPI, pero la placa IoT-02 está configurada para ir exclusivamente por el puerto I2C.

Firmware comprimido en .zip de prueba de funcionamiento del sensor BME280 en la placa IoT-02. IoT-02_07_SSD1306_BME280 en el GitHub

Conexión WiFi[modifica]

Escaneo de las conexiones WiFi disponibles[modifica]

00_wifiScan

Firmware comprimido en .zip que lee cada 5 segundos las conexiones WiFi disponibles y su potencia en dBm. IoT-02_wifi_00_scan en el GitHub

Firmware comprimido en .zip que lee cada 5 segundos las conexiones WiFi disponibles y las visualiza en las 6 primeras líneas de la pantalla OLED de la placa IoT-02. Primero informa del número de señales WiFi detectadas. Un segundo después presenta una lista con el nombre de la red (SSID), entre paréntesis los dBm de potencia de la señal, una c seguida por el canal WiFi y si sale un * significa que la red está cifrada. El ciclo se repite cada 5 segundos.

Conexión a una WiFi[modifica]

02_simpleWiFi

Firmware comprimido en zip para conectar a una WiFi. IoT-02_wifi_02_simpleWiFi en GitHub

Conectividad a múltiples WiFi[modifica]

03_wifiMultiple

Firmware comprimido en zip para conectar a una WiFi de un listado. IoT-02_wifi_03_multWiFi en GitHub

Solución a problemas de conectividad WiFi[modifica]

04_wifiReset

Cuando exista dificultad para conectarse a cualquier WiFi es aconsejable hacer reset. Por prudencia, es conveniente introducir esta función de reset cada vez que se intente una conexión WiFi. (No todos los códigos expuestos en este curso incorporan la función reset de WiFi. En caso de tener problemas de conectividad se sugiere incorporarlo)

Protocolos TCP[modifica]

TCP (Transmission Control Protocol): retrato del protocolo de transporte

HTTP[modifica]

Generalidades del protocolo HTTP

01_simpleWifiServer

Firmware comprimido en zip que presenta una página web en HTML capaz de controlar el led blanco. IoT-02_wifi_01_simpleWiFiServer en GitHub

MQTT y MQTTS[modifica]

¿Qué es MQTT? Su importancia como protocolo IoT

Más información sobre MQTT y MQTTS

Conexión entre la placa IoT-02 y Snap! mediante MQTT

Herramienta de gestión de la MAC de la placa IoT-02, mediante un cliente web usando JS