Diferència entre revisions de la pàgina «Placa IoT-02»
(Hi ha 24 revisions intermèdies del mateix usuari que no es mostren) | |||
Línia 21: | Línia 21: | ||
= Placa IoT-02 i integració a la Internet de les Coses = | = Placa IoT-02 i integració a la Internet de les Coses = | ||
[[Placa IoT-02 i integració a la Internet de les Coses]] | [[Placa IoT-02 i integració a la Internet de les Coses]] | ||
+ | |||
+ | [https://github.com/ttncat/viladecans-formacio-iot-2022/tree/master/02-dispositius Placa IoT-02 connectant a TTSv3 mitjançant el protocol LoRaWAN] | ||
= Connectant el programador = | = Connectant el programador = | ||
Línia 49: | Línia 51: | ||
'''Arxius binaris de microprogramari''' (aquí teniu el '''microprogramari de prova de funcionament de la placa IoT-02'''): | '''Arxius binaris de microprogramari''' (aquí teniu el '''microprogramari de prova de funcionament de la placa IoT-02'''): | ||
− | * 1/4) [https:// | + | * 1/4) [https://github.com/jordibinefa/IoT-02/raw/master/codes/binaryFirmware/IoT-02_11_modbus_bme280.ino.bootloader.bin IoT-02_11_modbus_bme280.ino.bootloader.bin] |
− | * 2/4) [https:// | + | * 2/4) [https://github.com/jordibinefa/IoT-02/raw/master/codes/binaryFirmware/IoT-02_11_modbus_bme280.ino.partitions.bin IoT-02_11_modbus_bme280.ino.partitions.bin] |
− | * 3/4) [https:// | + | * 3/4) [https://github.com/jordibinefa/IoT-02/raw/master/codes/binaryFirmware/boot_app0.bin boot_app0.bin] |
− | * 4/4) [https:// | + | * 4/4) [https://github.com/jordibinefa/IoT-02/raw/master/codes/binaryFirmware/IoT-02_11_modbus_bme280.ino.bin IoT-02_11_modbus_bme280.ino.bin] |
Línia 78: | Línia 80: | ||
= Instal·lació de MicroPython = | = Instal·lació de MicroPython = | ||
+ | [http://www.micropython.org/ Pàgina oficial de MicroPython] | ||
+ | |||
+ | Cal tenir instal·lat el [https://www.python.org/downloads/ Python] al vostre sistema | ||
+ | |||
+ | pip install esptool | ||
+ | |||
+ | == Esborreu la ''flash'' per complet == | ||
+ | Poseu la placa IoT-02 en mode de programació: | ||
+ | |||
+ | * Premeu el botó vermell (RST) | ||
+ | |||
+ | * Premeu el botó blanc IO0 | ||
+ | |||
+ | * Deixeu de prémer el botó vermell (RST) | ||
+ | |||
+ | * Deixeu de prémer el botó blanc IO0 | ||
+ | esptool.py --port /dev/ttyUSB0 erase_flash | ||
+ | |||
+ | == Pugeu MicroPython a la placa IoT-02 == | ||
+ | Torneu a posar la placa IoT-02 en mode de programació: | ||
+ | |||
+ | *Premeu el botó vermell (RST) | ||
+ | |||
+ | * Premeu el botó blanc IO0 | ||
+ | |||
+ | * Deixeu de prémer el botó vermell (RST) | ||
+ | |||
+ | * Deixeu de prémer el botó blanc IO0 | ||
+ | |||
+ | esptool.py --chip esp32 --port /dev/ttyUSB0 write_flash -z 0x1000 [https://github.com/jordibinefa/IoT-02/raw/master/micropython/binary/esp32-ota-20220618-v1.19.1.bin esp32-ota-20220618-v1.19.1.bin] | ||
+ | |||
+ | |||
+ | [https://docs.micropython.org/en/latest/esp32/tutorial/intro.html Explicació a la pàgina oficial de MicroPython] | ||
+ | |||
+ | |||
+ | '''Arxius binari de microprogramari per a pujar MicroPython a la placa IoT-02''': [https://github.com/jordibinefa/IoT-02/raw/master/micropython/binary/esp32-ota-20220618-v1.19.1.bin esp32-ota-20220618-v1.19.1.bin] | ||
+ | |||
+ | <!-- | ||
+ | Ordre de terminal: | ||
+ | esptool.py --chip esp32 --port '''/dev/ttyUSB0''' --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 4MB 0x1000 '''bootloader_dio_40m.bin''' 0x8000 '''partitions.bin''' 0xe000 '''boot_app0.bin''' 0x10000 '''vm_esp32.bin''' | ||
+ | --> | ||
+ | '''/dev/ttyUSB0''' a Windows és un port '''COM'''''x'' (essent ''x'' el número de port virtual a on és connectat el programador. Per exemple: COM''3'') | ||
+ | |||
+ | == Gestió de fitxers a un dispositiu amb MicroPython mitjançant terminal == | ||
+ | [https://www.digikey.es/en/maker/projects/micropython-basics-load-files-run-code/fb1fcedaf11e4547943abfdd8ad825ce MicroPython Basics: Load Files & Run Code] feta per [https://www.adafruit.com/ Adafruit Industries] | ||
+ | |||
+ | pip install adafruit-ampy | ||
+ | === Exemples d'ús d''''''ampy''''' === | ||
+ | ampy --help | ||
+ | ampy --port /serial/port run test.py | ||
+ | ampy --port /serial/port put test.py | ||
+ | ampy --port /serial/port put /directori/altre_test.py | ||
+ | ampy --port /serial/port get main.py | ||
+ | ampy --port /serial/port get boot.py placa_boot.py | ||
+ | ampy --port /serial/port mkdir nom_directori | ||
+ | ampy --port /serial/port mkdir /nom_directori/subdirectori | ||
+ | ampy --port /serial/port ls | ||
+ | ampy --port /serial/port rm fitxer.py | ||
+ | ampy --port /serial/port rmdir /ruta/absoluta | ||
+ | |||
+ | [[Image:MicroBlocks00.png|center|Ús d'''ampy'' mitjançant el terminal]] | ||
+ | |||
+ | == Gestió de fitxers a un dispositiu amb MicroPython mitjançant la interfície gràfica d'usuari '''''Thonny''''' == | ||
+ | [https://thonny.org/ Pàgina oficial de Thonny] | ||
+ | |||
+ | [[Image:Thonny00.png|center|Thonny]] | ||
= Instal·lació de MicroBlocks = | = Instal·lació de MicroBlocks = | ||
+ | [http://microblocks.fun/ Pàgina oficial de MicroBlocks] | ||
+ | |||
+ | Eina de programari: [https://github.com/espressif/esptool esptool.py] | ||
+ | |||
+ | == Esborreu la ''flash'' per complet == | ||
+ | Poseu la placa IoT-02 en mode de programació: | ||
+ | |||
+ | *Premeu el botó vermell (RST) | ||
+ | |||
+ | * Premeu el botó blanc IO0 | ||
+ | |||
+ | * Deixeu de prémer el botó vermell (RST) | ||
+ | |||
+ | * Deixeu de prémer el botó blanc IO0 | ||
+ | esptool.py --port /dev/ttyUSB0 erase_flash | ||
+ | |||
+ | == Pugeu MicroBlocks a la placa IoT-02 == | ||
+ | Torneu a posar la placa IoT-02 en mode de programació: | ||
+ | |||
+ | * Premeu el botó vermell (RST) | ||
+ | |||
+ | * Premeu el botó blanc IO0 | ||
+ | |||
+ | * Deixeu de prémer el botó vermell (RST) | ||
+ | |||
+ | * Deixeu de prémer el botó blanc IO0 | ||
+ | |||
+ | '''Arxius binaris de microprogramari''' (aquí teniu el '''microprogramari per a pujar MicroBlocks a la placa IoT-02'''): | ||
+ | |||
+ | * 1/4) [https://github.com/jordibinefa/IoT-02/raw/master/microblocks/binary/bootloader_dio_40m.bin bootloader_dio_40m.bin] (Original al [https://bitbucket.org/john_maloney/smallvm/src/master/esp32/ Bitbucket d'en John Maloney] | ||
+ | |||
+ | * 2/4) [https://github.com/jordibinefa/IoT-02/raw/master/microblocks/binary/partitions.bin partitions.bin] (Original al [https://bitbucket.org/john_maloney/smallvm/src/master/esp32/ Bitbucket d'en John Maloney] | ||
+ | |||
+ | * 3/4) [https://github.com/jordibinefa/IoT-02/raw/master/microblocks/binary/boot_app0.bin boot_app0.bin] (Original al [https://bitbucket.org/john_maloney/smallvm/src/master/esp32/ Bitbucket d'en John Maloney] | ||
+ | |||
+ | * 4/4) [https://github.com/jordibinefa/IoT-02/raw/master/microblocks/binary/vm_esp32.bin vm_esp32.bin] (Original a [https://microblocks.fun/downloads/pilot/vm/vm_esp32.bin vm_esp32.bin]) | ||
+ | |||
+ | |||
+ | Ordre de terminal: | ||
+ | esptool.py --chip esp32 --port '''/dev/ttyUSB0''' --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 4MB 0x1000 '''bootloader_dio_40m.bin''' 0x8000 '''partitions.bin''' 0xe000 '''boot_app0.bin''' 0x10000 '''vm_esp32.bin''' | ||
+ | |||
+ | '''/dev/ttyUSB0''' a Windows és un port '''COM'''''x'' (essent ''x'' el número de port virtual a on és connectat el programador. Per exemple: COM''3'') | ||
− | + | == Provant MicroBlocks == | |
+ | Per a verificar la connexió de la placa IoT-02 amb MicroBlocks connectada a l'aplicació d'escriptori MicroBlocks, heu de veure un fons verd a la icona de l'USB. | ||
+ | [[Image:MicroBlocks01.jpg|center|Placa IoT-02 connectada a MicroBlocks d'escriptori]] |
Revisió de 22:00, 30 març 2023
Per treballar amb la placa IoT-02 a classe heu de dur una font d'alimentació microUSB, o un cable de connexió microUSB a l'ordinador.
Contingut
Introducció a la placa IoT-02[modifica]
Introducció a la placa IoT-02 en pdf
Addició de l'ESP32 a l'IDE d'Arduino
Microprogramari comprimit en zip de prova de la placa IoT-02. IoT-02_11_modbus_bme280 a GitHub. Aquest és el microprogramari (firmware) instal·lat quan rebeu la placa per primer cop.
Connnexió externa a microruptors, relés reed i relés convencionals:
Full de característiques del relé d'enclavament HFD2/005-M-L2-D
Placa IoT-02 i integració a la Internet de les Coses[modifica]
Placa IoT-02 i integració a la Internet de les Coses
Placa IoT-02 connectant a TTSv3 mitjançant el protocol LoRaWAN
Connectant el programador[modifica]
Placa vermella: FT232RL Mòdul sèrier FTDI USB a TTL emprat com a programador
És molt important verificar que la posició del pont és 3,3 volts (Per defecte acostuma a venir amb el pont connectat a 5 volts)
Mode programació[modifica]
Per a poder pujar microprogramari a la placa IoT-02 cal posar-la en mode programació. Aquests són els passos:
- 1r: Connecteu el cable microusb (proporciona 5 volts d'alimentació a la placa)
- 2n: Mantingueu premut el botó de reset (vermell)
- 3r: Mentre manteniu premut el botó de reset, mantingueu premut el botó IO0 (botó blanc més proper al botó de reset). En aquest pas ambdós botons romanen premuts.
- 4t: Deixeu de prémer el botó de reset (vermell).
- 5è: Deixeu de prémer el botó IO0.
Després d'aquests passos la placa és en mode programació.
Programant microprogramari en format binari[modifica]
Programant des del terminal[modifica]
Eina de programari: esptool.py
Arxius binaris de microprogramari (aquí teniu el microprogramari de prova de funcionament de la placa IoT-02):
- 3/4) boot_app0.bin
Ordre de terminal:
esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 4MB 0x1000 IoT-02_11_modbus_bme280.ino.bootloader.bin 0x8000 IoT-02_11_modbus_bme280.ino.partitions.bin 0xe000 boot_app0.bin 0x10000 IoT-02_11_modbus_bme280.ino.bin
/dev/ttyUSB0 a Windows és un port COMx (essent x el número de port virtual a on és connectat el programador. Per exemple: COM3)
Un cop el procés de programació ha acabat, heu de prémer el botó de reset per a que comenci a funcionar el microprogramari pujat. O retireu la placa vermella de programació, desendolleu la font d'alimentació (connectada al microusb) i torneu a endollar-la.
Programant amb un eina gràfica per a Windows[modifica]
Poseu la placa en mode programació, seguint els cinc passos explicats més amunt, combinant els botons de reset (RST) i IO0.
Eina gràfica per a Windows: Flash Download Tools (Explicació de com fer servir Flash Download Tools)
Un cop el procés de programació ha acabat, heu de prémer el botó de reset per a que comenci a funcionar el microprogramari pujat. O retireu la placa vermella de programació, desendolleu la font d'alimentació (connectada al microusb) i torneu a endollar-la.
Provant el microprogramari[modifica]
Un cop heu pujat el microprogramari d'aquest exemple a la placa, després de prémer el botó de reset (vermell), us ha d'aparèixer informacions a la pantalla (OLED) que canvien en funció dels botons blancs que aneu prement.
Instal·lació de MicroPython[modifica]
Cal tenir instal·lat el Python al vostre sistema
pip install esptool
Esborreu la flash per complet[modifica]
Poseu la placa IoT-02 en mode de programació:
* Premeu el botó vermell (RST)
* Premeu el botó blanc IO0
* Deixeu de prémer el botó vermell (RST)
* Deixeu de prémer el botó blanc IO0
esptool.py --port /dev/ttyUSB0 erase_flash
Pugeu MicroPython a la placa IoT-02[modifica]
Torneu a posar la placa IoT-02 en mode de programació:
*Premeu el botó vermell (RST)
* Premeu el botó blanc IO0
* Deixeu de prémer el botó vermell (RST)
* Deixeu de prémer el botó blanc IO0
esptool.py --chip esp32 --port /dev/ttyUSB0 write_flash -z 0x1000 esp32-ota-20220618-v1.19.1.bin
Explicació a la pàgina oficial de MicroPython
Arxius binari de microprogramari per a pujar MicroPython a la placa IoT-02: esp32-ota-20220618-v1.19.1.bin
/dev/ttyUSB0 a Windows és un port COMx (essent x el número de port virtual a on és connectat el programador. Per exemple: COM3)
Gestió de fitxers a un dispositiu amb MicroPython mitjançant terminal[modifica]
MicroPython Basics: Load Files & Run Code feta per Adafruit Industries
pip install adafruit-ampy
Exemples d'ús d'ampy[modifica]
ampy --help ampy --port /serial/port run test.py ampy --port /serial/port put test.py ampy --port /serial/port put /directori/altre_test.py ampy --port /serial/port get main.py ampy --port /serial/port get boot.py placa_boot.py ampy --port /serial/port mkdir nom_directori ampy --port /serial/port mkdir /nom_directori/subdirectori ampy --port /serial/port ls ampy --port /serial/port rm fitxer.py ampy --port /serial/port rmdir /ruta/absoluta
Gestió de fitxers a un dispositiu amb MicroPython mitjançant la interfície gràfica d'usuari Thonny[modifica]
Instal·lació de MicroBlocks[modifica]
Eina de programari: esptool.py
Esborreu la flash per complet[modifica]
Poseu la placa IoT-02 en mode de programació:
*Premeu el botó vermell (RST)
* Premeu el botó blanc IO0
* Deixeu de prémer el botó vermell (RST)
* Deixeu de prémer el botó blanc IO0
esptool.py --port /dev/ttyUSB0 erase_flash
Pugeu MicroBlocks a la placa IoT-02[modifica]
Torneu a posar la placa IoT-02 en mode de programació:
* Premeu el botó vermell (RST)
* Premeu el botó blanc IO0
* Deixeu de prémer el botó vermell (RST)
* Deixeu de prémer el botó blanc IO0
Arxius binaris de microprogramari (aquí teniu el microprogramari per a pujar MicroBlocks a la placa IoT-02):
- 1/4) bootloader_dio_40m.bin (Original al Bitbucket d'en John Maloney
- 2/4) partitions.bin (Original al Bitbucket d'en John Maloney
- 3/4) boot_app0.bin (Original al Bitbucket d'en John Maloney
- 4/4) vm_esp32.bin (Original a vm_esp32.bin)
Ordre de terminal:
esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 4MB 0x1000 bootloader_dio_40m.bin 0x8000 partitions.bin 0xe000 boot_app0.bin 0x10000 vm_esp32.bin
/dev/ttyUSB0 a Windows és un port COMx (essent x el número de port virtual a on és connectat el programador. Per exemple: COM3)
Provant MicroBlocks[modifica]
Per a verificar la connexió de la placa IoT-02 amb MicroBlocks connectada a l'aplicació d'escriptori MicroBlocks, heu de veure un fons verd a la icona de l'USB.