Diferència entre revisions de la pàgina «Índex general»
(→ESP8266) |
m (→Alguns trucs) |
||
(Hi ha 193 revisions intermèdies del mateix usuari que no es mostren) | |||
Línia 1: | Línia 1: | ||
+ | == Comunicacions == | ||
+ | === Sèrie (TTL i RS485) === | ||
+ | [http://formacio.things.cat:8000/?p=275 Modbus RTU using Python and Qt] (May 3, 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=277 Modbus RTU using Arduino and pyQt] (May 3, 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=279 Modbus RTU on RS485 using Arduino and PyQt] (May 9, 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=147 Ús del port sèrie a un autòmat programable (CP1E d'Omron)] ( 4 / juny / 2015) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=109 Using digital I/O. Arduino + firmata + pyFirmata + pyQt] (December 8, 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=102 Arduino + Raspberry Pi using pyFirmata and pyQt] (November 26, 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=100 Serial read using Ardublock] (November 18, 2014) | ||
+ | |||
+ | === TCP / UDP === | ||
+ | [https://binefa.cat/esp8266/doc/ethernetTcpUdp_00.pdf TCP/UDP Capa de transport d'Ethernet] (22 / gener / 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=50 Modbus TCP/IP on Arduino Nano + ENC28J60] (August 27, 2014) | ||
+ | |||
+ | [http://www.iotsharing.com/2017/08/how-to-use-https-in-arduino-esp32.html Demo 29: How to use HTTPS in Arduino ESP32] | ||
+ | |||
+ | ==== UDP ==== | ||
+ | [[UDP]] | ||
+ | |||
+ | ==== MQTT i MQTTS ==== | ||
+ | [[MQTT i MQTTS]] | ||
+ | |||
+ | === Xarxes d'àrea estesa de baix consum (LPWAN) === | ||
+ | ==== Conceptes teòrics ==== | ||
+ | [https://ca.wikipedia.org/wiki/Xarxa_de_llarg_abast Xarxa de llarg abast (WAN)] | ||
+ | |||
+ | [https://ca.wikipedia.org/wiki/Chirp_spread_spectrum Espectre eixamplat (Chirp Spread Spectrum)] | ||
+ | |||
+ | [https://ca.wikipedia.org/wiki/Espectre_eixamplat_per_seq%C3%BC%C3%A8ncia_directa Espectre eixamplat per seqüència directa (DSSS)] | ||
+ | |||
+ | [https://ca.wikipedia.org/wiki/Espectre_eixamplat_per_salt_de_freq%C3%BC%C3%A8ncia Espectre eixamplat per salt de freqüència (FHSS)] | ||
+ | |||
+ | [https://en.wikipedia.org/wiki/LPWAN What is LPWAN?] | ||
+ | |||
+ | [https://cms.edn.com/ContentEETimes/Documents/EDN/LP%20WAN%20Comparison%20Table%20final.pdf Comparison table of Low Power WAN alternatives] | ||
+ | |||
+ | ==== LoRa ==== | ||
+ | [https://wiki.binefa.cat/index.php?title=LoRa LoRa] | ||
+ | |||
+ | ==== SigFox ==== | ||
+ | [https://docs.pycom.io/chapter/tutorials/sipy/register.html Registering SiPy with Sigfox] | ||
+ | |||
+ | ==== Antenes ==== | ||
+ | [https://youtu.be/CJNq2I_PDHQ Andreas Spiess video: "#182 ESP32 Lora Boards: What you need to know before you buy (incl. Antenna knowledge)"] | ||
+ | |||
+ | == Mèdia == | ||
+ | === Audiovisual === | ||
+ | [https://player.vimeo.com/video/303025854?autoplay=1#t=12m10s Intervenció al vídeo sobre Internet de les Coses per a l'iFest 2018] (enregistrament 21 / novembre / 2018) | ||
+ | |||
+ | [https://vimeo.com/303025854 Vídeo sencer sobre Internet de les Coses per a l'iFest 2018] (enregistrament 21 / novembre / 2018) | ||
+ | |||
+ | === Programes de ràdio === | ||
+ | [http://formacio.things.cat:8000/?p=248 El Cafè de les Telecos: L’electrònica del present i del futur] (7 / octubre / 2015) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=334 Make It! Un projecte català amb Arduino i Scratch – Programa 277 de “Mossega la poma”] (8 / març / 2016) | ||
+ | |||
+ | === Revistes === | ||
+ | [http://fullsdelsenginyers.cat/article/microcontroladors-dus-professional Microcontroladors d'ús professional] (08 / febrer / 2018) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=245 Prototipatge electrònic a l’abast de tothom] (9 / octubre / 2015) | ||
+ | |||
+ | [http://upcommons.upc.edu/handle/2099/9430 Mesura experimental d'acceleració i velocitat per PC] (novembre / 1994) | ||
− | == Arduino == | + | == Microcontroladors == |
+ | === Arduino === | ||
+ | ==== Arduino genèric ==== | ||
[https://wiki.binefa.cat/index.php?title=%C3%8Dndex_general#Comunicacions Comunicacions amb Arduino] | [https://wiki.binefa.cat/index.php?title=%C3%8Dndex_general#Comunicacions Comunicacions amb Arduino] | ||
− | [ | + | [http://formacio.things.cat:8000/?p=282 SPI - Sample of master and slave using two Arduino] (May 9, 2016) |
+ | |||
+ | [http://formacio.things.cat:8000/?p=285 How to deal with binary data between Python and Arduino] (June 5, 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=292 Arduino library for SX1276 using LoRA and PyQt] (June 6, 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=317 Adding AES encryption to LoRa at SX1276 on Arduino] (June 15, 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=129 Ús de la biblioteca ecat.h a Arduino (1a part)] (22 / desembre / 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=136 Ús de la biblioteca ecat.h a Arduino (2a part)] (28 / desembre / 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=140 Ús de la biblioteca ecat.h a Arduino (3a part)] (29 / desembre / 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=122 Radio Control using Arduino and NRF24L01] (December 12, 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=7 Emprant ArduBlock] (25 / agost / 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=36 Uso de ArduBlock] (25 / Agosto / 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/p=41 Using ArduBlock] (August 25, 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=46 nano-eCat using 8 relays] (August 25, 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=55 Arduino Nano + LCD + Joystick] (August 28, 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=58 Arduino Nano + LCD + Joystick + Servo] (August 30, 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=61 Ultrasound Distance Measurement] (September 1, 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=64 Arduino’s VU-meter using ArduBlock] (September 2, 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=94 SCoop installation on Arduino IDE] (November 18, 2014) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=96 SCoop + Ardublock] (November 18, 2014) | ||
+ | |||
+ | ==== S4A Programming Learning Board ==== | ||
+ | Adreça de Nufesa (Carrer Josep Estivill 4, Barcelona) a [https://www.openstreetmap.org/#map=19/41.41640/2.18568 Open Street Map] i [https://goo.gl/maps/65LS5TEucHD2 Google Maps] Botiga d'electrònica a on es pot comprar la placa S4A PLB | ||
+ | |||
+ | [https://github.com/jordibinefa/s4aPLB Disseny electrònic de la placa] Desenvolupada amb KiCad | ||
+ | |||
+ | Controladors (drivers) per a Finestrots (MS Windows): [https://github.com/jordibinefa/ms-drivers-and-tools/blob/master/CH341SER.zip CH341 (comú a les plaques xineses)] i [https://github.com/jordibinefa/ms-drivers-and-tools/blob/master/ft232.zip FT232 (comú a les plaques europees i americanes)] | ||
+ | |||
+ | Descàrrega de [http://snap4arduino.rocks/#download Snap For Arduino] i [http://s4a.cat/ S4A Scratch For Arduino] | ||
+ | |||
+ | Microprogramari (firmware) per a l'Arduino per a fer funcionar [https://binefa.cat/arduino/curs2018-2019/arduino/StandardFirmataPlus/StandardFirmataPlus.ino Snap For Arduino] i [http://s4a.cat/downloads/S4AFirmware16.ino Scratch For Arduino] | ||
+ | |||
+ | [https://www.arduino.cc/en/Main/OldSoftwareReleases#previous Entorn de desenvolupament (IDE) d'Arduino] Recomano que us baixeu la versió 1.8.5 | ||
+ | |||
+ | [https://github.com/jordibinefa/arduino-IDE-codes/blob/master/s4a_test_00/s4a_test_00.ino Codi de proves amb l'Arduino IDE] | ||
+ | |||
+ | [https://github.com/jordibinefa/arduino-IDE-libraries Algunes biblioteques per a l'Arduino IDE] | ||
+ | |||
+ | [[Fent servir protocols de comunicacions a la placa S4A basada en Arduino Nano]] (9 / abril / 2019) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=330 Xerrada sobre S4A PLB / Make It! a la llibreria Hispano Americana] (21 / juny / 2016) Tutorial introductori a la placa S4A PLB | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=264 Electrònica amb S4A] (13 / novembre / 2015) Amb els arxius del disseny de la placa (OSHW) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=232 How to install S4A on 64 bit Debian Jessie] (October 6, 2015) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=225 S4A Progamming Learning Board] (19 / setembre / 2015) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=358 Displaying analog data using Python on S4A Programming Learning Board] (October 13, 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=361 Displaying realtime data on web using plot.ly on S4A PLB] (October 13, 2016) | ||
+ | |||
+ | [http://makeit.cat Make It! amb Scratch per arduino] El kit que conté la placa S4A PLB <-- A principi de 2019 no funciona | ||
+ | |||
+ | === ESP32 === | ||
+ | [https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf ESP32 datasheet] | ||
+ | |||
+ | [https://techtutorialsx.com/2017/05/06/esp32-arduino-creating-a-task/ ESP32 Arduino: Creating a FreeRTOS task] | ||
+ | |||
+ | ==== ESP32 DEVKIT V1 ==== | ||
+ | Setup of ESP32 DEVKIT V1 is like [[Setup of WEMOS LOLIN32 on Arduino IDE]] (January 14, 2018) | ||
+ | |||
+ | [http://www.iotsharing.com/2017/08/how-to-use-https-in-arduino-esp32.html Demo 29: How to use HTTPS in Arduino ESP32] | ||
+ | |||
+ | [http://www.iotsharing.com/2017/08/how-to-use-esp32-mqtts-with-mqtts-mosquitto-broker-tls-ssl.html Demo 30: How to use Arduino ESP32 MQTTS with MQTTS Mosquitto broker (TLS/SSL)] | ||
+ | |||
+ | ==== WEMOS LOLIN32 ==== | ||
+ | [[Setup of WEMOS LOLIN32 on Arduino IDE]] (January 14, 2018) | ||
+ | |||
+ | ==== Heltec's WIFI_LoRa_32 ==== | ||
+ | [https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series#instructions WIFI_LoRa_32] | ||
+ | |||
+ | ==== TTGO ==== | ||
+ | [[Ús del segon port sèrie]] ( 4 de juny de 2018 ) | ||
+ | |||
+ | [https://github.com/osresearch/esp32-ttgo Library ESP32 + OLED + LoRa module from TT GO] | ||
+ | |||
+ | ==== SPIFFS ==== | ||
+ | Per a que funcioni hem hagut de formatar prèviament l'SPIFFS. | ||
+ | |||
+ | Per a pujar arxius al sistema SPIFFS de l'ESP32 es posen els arxius a la carpeta ''data'' dins del projecte fet amb '''PlatformIO'''. Des del terminal i a la carpeta del projecte: | ||
+ | pio run -t uploadfs | ||
+ | |||
+ | [https://techtutorialsx.com/2018/08/24/esp32-arduino-spiffs-file-upload-ide-plugin/ Per a fer-ho des de l''''IDE d'Arduino'''] | ||
+ | |||
+ | ==== ESP-IDF on PlatformIO ==== | ||
+ | [https://docs.platformio.org/en/latest/tutorials/espressif32/espidf_debugging_unit_testing_analysis.html Get started with ESP-IDF and ESP32-DevKitC: debugging, unit testing, project analysis] | ||
+ | |||
+ | ==== Troubleshooting ==== | ||
+ | ===== Corrupted Flash Memory ===== | ||
+ | Programming multiple times ESP32 can corrupt flash memory. If ESP32 has an unexpected behavior, it is a good idea to erase Flash memory: | ||
+ | |||
+ | esptool.py --port /dev/ttyUSB0 erase_flash | ||
+ | |||
+ | Installing '''esptool''': | ||
+ | sudo pip install esptool | ||
+ | or | ||
+ | sudo pip3 install esptool | ||
+ | |||
+ | |||
+ | [https://github.com/espressif/esptool esptool at github] | ||
+ | |||
+ | |||
+ | ESP32 Problem sample: | ||
+ | Connecting to AnyWIFI | ||
+ | E (22) wifi: misc_nvs_load 208 ret=4364 | ||
+ | E (22) wifi: wifi_init 1420 ret=4364 | ||
+ | |||
+ | ===== WiFi connecting issues ===== | ||
+ | Before to setting WiFi up it is a good idea to reset it. It solves infinite loops trying to connect a detected network. | ||
+ | |||
+ | void WiFiReset() { | ||
+ | WiFi.persistent(false); | ||
+ | WiFi.disconnect(); | ||
+ | WiFi.mode(WIFI_OFF); | ||
+ | WiFi.mode(WIFI_STA); | ||
+ | } | ||
+ | |||
+ | [https://community.platformio.org/t/esp32-issues-connecting-wifi-network/3468/2 Thanks to mrred128] | ||
+ | |||
+ | ===== Brownout issues ===== | ||
+ | |||
+ | Brownout issues are related to lack of power supply or bad solderings. But, sometimes, ignoring it allows to avoid being stuck. Only use this if you know what you are doing. | ||
+ | |||
+ | #include "soc/soc.h" | ||
+ | #include "soc/rtc_cntl_reg.h" | ||
+ | void setup(){ | ||
+ | WRITE_PERI_REG(RTC_CNTL_BROWN_OUT_REG, 0); //disable brownout detector | ||
+ | |||
+ | [https://github.com/espressif/arduino-esp32/issues/863 Thanks to PRO2XY] | ||
+ | |||
+ | ===== Multiple WiFi reconnections when using MQTT ===== | ||
+ | Be aware, it should be an unique node name when connecting. It is a common problem when using same code in two different chips. A good idea is set MAC address as part of that unique node name. | ||
+ | |||
+ | ==== Testing VirKO board ==== | ||
+ | [[Testing VirKO board]] | ||
+ | |||
+ | === ESP8266 === | ||
+ | [[Connexió a múltiples xarxes sense fils]] (23 de maig de 2018) | ||
+ | |||
+ | [[MQTT a l'ESP8266]] (29 de gener de 2018) | ||
+ | |||
+ | [https://www.binefa.cat/esp8266/doc/esp8266_03.pdf ESP8266 ESP-12E Development Board] v0.3 (novembre 2015) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=353 ESP8266 witty] (September 22, 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=373 ESP8266’s Witty sending data to plot.ly] (October 15, 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=365 Displaying ESP8266’s LDR level on web using ThingSpeak] (October 14, 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=311 ESP8266 library for SX1276 using LoRA and PyQt] (June 13, 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=327 ESP8266 and Arduino using LoRa and AES encryption] (June 19, 2016) | ||
+ | |||
+ | ==== Sonoff ==== | ||
+ | [[Reprogramació d'un Sonoff Basic]] (5 d'abril de 2019) | ||
+ | |||
+ | === Ordinadors monoplaca (SBC) === | ||
+ | ==== Accés remot ==== | ||
+ | ===== Ús de xarxes virtuals privades (VPN) ===== | ||
+ | Ús de [http://zerotier.com/ ZeroTier]: [https://binefa.cat/IoT/vpn/zerotier/zerotier_01.pdf Configuració d'una VPN emprant ZeroTier] | ||
+ | |||
+ | ==== Raspberry Pi ==== | ||
+ | Com trobar totes les Raspberry Pi connectades a la teva xarxa local / How to find Raspberry Pi on your local network: | ||
+ | sudo nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}' | ||
+ | |||
+ | [https://www.raspberrypi.com/documentation/computers/raspberry-pi-5.html Raspberry Pi 5] | ||
+ | |||
+ | [https://www.abelectronics.co.uk/kb/article/31/set-a-static-ip-address-on-raspberry-pi-os-bookworm Set a static IP Address on Raspberry Pi OS Bookworm] (Based on Debian 12) | ||
− | [https:// | + | [https://www.dexterindustries.com/howto/run-a-program-on-your-raspberry-pi-at-startup/ Run a Program On Your Raspberry Pi At Startup] |
− | [https:// | + | [https://gpiozero.readthedocs.io/en/stable/migrating_from_rpigpio.html Migrating from RPi.GPIO to GPIO Zero] (RPi.GPIO doesn't work on Raspberry Pi 5. GPIO Zero runs on any Raspberry Pi version, at least up to Raspberry Pi 5) |
− | [https:// | + | [https://www.tomshardware.com/how-to/control-raspberry-pi-5-gpio-with-python-3 How to Control the Raspberry Pi 5 GPIO with Python 3] |
− | [https:// | + | [https://www.instructables.com/id/Share-WiFi-With-Ethernet-Port-on-a-Raspberry-Pi/ Share WiFi With Ethernet Port on a Raspberry Pi - Servidor DHCP per cable connectant Internet per WiFi (al mòbil com a punt d'accés)] |
− | [https:// | + | [https://www.behind-the-scenes.co.za/taking-a-screenshot-on-a-raspberry-pi-from-a-remote-location/ Captura de pantalla emprant raspi2png] |
− | [ | + | [[Pràctica de connexió remota a una Raspberry Pi]] (7 / març / 2019) |
− | [ | + | [[Com connectar-se a diferents xarxes sense fils]] (20 / maig / 2018) |
− | [ | + | [[Com connectar-hi pantalles OLED SSD1306 (128x64)]] (23 / abril / 2018) |
− | [https:// | + | [https://www.raspberrypi.org/documentation/configuration/wireless/access-point.md Raspberry Pi com a punt d'accés] |
− | [ | + | [[Adaptació per a que la Raspberry Pi funcioni com a punt d'accés donant adreces IP de classe B]] (juny 2018) |
− | [ | + | [[Com connectar-hi un giroscopi GY-521 (xip MPU-6050)]] (27 / juliol / 2018) |
− | [ | + | [[Ús d'entrades analògiques amb l'ADS115 controlant sortides PWM]] (27 / juliol / 2018) |
− | [https:// | + | [https://www.tal.org/tutorials/building-qt-512-raspberry-pi Instal·lant les Qt a la Raspberry Pi] |
− | + | xzcat 2023-02-21-raspios-bullseye-armhf-lite.img.xz | sudo dd of=/dev/sdb bs=64k oflag=dsync status=progress | |
− | [https:// | + | [https://wireguard.how/client/raspberry-pi-os/ WireGuard Client: Raspberry Pi OS] (VPN) |
− | [https:// | + | === Miscel·lània === |
+ | [https://eepower.com/resistor-guide/resistor-standards-and-codes/resistor-sizes-and-packages/# Resistor Size and Packages] (Power by size) | ||
− | [ | + | [[PlatformIO]] |
− | = | + | [https://wiki.binefa.cat/index.php?title=Pantalles_tàctils_NEXTION Pantalles tàctils NEXTION] (19 de febrer de 2018) |
− | + | ||
− | [ | + | [http://formacio.things.cat:8000/?p=80 How to recover bricked fake FT232] (October 30, 2014) |
+ | |||
+ | === STM32 === | ||
− | [https://binefa.cat/blog/?p= | + | [https://binefa.cat/blog/?p=299 Programming STM32 using Arduino IDE on Debian Jessie] (June 8, 2016) |
− | [https://binefa.cat/ | + | == Node RED == |
+ | === Introducció === | ||
+ | [https://binefa.cat/IoT/nodeRed/nodeRed01.pdf Introducció al Node-RED] | ||
− | [https:// | + | === Instal·lació del Node RED === |
+ | ==== Node RED a Ubuntu ==== | ||
+ | [https://www.tecrobust.com/install-node-red-linux-ubuntu-fedora-arch-centos-opensuse-debian-latest/ Instal·lació per a Ubuntu 18.04] | ||
− | [https:// | + | [https://www.digitalocean.com/community/tutorials/how-to-connect-your-internet-of-things-with-node-red-on-ubuntu-16-04 Instal·lació per a Ubuntu 16.04(Step 1)] (15 / gener / 2018) |
− | [https:// | + | [[Actualitzar Node RED]] per a Ubuntu (entre el pas 1 i 2 de l'anterior enllaç) (15 / gener / 2018) |
+ | <!-- [https://www.npmjs.com/package/node-red Instal·lació per a Ubuntu (Step 2)] --> | ||
− | [https:// | + | ==== Node RED a Raspberry Pi, BeagleBone Black i Windows ==== |
+ | [https://nodered.org/docs/getting-started/installation Instal·lació a Raspberry Pi, BeagleBone Black i Windows] (15 / gener / 2018) | ||
− | === | + | === Exemples d'ús del Node RED === |
− | [https://binefa.cat/ | + | [https://www.binefa.cat/IoT/nodeRed/prj/mqtt_esp8266_esp32/ex00/ Exemple amb MQTT i NodeRED emprant ESP8266 i ESP32] |
− | [https://binefa.cat/ | + | [https://www.binefa.cat/IoT/nodeRed/prj/mqtt_esp8266_esp32/ex01/ Exercici amb MQTT i NodeRED emprant ESP8266] |
− | + | [https://www.binefa.cat/IoT/nodeRed/prj/modbusCtrl/ ModBus TCP amb NodeRED] | |
− | [https://binefa.cat/ | ||
− | [https://binefa.cat/ | + | [https://www.binefa.cat/IoT/nodeRed/prj/numAleat/ Exemple de generació de número aleatori amb NodeRED] |
− | [https://binefa.cat/ | + | [https://www.binefa.cat/IoT/nodeRed/prj/statsCtrl/ Interaccionar amb ordres de terminal amb NodeRED] |
− | [https://binefa.cat/ | + | [https://www.binefa.cat/IoT/nodeRed/prj/ttnCtrl/ Interacció amb The Things Network des de NodeRED] (Fet servir de facto a la prova de bidireccionalitat) |
− | [ | + | === Node RED emprant Telegram === |
+ | [[Un exemple d'us de Telegram amb el NodeRed]] (23 / novembre / 2018) | ||
− | [ | + | [[Bot de Telegram]] (23 / novembre / 2018) |
− | == | + | == Snap == |
− | |||
− | |||
− | [https:// | + | [https://github.com/jmoenig/Snap Codi font. Replicable a qualsevol servidor] by [https://twitter.com/moenig Jens Mönig] |
− | + | [http://snap4arduino.rocks/ Snap4Arduino] | |
− | [ | ||
− | [http:// | + | [http://electronics.cat/Snap Un exemple d'Snap personalitzat] (hi ha biblioteques personalitzades) |
− | + | [[Biblioteques personalitzades a Snap]] | |
− | [ | ||
== Presentacions (Arduino, Raspberry Pi, Orange Pi, C.H.I.P., IoT) == | == Presentacions (Arduino, Raspberry Pi, Orange Pi, C.H.I.P., IoT) == | ||
− | [https://binefa.cat/ | + | [https://www.binefa.cat/training/ceic/20181031/20181031_ceic_02.pdf Arduino i Raspberry Pi. Microcontroladors d'ús professional (matí: Arduino)] - [http://formacio.eic.cat/cursos/1100481 Formació al Col·legi d'Enginyers Industrials de Catalunya] (31 / octubre / 2018) |
− | [ | + | [[Demostració d'us de LoRaWAN amb un PLC d'IndustrialShields a la Fira IOTS-2018]] (16-18 d'octubre 2018) |
− | [ | + | [[Introducció ràpida a LoRaWAN i The Things Network]] a l'[http://www.icm.csic.es/ Institut de Ciències del Mar] (27 de setembre 2018) |
− | [https:// | + | [[Introducció a Internet de les Coses - juny 2018]] (Curset de formació per a professors de CF realitzat a l'[https://agora.xtec.cat/iesramblaprim/ Institut Rambla Prim]) |
− | [ | + | [[Introducció a Internet de les Coses - juny 2018]] |
− | [https://binefa.cat/ | + | [https://www.binefa.cat/training/ceic/20180221/20180221_ceic_01.pdf Arduino i Raspberry Pi. Microcontroladors d'ús professional (matí: Arduino)] - [http://formacio.eic.cat/cursos/1098443 Formació al Col·legi d'Enginyers Industrials de Catalunya] (21 / febrer / 2018) |
− | [ | + | [http://formacio.things.cat:8000/?p=506 Sistema domòtic amb Internet de les Coses] (16 / setembre / 2017) - Diada del Programari Lliure 2017 |
− | [ | + | [http://formacio.things.cat:8000/?p=470 Orange Pi, C.H.I.P. i Raspberry Pi] (22 / abril / 2017) - Diada de la Llibertat del Maquinari 2017 |
− | [ | + | [http://formacio.things.cat:8000/?p=401 Comunicacions amb Raspberry Pi] (11 / març / 2017) - Raspberry Pi Jam a Barcelona (2017) |
− | [ | + | [http://formacio.things.cat:8000/?p=396 Electrònica lliure i aplicacions IdC (Internet de les Coses / IoT) obertes i lliures que permeten un desenvolupament col·laboratiu i en comunitat] (12 / gener / 2017) |
− | [ | + | [http://formacio.things.cat:8000/?p=391 Arduino i Raspberry Pi (4/4)] (1 / desembre / 2016) - Formació per a [http://telecos.cat/verNoticias.aspx?CAL=1324 telecos.cat] |
− | [ | + | [http://formacio.things.cat:8000/?p=386 Arduino i Raspberry Pi (3/4)] (29 / novembre / 2016) - Formació per a [http://telecos.cat/verNoticias.aspx?CAL=1324 telecos.cat] |
− | |||
− | |||
− | [ | + | [http://formacio.things.cat:8000/?p=383 Arduino i Raspberry Pi (2/4)] (24 / novembre / 2016) - Formació per a [http://telecos.cat/verNoticias.aspx?CAL=1324 telecos.cat] |
− | [ | + | [http://formacio.things.cat:8000/?p=378 Arduino i Raspberry Pi (1/4)] (22 / novembre / 2016) - Formació per a [http://telecos.cat/verNoticias.aspx?CAL=1324 telecos.cat] |
− | [ | + | [http://formacio.things.cat:8000/?p=341 Tecnologies creatives a l’aula. Ús d'Arduino i Raspberry Pi] (4, 5, 7 i 8 / juliol / 2016) - Fòrum 2016 (formació per a professors de la [http://fje.edu/ Fundació Jesuïtes Educació]) |
− | [ | + | [http://formacio.things.cat:8000/?p=256 Sistemes encastats d’escala petita] (28 / octubre / 2015) - Formació per al [http://update.eic.cat/wps/update/FitxaVenda?or=1092199&cp=3 Col·legi d'Enginyers Industrials de Catalunya] |
− | [ | + | [http://formacio.things.cat:8000/?p=222 Tecnologies creatives a l’aula. Ús d'Arduino i Raspberry Pi] (29 i 30 juny / 1 i 2 juliol / 2015) - Fòrum 2015 (formació per a professors de la [http://fje.edu/ Fundació Jesuïtes Educació]) |
− | [ | + | [http://formacio.things.cat:8000/?p=191 Curset de 5 hores sobre maquinari lliure] (21 / juny / 2015) |
− | [ | + | [http://formacio.things.cat:8000/?p=216 Maquinari lliure amb Ubuntu] ( 9 / maig / 2015) |
− | [ | + | [http://formacio.things.cat:8000/?p=208 Comunicació entre Raspberry Pi i Arduino emprant plaques d’electronics.cat ] (11 / abril / 2015) |
− | [ | + | [http://formacio.things.cat:8000/?p=202 Exercicis de maquinari lliure amb Arduino Nano] (17 / gener / 2015) |
− | [ | + | [http://formacio.things.cat:8000/?p=212 Maquinari lliure amb Arduino Nano] (20 / setembre / 2014) |
− | [ | + | [http://formacio.things.cat:8000/?p=199 Maquinari lliure controlat amb GNU/Linux (32 bits)] (23 / novembre / 2014) |
− | [ | + | [http://formacio.things.cat:8000/?p=196 Exercicis de maquinari lliure amb Arduino Nano] (15 / novembre / 2014) |
− | [ | + | [http://formacio.things.cat:8000/?p=188 Maquinari lliure controlat amb GNU/Linux] (19 / març / 2014) - JEDAI - Institut Joan d'Àustria |
− | [ | + | [http://formacio.things.cat:8000/?p=185 Maquinari lliure controlat amb GNU/Linux] (15 / març / 2014) - Esplai Virtual a Neàpolis |
− | [ | + | [http://formacio.things.cat:8000/?p=182 Maquinari lliure controlat amb Ubuntu] (9 / novembre / 2013) - [https://wiki.ubuntu.com/CatalanTeam/Activitats/SaucySalamander#graellaActivitats Festa Saucy Salamander Ubuntu 13.10] |
− | [ | + | [http://formacio.things.cat:8000/?p=179 Raspberry Pi per connectar maquinari lliure] ( 5 / octubre / 2013) - Mollerussa LAN Party |
− | [https:// | + | [http://formacio.things.cat:8000/?p=176 Raspberry Pi per connectar maquinari lliure] (29 / setembre / 2013) - Dia de la Llibertat del Programari |
+ | |||
+ | [http://formacio.things.cat:8000/?p=173 Python on Raspberry Pi] (September 12th, 2013) - [https://www.meetup.com/python-185/events/114969302/ Python meetup in Barcelona] | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=170 Sessió pràctica de maquinari lliure] (15 / juliol / 2013) - [http://www.mob-barcelona.com/ MOB - Makers of Barcelona] | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=167 Sessió pràctica de maquinari lliure] (29 / juny / 2013) - Barcelona Mini Maker Faire | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=164 Sessió pràctica de maquinari lliure] (11 / maig / 2013) - [https://wiki.ubuntu.com/CatalanTeam/Activitats/RaringRingtail Festa Raring RingTail Ubuntu 13.04] | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=161 Sessió pràctica de maquinari lliure – OSHW] ( 6 / maig / 2013) - [http://www.mob-barcelona.com/ MOB - Makers of Barcelona] | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=158 Sessió pràctica de maquinari lliure – OSHW] (10 / novembre / 2012) - [https://wiki.ubuntu.com/CatalanTeam/Activitats/QuantalQuetzal#graellaActivitats Festa Quantal Quetzal Ubuntu 12.10] | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=155 Maquinari Lliure – OSHW] (15 / setembre / 2012) - Diada de la Llibertat del Maquinari 2017 | ||
== Robots == | == Robots == | ||
− | [ | + | === Robots físics === |
+ | [http://formacio.things.cat:8000/?p=346 Robot pel curs 2016-2017] (20 / setembre / 2016) | ||
+ | |||
+ | [http://formacio.things.cat:8000/?p=205 Maquinari lliure Exemples pràctics. Com construir-te el teu propi robot] (23 / febrer / 2015) XXII Jornades Tècniques a l'Institut Escola del Treball de Barcelona | ||
+ | |||
+ | === Bots === | ||
+ | ==== Bot de Telegram ==== | ||
+ | [[Bot de Telegram]] | ||
+ | |||
+ | ==== Bot de Mastodon ==== | ||
+ | No totes les instàncies de [https://ca.wikipedia.org/wiki/Mastodon_(xarxa_social) Mastodon] faciliten la instal·lació de bots. Per a fer les primeres passes us recomano aquesta [https://botsin.space/ instància pensada per allotjar bots de Mastodon]. | ||
+ | |||
+ | [https://botsin.space/@siarq_sensors Exemple de bot de Mastodon] per a fer lectures de sensors cada hora. | ||
+ | |||
+ | [https://gist.github.com/aparrish/661fca5ce7b4882a8c6823db12d42d26 Getting credentials for the Mastodon API with Mastodon.py, step by step] | ||
+ | |||
+ | == SCADA == | ||
+ | === SCADA DIY using Python === | ||
+ | [http://formacio.things.cat:8000/?p=272 Scada using Python and Arduino] (November 30, 2015) | ||
+ | |||
+ | [https://wiki.binefa.cat/index.php?title=SCADA_fent_servir_Python_QML_i_Arduino SCADA fent servir Python QML i Arduino] (8 / gener / 2018) | ||
− | [https://binefa.cat/ | + | === SCADA Indusoft === |
+ | [https://www.binefa.cat/indusoft/indusoftIntro00.pdf Introducció al disseny amb Indusoft] (4 / gener / 2018) | ||
− | + | [https://www.binefa.cat/indusoft/indusoft00.pdf Introducció a les comunicacions (1a part)] (3 / gener / 2018) | |
− | [https://binefa.cat/ | ||
− | + | [https://www.binefa.cat/indusoft/indusoft02.pdf Introducció a les comunicacions (2a part)] (7 / gener / 2018) | |
− | [https://binefa.cat/indusoft/ | ||
− | + | [[Receptes a l'Indusoft]] ( 8 / març / 2018 ) | |
− | [ | ||
− | [ | + | == Visualització i emmagatzematge IoT == |
+ | === Grafana === | ||
+ | [http://docs.grafana.org/installation/debian/ Installing Grafana on Debian] | ||
− | [ | + | === InfluxDB === |
+ | [[InfluxDB]] | ||
− | [https:// | + | === Sentilo === |
+ | [https://youtu.be/DoCdtQZTZ-A Configuració inicial del Sentilo] | ||
− | [https:// | + | [https://youtu.be/DUfvC16ipjo Connectant l'ESP8266 a Sentilo] |
− | [https:// | + | [https://sentilo.readthedocs.io/en/latest/api_docs/services/order/get_orders.html Captació i publicació de dades a Sentilo] |
− | + | Per a recollir dades: | |
− | + | Conjunt de sensors: | |
+ | curl -X GET -H "IDENTITY_KEY: b4d4db576b754d5b71234c5c448df5c2da12c0edeba574ff9a98045a108f056b" https://api-sentilo.dipba.cat/data/adr@empr | ||
− | + | Un únic sensor: | |
+ | curl -X GET -H "IDENTITY_KEY: b4d4db576b754d5b71234c5c448df5c2da12c0edeba574ff9a98045a108f056b" https://api-sentilo.dipba.cat/data/adr@empr/CO2_04_RH/ | ||
== Sistemes Operatius == | == Sistemes Operatius == | ||
+ | === Alguns trucs === | ||
+ | Com saber la IP pública des del terminal: | ||
+ | wget http://ipecho.net/plain -O - -q ; echo | ||
+ | |||
+ | Per saber la distribució de GNU/Linux mitjançant el terminal: | ||
+ | cat /etc/os-release | ||
+ | lsb_release -a | ||
+ | hostnamectl | ||
+ | |||
+ | [https://unixcop.com/install-latest-openssl-version-debian-11/ How to Install the latest OpenSSL version on Debian 11] (11 / maig / 2023) | ||
+ | |||
+ | [https://www.things.cat/index.php?title=Instal%C2%B7laci%C3%B3_d%27un_servidor_de_s%C3%B2cols_web_a_un_Debian_amb_Apache Instal·lació d'un servidor de sòcols web a un Debian amb Apache] (24 / gener / 2020) | ||
+ | |||
+ | [[Com accedir mitjançant FTP a Google Drive]] | ||
+ | |||
+ | [[Recursos en Debian]] | ||
+ | |||
+ | [[Accelerant l'arrencada d'Ubuntu]] (15 / gener / 2018) | ||
+ | |||
[[OpenGL a màquines virtuals]] (29 / desembre / 2017) | [[OpenGL a màquines virtuals]] (29 / desembre / 2017) | ||
− | [ | + | [http://formacio.things.cat:8000/?p=238 Metadistribució basada en Debian Jessie 8.2] (7 / octubre / 2015) |
+ | |||
+ | [http://formacio.things.cat:8000/?p=69 Arrencant Debian des d’una memòria USB] (15 / setembre / 2014) | ||
+ | |||
+ | Addició d'usuaris (cal tenir instal·lat el paquet '''whois''' per a l'ordre mkpasswd): | ||
+ | useradd tux -u 1001 -g users -d /home/tux -m -s /bin/bash -k /etc/skel -G adm,sys -p $(mkpasswd Clot8Fje@9) | ||
+ | |||
+ | === Ús de wine === | ||
+ | sudo apt install q4wine wine winetricks | ||
+ | |||
+ | [https://wiki.winehq.org/Winetricks winetricks] | ||
+ | |||
+ | Seguint les instruccions de la [https://appdb.winehq.org/objectManager.php?sClass=version&iId=38286 guia de wine per a instal·lar Adobe Acrobat Reader DC], des del terminal: | ||
+ | winetricks atmlib | ||
+ | winetricks riched20 | ||
+ | winetricks wsh57 | ||
+ | winetricks mspatcha | ||
+ | winetricks allfonts | ||
+ | |||
+ | wine AcroRdrDC1900820071_ca_ES.exe | ||
+ | |||
+ | === Skip '''Certificate verification failed''' === | ||
+ | If doing ''sudo apt update'' there is ''Certificate verification failed'' error like this: | ||
+ | |||
+ | Err:5 https://deb.nodesource.com/node_12.x bullseye InRelease | ||
+ | Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown. The received OCSP status response is invalid. Could not handshake: Error in the certificate verification. [IP: 185.43.182.75 443] | ||
+ | |||
+ | It is not recommended to do this. But if there is not any good solution: | ||
+ | sudo apt-get update -o Acquire::https://deb.nodesource.com/node_12.x::Verify-Peer=false | ||
+ | sudo apt-get upgrade -o Acquire::https://deb.nodesource.com/node_12.x::Verify-Peer=false | ||
+ | |||
+ | === Tutorials d'ajuda emprant GNU/Linux === | ||
+ | [https://itsfoss.com/create-swap-file-linux/ How to Create and Use Swap File on Linux] | ||
+ | |||
+ | [https://itsfoss.com/create-swap-file-linux/ How to Increase Swap Size on Ubuntu Linux] | ||
+ | |||
+ | [https://linuxhandbook.com/nginx-reverse-proxy-docker/ Using Docker to Set up Nginx Reverse Proxy With Auto SSL Generation] | ||
+ | |||
+ | [https://linuxhandbook.com/install-nextcloud-docker/ How to Install Nextcloud with Docker on Your Linux Server] | ||
+ | |||
+ | === Servidor intermediari invers === | ||
+ | [https://phoenixnap.com/kb/docker-nginx-reverse-proxy How to Deploy NGINX Reverse Proxy on Docker] | ||
+ | |||
+ | [https://linuxhandbook.com/nginx-reverse-proxy-docker/ Using Docker to Set up Nginx Reverse Proxy With Auto SSL Generation] | ||
+ | |||
+ | [https://www.things.cat/index.php/P%C3%A0gina_principal#VPS Exemple d'ús un servidor intermediari invers a un VPS] | ||
+ | |||
+ | == Disseny electrònic == | ||
+ | Instal·lació de KiCAD a Debian 9: | ||
+ | sudo apt -t stretch-backports install kicad kicad-doc-ca kicad-doc-en kicad-footprints kicad-libraries kicad-packages3d kicad-symbols kicad-templates kicad-demos kicad-common | ||
+ | |||
+ | [[Ús de l'autoencaminador (autorouter) a KiCAD]] (11 / maig / 2018) | ||
+ | |||
+ | [http://www.binefa.net/electronica/tutorial02/ Ús del KiCAD] (27 / desembre / 2007) | ||
+ | |||
+ | [http://www.binefa.net/electronica/tutorial03/ Fabricació de circuits impresos. Mètode de la planxa domèstica] (8 / gener / 2008) | ||
+ | |||
+ | [http://www.binefa.net/electronica/tutorial05/ Convertidor RS232 - I2C] ( 15 / gener / 2008) | ||
+ | |||
+ | [http://www.binefa.net/electronica/tutorial04/ Programació d'un microcontrolador AVR pel port paral·lel] (7 / maig / 2008) | ||
+ | |||
+ | [http://www.binefa.net/electronica/tutorial01/ Disseny d'una placa de circuit imprès controlada per ordinador fent ús d'eines lliures i en català] (11 / novembre / 2007) | ||
+ | |||
+ | [https://telproce.com/ Empresa de marcat CE] | ||
+ | |||
+ | [https://api.riot-os.org/group__cpu__esp32__esp32.html Propietats dels GPIO de l'ESP32] | ||
+ | |||
+ | == Programació == | ||
+ | [http://zetcode.com/ Tutorials per a diferents llenguatges de programació (PyQt, Java, Qt, bases de dades, Python i d'altres)] feta per [https://twitter.com/janbodnar Jan Bodnar] | ||
+ | |||
+ | [[Recursos en Python]] | ||
+ | |||
+ | [[Recursos en C]] | ||
+ | |||
+ | [[Recursos en Node.js]] | ||
+ | |||
+ | [[Recursos en Qt i QML]] | ||
+ | |||
+ | === Instal·lant Qt === | ||
+ | ==== Debian d'escriptori ==== | ||
+ | A GNU/Linux és convenient que instal·leu el paquet '''libgl1-mesa-dev''' | ||
+ | sudo apt install libgl1-mesa-dev | ||
+ | |||
+ | ==== qtserialport ==== | ||
+ | [https://wiki.qt.io/Qt_Serial_Port Qt Serial Port] | ||
+ | |||
+ | Per a instal·lar '''qtserialport''': | ||
+ | |||
+ | Cerqueu el directori '''lib''' de la vostra distribució Qt: | ||
+ | $ /home/jordi/Qt/5.15.2/gcc_64/bin/'''qmake -query QT_INSTALL_LIBS''' | ||
+ | /home/jordi/Qt/5.15.2/gcc_64/lib | ||
+ | $ cd /home/jordi/Qt/5.15.2/gcc_64/lib | ||
+ | $ git clone git://code.qt.io/qt/qtserialport.git | ||
+ | $ cd qtserialport | ||
+ | |||
+ | Actualitzeu-ho a la vostra versió | ||
+ | git checkout 5.'''x'''.'''y''' | ||
+ | x i y es poden trobar fent | ||
+ | $ git branch -a | ||
+ | A aquest exemple | ||
+ | $ git checkout 5.15.2 | ||
+ | |||
+ | $ mkdir qtserialport-build | ||
+ | $ cd qtserialport-build | ||
+ | $ /home/jordi/Qt/5.15.2/gcc_64/bin/qmake ../qtserialport.pro | ||
+ | $ make | ||
+ | $ sudo make install | ||
+ | |||
+ | ==== qtmqtt ==== | ||
+ | Per a instal·lar '''qtmqtt''': | ||
+ | |||
+ | git clone git://code.qt.io/qt/qtmqtt.git | ||
+ | cd qtmqtt | ||
+ | '''git checkout 5.14''' | ||
+ | mkdir build | ||
+ | cd build | ||
+ | qmake -r .. | ||
+ | make | ||
+ | sudo make install | ||
+ | |||
+ | (Abans de fer el qmake, feu un '''git checkout 5.14''' -canvieu el 5.14 per la vostra versió de Qt instal·lada al vostre sistema-) | ||
+ | |||
+ | Heu de cercar la ruta de qmake en cas de que no hi sigui al vostre PATH | ||
+ | /home/'''jordi'''/bin/Qt/'''5.14.1'''/gcc_64/bin/qmake -r .. | ||
+ | |||
+ | ===== Instal·lació de '''QtMqtt per Android''' ===== | ||
+ | Malgrat que ja us funcioni la biblioteca QtMqtt en programes d'escriptori, heu de fer la compilació de la biblioteca QtMqtt per a la versió de Qt/QML que feu servir per a poder executar programes que duguin aquesta biblioteca a Android. | ||
+ | |||
+ | Hi ha diversos suggeriments de com fer-ho. Després de diversos intents, aquest és el sistema que a mi m'ha funcionat: | ||
+ | |||
+ | Cerqueu el directori '''lib''' de la vostra distribució Qt per a '''Android x86''': | ||
+ | jordi@ecat-XPS13:~$ '''/home/jordi/Qt/6.0.0/android_x86/bin/qmake -query QT_INSTALL_LIBS''' | ||
+ | /home/jordi/Qt/6.0.0/android_x86/lib | ||
+ | o, per al dispositiu físic Android amb tecnologia '''Android ARM''': | ||
+ | ecat@iot-ecat:~$ '''/home/ecat/Qt/6.0.0/android_armv7/bin/qmake -query QT_INSTALL_LIBS''' | ||
+ | /home/ecat/Qt/6.0.0/android_armv7/lib | ||
+ | Aneu a la carpeta que ens retorna l'ordre anterior ('''Android x86'''): | ||
+ | jordi@ecat-XPS13:~$ '''cd /home/jordi/Qt/6.0.0/android_x86/lib''' | ||
+ | o, per al dispositiu físic Android amb tecnologia '''Android ARM''': | ||
+ | ecat@iot-ecat:~$ cd /home/ecat/Qt/6.0.0/android_armv7/lib | ||
+ | I feu el procés d'instal·lació ('''Android x86'''): | ||
+ | jordi@ecat-XPS13:~/Qt/6.0.0/android_x86/lib$ '''git clone git://code.qt.io/qt/qtmqtt.git''' | ||
+ | jordi@ecat-XPS13:~/Qt/6.0.0/android_x86/lib$ '''cd qtmqtt/''' | ||
+ | jordi@ecat-XPS13:~/Qt/6.0.0/android_x86/lib/qtmqtt$ '''git checkout 6.0''' | ||
+ | jordi@ecat-XPS13:~/Qt/6.0.0/android_x86/lib/qtmqtt$ '''rm -r examples/''' | ||
+ | o, per al dispositiu físic Android amb tecnologia '''Android ARM''': | ||
+ | ecat@iot-ecat:~/Qt/6.0.0/android_armv7/lib$ '''git clone git://code.qt.io/qt/qtmqtt.git''' | ||
+ | ecat@iot-ecat:~/Qt/6.0.0/android_armv7/lib$ '''cd qtmqtt/''' | ||
+ | ecat@iot-ecat:~/Qt/6.0.0/android_armv7/lib/qtmqtt$ '''git checkout 6.0''' | ||
+ | ecat@iot-ecat:~/Qt/6.0.0/android_armv7/lib/qtmqtt$ rm -r examples/ | ||
+ | Per a '''Android x86''', mitjançant el '''Qt Creator''' obriu el projecte /home/jordi/Qt/6.0.0/android_x86/lib/qtmqtt/'''qtmqtt.pro'''. Aneu al menú i seleccioneu '''Build / Run qmake''' | ||
+ | |||
+ | Per a '''Android ARM''', mitjançant el '''Qt Creator''' obriu el projecte /home/ecat/Qt/6.0.0/android_armv7/lib/qtmqtt/'''qtmqtt.pro'''. Aneu al menú i seleccioneu '''Build / Run qmake''' | ||
+ | |||
+ | Torneu al terminal d'abans i feu ('''Android x86'''): | ||
+ | jordi@ecat-XPS13:~/Qt/6.0.0/android_x86/lib/qtmqtt$ '''make''' | ||
+ | jordi@ecat-XPS13:~/Qt/6.0.0/android_x86/lib/qtmqtt$ '''sudo make install''' | ||
+ | o, per al dispositiu físic Android amb tecnologia '''Android ARM''': | ||
+ | ecat@iot-ecat:~/Qt/6.0.0/android_armv7/lib/qtmqtt$ '''make''' | ||
+ | ecat@iot-ecat:~/Qt/6.0.0/android_armv7/lib/qtmqtt$ '''sudo make install''' | ||
+ | Copieu, fora de la ruta de les Qt, els projectes d'exemple [https://binefa.cat/dam2021/20210121_qml/quickpublication.zip '''quickpublication'''] i [https://binefa.cat/dam2021/20210121_qml/quicksubscription.zip '''quicksubscription''']. Obriu els dos projectes per a que puguin ser executats des de l'escriptori i des del mòbil (emulat o no). Per a verificar llur funcionament, podeu executar un projecte al dispositiu mòbil i l'altre a l'escriptori. | ||
+ | |||
+ | ==== Raspbian ==== | ||
+ | [https://www.tal.org/tutorials/building-qt-512-raspberry-pi Instal·lant les Qt a la Raspberry Pi] | ||
+ | |||
+ | === PureQML === | ||
+ | [https://pureqml.com/ Pàgina oficial de PureQML] | ||
+ | |||
+ | ==== Posada en marxa del PureQML ==== | ||
+ | * Instal·lació de l'eina '''python-future''': | ||
+ | pip3 install future | ||
+ | |||
+ | * Primera aplicació | ||
+ | mkdir prjFolder | ||
+ | cd prjFolder | ||
+ | git clone https://github.com/pureqml/qmlcore.git | ||
+ | ./qmlcore/build --boilerplate | ||
+ | ./qmlcore/build | ||
+ | |||
+ | Obriu amb un navegador l'arxiu ''prjFolder/build.web/index.html'' | ||
+ | |||
+ | * Modificació de ''prjFolder/src/app.qml'': | ||
+ | Text { | ||
+ | anchors.fill: context; | ||
+ | |||
+ | '''text: 'Primer exemple de pureQML';''' | ||
+ | '''color: 'red';''' | ||
+ | font.pixelSize: 32; | ||
+ | verticalAlignment: Text.AlignVCenter; | ||
+ | horizontalAlignment: Text.AlignHCenter; | ||
+ | } | ||
+ | Reconstruïu-ho: | ||
+ | ./qmlcore/build | ||
+ | |||
+ | Torneu a obrir amb un navegador l'arxiu ''prjFolder/build.web/index.html'' per a observar els canvis | ||
+ | |||
+ | == Formació == | ||
+ | === Escola del Clot === | ||
+ | [http://www.binefa.com/index.php?title=Curs_2019-2020 Curs 2019-2020] | ||
+ | |||
+ | [[Curs 2018-2019]] | ||
+ | |||
+ | [[Examen de programació de 2n d'SMX. Curs 2021-2022 | Examen de programació de 2n d'SMX-A]] | ||
+ | |||
+ | === UPC-School === | ||
+ | [[Complement del Màster d'Industria 4.0 de la promoció 2018-2019]] durant l'any 2021 | ||
+ | |||
+ | 21802500 - Màster Industria 4.0 [[Tecnologías IoT, Hands on y MVP]] (2019) | ||
+ | |||
+ | === Col·legi d'Enginyers Industrials de Catalunya === | ||
+ | |||
+ | [https://www.binefa.cat/training/ceic/20181031/20181031_ceic_02.pdf Arduino i Raspberry Pi. Microcontroladors d'ús professional (matí: Arduino)] - [http://formacio.eic.cat/cursos/1102838 Formació al Col·legi d'Enginyers Industrials de Catalunya] (9 / abril / 2019 i 4 / desembre / 2019) | ||
+ | |||
+ | [[Fent servir protocols de comunicacions a la placa S4A basada en Arduino Nano]] (9 / abril / 2019 i 4 / desembre / 2019) | ||
+ | |||
+ | [https://www.binefa.cat/training/ceic/20191204/ Codi ESP8266 emprant MQTT] (4 / desembre / 2019) | ||
+ | |||
+ | [https://www.binefa.cat/training/ceic/20180221/20180221_ceic_02.pdf Arduino i Raspberry Pi. Microcontroladors d'ús professional (matí: Arduino)] - [http://formacio.eic.cat/cursos/1100481 Formació al Col·legi d'Enginyers Industrials de Catalunya] (31 / octubre / 2018) | ||
+ | |||
+ | === Formació per a professors de secundària i cicles formatius === | ||
+ | [[Introducció a Internet de les Coses - juny 2018]] (Curset de formació per a professors de CF realitzat a l'[https://agora.xtec.cat/iesramblaprim/ Institut Rambla Prim]) | ||
+ | |||
+ | [https://www.binefa.cat/training/forum2016/ Fòrum 2016 - Jesuïtes Educació] Tecnologies creatives a l'aula. Ús d'Arduino i Raspberry Pi | ||
+ | |||
+ | [https://www.binefa.cat/training/forum2015/ Fòrum 2015 - Jesuïtes Educació] Tecnologies creatives a l'aula. Ús d'Arduino i Raspberry Pi | ||
+ | |||
+ | === Internet de les Coses === | ||
+ | 21802500 - Màster Industria 4.0 [[Tecnologías IoT, Hands on y MVP]] (2019) | ||
+ | |||
+ | [[Introducció ràpida a LoRaWAN i The Things Network]] a l'[http://www.icm.csic.es/ Institut de Ciències del Mar] (27 / setembre / 2018 i 25 / setembre / 2019) | ||
+ | |||
+ | [[Introducció a Internet de les Coses - juny 2018]] (Curset de formació per a professors de CF realitzat a l'[https://agora.xtec.cat/iesramblaprim/ Institut Rambla Prim]) | ||
+ | |||
+ | === Formació per a empreses i ajuntaments === | ||
+ | |||
+ | ==== Viladecans 19 de febrer de 2020 ==== | ||
+ | [[Introducció ràpida a LoRaWAN i The Things Network]] | ||
+ | |||
+ | [[LoRa]] | ||
+ | |||
+ | [[Tecnologías IoT, Hands on y MVP (4/5/2019)]] | ||
+ | |||
+ | ==== [https://www.te.com/ TE Connectivity] ==== | ||
− | [ | + | [[Curset a TE Connectivity del 4 de març de 2020]] |
Revisió de 09:52, 10 jul 2024
Contingut
- 1 Comunicacions
- 2 Mèdia
- 3 Microcontroladors
- 4 Node RED
- 5 Snap
- 6 Presentacions (Arduino, Raspberry Pi, Orange Pi, C.H.I.P., IoT)
- 7 Robots
- 8 SCADA
- 9 Visualització i emmagatzematge IoT
- 10 Sistemes Operatius
- 11 Disseny electrònic
- 12 Programació
- 13 Formació
Comunicacions
Sèrie (TTL i RS485)
Modbus RTU using Python and Qt (May 3, 2016)
Modbus RTU using Arduino and pyQt (May 3, 2016)
Modbus RTU on RS485 using Arduino and PyQt (May 9, 2016)
Ús del port sèrie a un autòmat programable (CP1E d'Omron) ( 4 / juny / 2015)
Using digital I/O. Arduino + firmata + pyFirmata + pyQt (December 8, 2014)
Arduino + Raspberry Pi using pyFirmata and pyQt (November 26, 2014)
Serial read using Ardublock (November 18, 2014)
TCP / UDP
TCP/UDP Capa de transport d'Ethernet (22 / gener / 2016)
Modbus TCP/IP on Arduino Nano + ENC28J60 (August 27, 2014)
Demo 29: How to use HTTPS in Arduino ESP32
UDP
MQTT i MQTTS
Xarxes d'àrea estesa de baix consum (LPWAN)
Conceptes teòrics
Espectre eixamplat (Chirp Spread Spectrum)
Espectre eixamplat per seqüència directa (DSSS)
Espectre eixamplat per salt de freqüència (FHSS)
Comparison table of Low Power WAN alternatives
LoRa
SigFox
Antenes
Mèdia
Audiovisual
Intervenció al vídeo sobre Internet de les Coses per a l'iFest 2018 (enregistrament 21 / novembre / 2018)
Vídeo sencer sobre Internet de les Coses per a l'iFest 2018 (enregistrament 21 / novembre / 2018)
Programes de ràdio
El Cafè de les Telecos: L’electrònica del present i del futur (7 / octubre / 2015)
Make It! Un projecte català amb Arduino i Scratch – Programa 277 de “Mossega la poma” (8 / març / 2016)
Revistes
Microcontroladors d'ús professional (08 / febrer / 2018)
Prototipatge electrònic a l’abast de tothom (9 / octubre / 2015)
Mesura experimental d'acceleració i velocitat per PC (novembre / 1994)
Microcontroladors
Arduino
Arduino genèric
SPI - Sample of master and slave using two Arduino (May 9, 2016)
How to deal with binary data between Python and Arduino (June 5, 2016)
Arduino library for SX1276 using LoRA and PyQt (June 6, 2016)
Adding AES encryption to LoRa at SX1276 on Arduino (June 15, 2016)
Ús de la biblioteca ecat.h a Arduino (1a part) (22 / desembre / 2014)
Ús de la biblioteca ecat.h a Arduino (2a part) (28 / desembre / 2014)
Ús de la biblioteca ecat.h a Arduino (3a part) (29 / desembre / 2014)
Radio Control using Arduino and NRF24L01 (December 12, 2014)
Emprant ArduBlock (25 / agost / 2014)
Uso de ArduBlock (25 / Agosto / 2014)
Using ArduBlock (August 25, 2014)
nano-eCat using 8 relays (August 25, 2014)
Arduino Nano + LCD + Joystick (August 28, 2014)
Arduino Nano + LCD + Joystick + Servo (August 30, 2014)
Ultrasound Distance Measurement (September 1, 2014)
Arduino’s VU-meter using ArduBlock (September 2, 2014)
SCoop installation on Arduino IDE (November 18, 2014)
SCoop + Ardublock (November 18, 2014)
S4A Programming Learning Board
Adreça de Nufesa (Carrer Josep Estivill 4, Barcelona) a Open Street Map i Google Maps Botiga d'electrònica a on es pot comprar la placa S4A PLB
Disseny electrònic de la placa Desenvolupada amb KiCad
Controladors (drivers) per a Finestrots (MS Windows): CH341 (comú a les plaques xineses) i FT232 (comú a les plaques europees i americanes)
Descàrrega de Snap For Arduino i S4A Scratch For Arduino
Microprogramari (firmware) per a l'Arduino per a fer funcionar Snap For Arduino i Scratch For Arduino
Entorn de desenvolupament (IDE) d'Arduino Recomano que us baixeu la versió 1.8.5
Codi de proves amb l'Arduino IDE
Algunes biblioteques per a l'Arduino IDE
Fent servir protocols de comunicacions a la placa S4A basada en Arduino Nano (9 / abril / 2019)
Xerrada sobre S4A PLB / Make It! a la llibreria Hispano Americana (21 / juny / 2016) Tutorial introductori a la placa S4A PLB
Electrònica amb S4A (13 / novembre / 2015) Amb els arxius del disseny de la placa (OSHW)
How to install S4A on 64 bit Debian Jessie (October 6, 2015)
S4A Progamming Learning Board (19 / setembre / 2015)
Displaying analog data using Python on S4A Programming Learning Board (October 13, 2016)
Displaying realtime data on web using plot.ly on S4A PLB (October 13, 2016)
Make It! amb Scratch per arduino El kit que conté la placa S4A PLB <-- A principi de 2019 no funciona
ESP32
ESP32 Arduino: Creating a FreeRTOS task
ESP32 DEVKIT V1
Setup of ESP32 DEVKIT V1 is like Setup of WEMOS LOLIN32 on Arduino IDE (January 14, 2018)
Demo 29: How to use HTTPS in Arduino ESP32
Demo 30: How to use Arduino ESP32 MQTTS with MQTTS Mosquitto broker (TLS/SSL)
WEMOS LOLIN32
Setup of WEMOS LOLIN32 on Arduino IDE (January 14, 2018)
Heltec's WIFI_LoRa_32
TTGO
Ús del segon port sèrie ( 4 de juny de 2018 )
Library ESP32 + OLED + LoRa module from TT GO
SPIFFS
Per a que funcioni hem hagut de formatar prèviament l'SPIFFS.
Per a pujar arxius al sistema SPIFFS de l'ESP32 es posen els arxius a la carpeta data dins del projecte fet amb PlatformIO. Des del terminal i a la carpeta del projecte:
pio run -t uploadfs
Per a fer-ho des de l'IDE d'Arduino
ESP-IDF on PlatformIO
Get started with ESP-IDF and ESP32-DevKitC: debugging, unit testing, project analysis
Troubleshooting
Corrupted Flash Memory
Programming multiple times ESP32 can corrupt flash memory. If ESP32 has an unexpected behavior, it is a good idea to erase Flash memory:
esptool.py --port /dev/ttyUSB0 erase_flash
Installing esptool:
sudo pip install esptool
or
sudo pip3 install esptool
ESP32 Problem sample:
Connecting to AnyWIFI E (22) wifi: misc_nvs_load 208 ret=4364 E (22) wifi: wifi_init 1420 ret=4364
WiFi connecting issues
Before to setting WiFi up it is a good idea to reset it. It solves infinite loops trying to connect a detected network.
void WiFiReset() { WiFi.persistent(false); WiFi.disconnect(); WiFi.mode(WIFI_OFF); WiFi.mode(WIFI_STA); }
Brownout issues
Brownout issues are related to lack of power supply or bad solderings. But, sometimes, ignoring it allows to avoid being stuck. Only use this if you know what you are doing.
#include "soc/soc.h" #include "soc/rtc_cntl_reg.h" void setup(){ WRITE_PERI_REG(RTC_CNTL_BROWN_OUT_REG, 0); //disable brownout detector
Multiple WiFi reconnections when using MQTT
Be aware, it should be an unique node name when connecting. It is a common problem when using same code in two different chips. A good idea is set MAC address as part of that unique node name.
Testing VirKO board
ESP8266
Connexió a múltiples xarxes sense fils (23 de maig de 2018)
MQTT a l'ESP8266 (29 de gener de 2018)
ESP8266 ESP-12E Development Board v0.3 (novembre 2015)
ESP8266 witty (September 22, 2016)
ESP8266’s Witty sending data to plot.ly (October 15, 2016)
Displaying ESP8266’s LDR level on web using ThingSpeak (October 14, 2016)
ESP8266 library for SX1276 using LoRA and PyQt (June 13, 2016)
ESP8266 and Arduino using LoRa and AES encryption (June 19, 2016)
Sonoff
Reprogramació d'un Sonoff Basic (5 d'abril de 2019)
Ordinadors monoplaca (SBC)
Accés remot
Ús de xarxes virtuals privades (VPN)
Ús de ZeroTier: Configuració d'una VPN emprant ZeroTier
Raspberry Pi
Com trobar totes les Raspberry Pi connectades a la teva xarxa local / How to find Raspberry Pi on your local network:
sudo nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'
Set a static IP Address on Raspberry Pi OS Bookworm (Based on Debian 12)
Run a Program On Your Raspberry Pi At Startup
Migrating from RPi.GPIO to GPIO Zero (RPi.GPIO doesn't work on Raspberry Pi 5. GPIO Zero runs on any Raspberry Pi version, at least up to Raspberry Pi 5)
How to Control the Raspberry Pi 5 GPIO with Python 3
Captura de pantalla emprant raspi2png
Pràctica de connexió remota a una Raspberry Pi (7 / març / 2019)
Com connectar-se a diferents xarxes sense fils (20 / maig / 2018)
Com connectar-hi pantalles OLED SSD1306 (128x64) (23 / abril / 2018)
Raspberry Pi com a punt d'accés
Adaptació per a que la Raspberry Pi funcioni com a punt d'accés donant adreces IP de classe B (juny 2018)
Com connectar-hi un giroscopi GY-521 (xip MPU-6050) (27 / juliol / 2018)
Ús d'entrades analògiques amb l'ADS115 controlant sortides PWM (27 / juliol / 2018)
Instal·lant les Qt a la Raspberry Pi
xzcat 2023-02-21-raspios-bullseye-armhf-lite.img.xz | sudo dd of=/dev/sdb bs=64k oflag=dsync status=progress
WireGuard Client: Raspberry Pi OS (VPN)
Miscel·lània
Resistor Size and Packages (Power by size)
Pantalles tàctils NEXTION (19 de febrer de 2018)
How to recover bricked fake FT232 (October 30, 2014)
STM32
Programming STM32 using Arduino IDE on Debian Jessie (June 8, 2016)
Node RED
Introducció
Instal·lació del Node RED
Node RED a Ubuntu
Instal·lació per a Ubuntu 18.04
Instal·lació per a Ubuntu 16.04(Step 1) (15 / gener / 2018)
Actualitzar Node RED per a Ubuntu (entre el pas 1 i 2 de l'anterior enllaç) (15 / gener / 2018)
Node RED a Raspberry Pi, BeagleBone Black i Windows
Instal·lació a Raspberry Pi, BeagleBone Black i Windows (15 / gener / 2018)
Exemples d'ús del Node RED
Exemple amb MQTT i NodeRED emprant ESP8266 i ESP32
Exercici amb MQTT i NodeRED emprant ESP8266
Exemple de generació de número aleatori amb NodeRED
Interaccionar amb ordres de terminal amb NodeRED
Interacció amb The Things Network des de NodeRED (Fet servir de facto a la prova de bidireccionalitat)
Node RED emprant Telegram
Un exemple d'us de Telegram amb el NodeRed (23 / novembre / 2018)
Bot de Telegram (23 / novembre / 2018)
Snap
Codi font. Replicable a qualsevol servidor by Jens Mönig
Un exemple d'Snap personalitzat (hi ha biblioteques personalitzades)
Biblioteques personalitzades a Snap
Presentacions (Arduino, Raspberry Pi, Orange Pi, C.H.I.P., IoT)
Arduino i Raspberry Pi. Microcontroladors d'ús professional (matí: Arduino) - Formació al Col·legi d'Enginyers Industrials de Catalunya (31 / octubre / 2018)
Demostració d'us de LoRaWAN amb un PLC d'IndustrialShields a la Fira IOTS-2018 (16-18 d'octubre 2018)
Introducció ràpida a LoRaWAN i The Things Network a l'Institut de Ciències del Mar (27 de setembre 2018)
Introducció a Internet de les Coses - juny 2018 (Curset de formació per a professors de CF realitzat a l'Institut Rambla Prim)
Introducció a Internet de les Coses - juny 2018
Arduino i Raspberry Pi. Microcontroladors d'ús professional (matí: Arduino) - Formació al Col·legi d'Enginyers Industrials de Catalunya (21 / febrer / 2018)
Sistema domòtic amb Internet de les Coses (16 / setembre / 2017) - Diada del Programari Lliure 2017
Orange Pi, C.H.I.P. i Raspberry Pi (22 / abril / 2017) - Diada de la Llibertat del Maquinari 2017
Comunicacions amb Raspberry Pi (11 / març / 2017) - Raspberry Pi Jam a Barcelona (2017)
Electrònica lliure i aplicacions IdC (Internet de les Coses / IoT) obertes i lliures que permeten un desenvolupament col·laboratiu i en comunitat (12 / gener / 2017)
Arduino i Raspberry Pi (4/4) (1 / desembre / 2016) - Formació per a telecos.cat
Arduino i Raspberry Pi (3/4) (29 / novembre / 2016) - Formació per a telecos.cat
Arduino i Raspberry Pi (2/4) (24 / novembre / 2016) - Formació per a telecos.cat
Arduino i Raspberry Pi (1/4) (22 / novembre / 2016) - Formació per a telecos.cat
Tecnologies creatives a l’aula. Ús d'Arduino i Raspberry Pi (4, 5, 7 i 8 / juliol / 2016) - Fòrum 2016 (formació per a professors de la Fundació Jesuïtes Educació)
Sistemes encastats d’escala petita (28 / octubre / 2015) - Formació per al Col·legi d'Enginyers Industrials de Catalunya
Tecnologies creatives a l’aula. Ús d'Arduino i Raspberry Pi (29 i 30 juny / 1 i 2 juliol / 2015) - Fòrum 2015 (formació per a professors de la Fundació Jesuïtes Educació)
Curset de 5 hores sobre maquinari lliure (21 / juny / 2015)
Maquinari lliure amb Ubuntu ( 9 / maig / 2015)
Comunicació entre Raspberry Pi i Arduino emprant plaques d’electronics.cat (11 / abril / 2015)
Exercicis de maquinari lliure amb Arduino Nano (17 / gener / 2015)
Maquinari lliure amb Arduino Nano (20 / setembre / 2014)
Maquinari lliure controlat amb GNU/Linux (32 bits) (23 / novembre / 2014)
Exercicis de maquinari lliure amb Arduino Nano (15 / novembre / 2014)
Maquinari lliure controlat amb GNU/Linux (19 / març / 2014) - JEDAI - Institut Joan d'Àustria
Maquinari lliure controlat amb GNU/Linux (15 / març / 2014) - Esplai Virtual a Neàpolis
Maquinari lliure controlat amb Ubuntu (9 / novembre / 2013) - Festa Saucy Salamander Ubuntu 13.10
Raspberry Pi per connectar maquinari lliure ( 5 / octubre / 2013) - Mollerussa LAN Party
Raspberry Pi per connectar maquinari lliure (29 / setembre / 2013) - Dia de la Llibertat del Programari
Python on Raspberry Pi (September 12th, 2013) - Python meetup in Barcelona
Sessió pràctica de maquinari lliure (15 / juliol / 2013) - MOB - Makers of Barcelona
Sessió pràctica de maquinari lliure (29 / juny / 2013) - Barcelona Mini Maker Faire
Sessió pràctica de maquinari lliure (11 / maig / 2013) - Festa Raring RingTail Ubuntu 13.04
Sessió pràctica de maquinari lliure – OSHW ( 6 / maig / 2013) - MOB - Makers of Barcelona
Sessió pràctica de maquinari lliure – OSHW (10 / novembre / 2012) - Festa Quantal Quetzal Ubuntu 12.10
Maquinari Lliure – OSHW (15 / setembre / 2012) - Diada de la Llibertat del Maquinari 2017
Robots
Robots físics
Robot pel curs 2016-2017 (20 / setembre / 2016)
Maquinari lliure Exemples pràctics. Com construir-te el teu propi robot (23 / febrer / 2015) XXII Jornades Tècniques a l'Institut Escola del Treball de Barcelona
Bots
Bot de Telegram
Bot de Mastodon
No totes les instàncies de Mastodon faciliten la instal·lació de bots. Per a fer les primeres passes us recomano aquesta instància pensada per allotjar bots de Mastodon.
Exemple de bot de Mastodon per a fer lectures de sensors cada hora.
Getting credentials for the Mastodon API with Mastodon.py, step by step
SCADA
SCADA DIY using Python
Scada using Python and Arduino (November 30, 2015)
SCADA fent servir Python QML i Arduino (8 / gener / 2018)
SCADA Indusoft
Introducció al disseny amb Indusoft (4 / gener / 2018)
Introducció a les comunicacions (1a part) (3 / gener / 2018)
Introducció a les comunicacions (2a part) (7 / gener / 2018)
Receptes a l'Indusoft ( 8 / març / 2018 )
Visualització i emmagatzematge IoT
Grafana
InfluxDB
Sentilo
Configuració inicial del Sentilo
Connectant l'ESP8266 a Sentilo
Captació i publicació de dades a Sentilo
Per a recollir dades:
Conjunt de sensors:
curl -X GET -H "IDENTITY_KEY: b4d4db576b754d5b71234c5c448df5c2da12c0edeba574ff9a98045a108f056b" https://api-sentilo.dipba.cat/data/adr@empr
Un únic sensor:
curl -X GET -H "IDENTITY_KEY: b4d4db576b754d5b71234c5c448df5c2da12c0edeba574ff9a98045a108f056b" https://api-sentilo.dipba.cat/data/adr@empr/CO2_04_RH/
Sistemes Operatius
Alguns trucs
Com saber la IP pública des del terminal:
wget http://ipecho.net/plain -O - -q ; echo
Per saber la distribució de GNU/Linux mitjançant el terminal:
cat /etc/os-release lsb_release -a hostnamectl
How to Install the latest OpenSSL version on Debian 11 (11 / maig / 2023)
Instal·lació d'un servidor de sòcols web a un Debian amb Apache (24 / gener / 2020)
Com accedir mitjançant FTP a Google Drive
Accelerant l'arrencada d'Ubuntu (15 / gener / 2018)
OpenGL a màquines virtuals (29 / desembre / 2017)
Metadistribució basada en Debian Jessie 8.2 (7 / octubre / 2015)
Arrencant Debian des d’una memòria USB (15 / setembre / 2014)
Addició d'usuaris (cal tenir instal·lat el paquet whois per a l'ordre mkpasswd):
useradd tux -u 1001 -g users -d /home/tux -m -s /bin/bash -k /etc/skel -G adm,sys -p $(mkpasswd Clot8Fje@9)
Ús de wine
sudo apt install q4wine wine winetricks
Seguint les instruccions de la guia de wine per a instal·lar Adobe Acrobat Reader DC, des del terminal:
winetricks atmlib winetricks riched20 winetricks wsh57 winetricks mspatcha winetricks allfonts
wine AcroRdrDC1900820071_ca_ES.exe
Skip Certificate verification failed
If doing sudo apt update there is Certificate verification failed error like this:
Err:5 https://deb.nodesource.com/node_12.x bullseye InRelease Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown. The received OCSP status response is invalid. Could not handshake: Error in the certificate verification. [IP: 185.43.182.75 443]
It is not recommended to do this. But if there is not any good solution:
sudo apt-get update -o Acquire::https://deb.nodesource.com/node_12.x::Verify-Peer=false sudo apt-get upgrade -o Acquire::https://deb.nodesource.com/node_12.x::Verify-Peer=false
Tutorials d'ajuda emprant GNU/Linux
How to Create and Use Swap File on Linux
How to Increase Swap Size on Ubuntu Linux
Using Docker to Set up Nginx Reverse Proxy With Auto SSL Generation
How to Install Nextcloud with Docker on Your Linux Server
Servidor intermediari invers
How to Deploy NGINX Reverse Proxy on Docker
Using Docker to Set up Nginx Reverse Proxy With Auto SSL Generation
Exemple d'ús un servidor intermediari invers a un VPS
Disseny electrònic
Instal·lació de KiCAD a Debian 9:
sudo apt -t stretch-backports install kicad kicad-doc-ca kicad-doc-en kicad-footprints kicad-libraries kicad-packages3d kicad-symbols kicad-templates kicad-demos kicad-common
Ús de l'autoencaminador (autorouter) a KiCAD (11 / maig / 2018)
Ús del KiCAD (27 / desembre / 2007)
Fabricació de circuits impresos. Mètode de la planxa domèstica (8 / gener / 2008)
Convertidor RS232 - I2C ( 15 / gener / 2008)
Programació d'un microcontrolador AVR pel port paral·lel (7 / maig / 2008)
Disseny d'una placa de circuit imprès controlada per ordinador fent ús d'eines lliures i en català (11 / novembre / 2007)
Propietats dels GPIO de l'ESP32
Programació
Tutorials per a diferents llenguatges de programació (PyQt, Java, Qt, bases de dades, Python i d'altres) feta per Jan Bodnar
Instal·lant Qt
Debian d'escriptori
A GNU/Linux és convenient que instal·leu el paquet libgl1-mesa-dev
sudo apt install libgl1-mesa-dev
qtserialport
Per a instal·lar qtserialport:
Cerqueu el directori lib de la vostra distribució Qt:
$ /home/jordi/Qt/5.15.2/gcc_64/bin/qmake -query QT_INSTALL_LIBS /home/jordi/Qt/5.15.2/gcc_64/lib $ cd /home/jordi/Qt/5.15.2/gcc_64/lib $ git clone git://code.qt.io/qt/qtserialport.git $ cd qtserialport
Actualitzeu-ho a la vostra versió
git checkout 5.x.y
x i y es poden trobar fent
$ git branch -a
A aquest exemple
$ git checkout 5.15.2
$ mkdir qtserialport-build $ cd qtserialport-build $ /home/jordi/Qt/5.15.2/gcc_64/bin/qmake ../qtserialport.pro $ make $ sudo make install
qtmqtt
Per a instal·lar qtmqtt:
git clone git://code.qt.io/qt/qtmqtt.git cd qtmqtt git checkout 5.14 mkdir build cd build qmake -r .. make sudo make install
(Abans de fer el qmake, feu un git checkout 5.14 -canvieu el 5.14 per la vostra versió de Qt instal·lada al vostre sistema-)
Heu de cercar la ruta de qmake en cas de que no hi sigui al vostre PATH
/home/jordi/bin/Qt/5.14.1/gcc_64/bin/qmake -r ..
Instal·lació de QtMqtt per Android
Malgrat que ja us funcioni la biblioteca QtMqtt en programes d'escriptori, heu de fer la compilació de la biblioteca QtMqtt per a la versió de Qt/QML que feu servir per a poder executar programes que duguin aquesta biblioteca a Android.
Hi ha diversos suggeriments de com fer-ho. Després de diversos intents, aquest és el sistema que a mi m'ha funcionat:
Cerqueu el directori lib de la vostra distribució Qt per a Android x86:
jordi@ecat-XPS13:~$ /home/jordi/Qt/6.0.0/android_x86/bin/qmake -query QT_INSTALL_LIBS /home/jordi/Qt/6.0.0/android_x86/lib
o, per al dispositiu físic Android amb tecnologia Android ARM:
ecat@iot-ecat:~$ /home/ecat/Qt/6.0.0/android_armv7/bin/qmake -query QT_INSTALL_LIBS /home/ecat/Qt/6.0.0/android_armv7/lib
Aneu a la carpeta que ens retorna l'ordre anterior (Android x86):
jordi@ecat-XPS13:~$ cd /home/jordi/Qt/6.0.0/android_x86/lib
o, per al dispositiu físic Android amb tecnologia Android ARM:
ecat@iot-ecat:~$ cd /home/ecat/Qt/6.0.0/android_armv7/lib
I feu el procés d'instal·lació (Android x86):
jordi@ecat-XPS13:~/Qt/6.0.0/android_x86/lib$ git clone git://code.qt.io/qt/qtmqtt.git jordi@ecat-XPS13:~/Qt/6.0.0/android_x86/lib$ cd qtmqtt/ jordi@ecat-XPS13:~/Qt/6.0.0/android_x86/lib/qtmqtt$ git checkout 6.0 jordi@ecat-XPS13:~/Qt/6.0.0/android_x86/lib/qtmqtt$ rm -r examples/
o, per al dispositiu físic Android amb tecnologia Android ARM:
ecat@iot-ecat:~/Qt/6.0.0/android_armv7/lib$ git clone git://code.qt.io/qt/qtmqtt.git ecat@iot-ecat:~/Qt/6.0.0/android_armv7/lib$ cd qtmqtt/ ecat@iot-ecat:~/Qt/6.0.0/android_armv7/lib/qtmqtt$ git checkout 6.0 ecat@iot-ecat:~/Qt/6.0.0/android_armv7/lib/qtmqtt$ rm -r examples/
Per a Android x86, mitjançant el Qt Creator obriu el projecte /home/jordi/Qt/6.0.0/android_x86/lib/qtmqtt/qtmqtt.pro. Aneu al menú i seleccioneu Build / Run qmake
Per a Android ARM, mitjançant el Qt Creator obriu el projecte /home/ecat/Qt/6.0.0/android_armv7/lib/qtmqtt/qtmqtt.pro. Aneu al menú i seleccioneu Build / Run qmake
Torneu al terminal d'abans i feu (Android x86):
jordi@ecat-XPS13:~/Qt/6.0.0/android_x86/lib/qtmqtt$ make jordi@ecat-XPS13:~/Qt/6.0.0/android_x86/lib/qtmqtt$ sudo make install
o, per al dispositiu físic Android amb tecnologia Android ARM:
ecat@iot-ecat:~/Qt/6.0.0/android_armv7/lib/qtmqtt$ make ecat@iot-ecat:~/Qt/6.0.0/android_armv7/lib/qtmqtt$ sudo make install
Copieu, fora de la ruta de les Qt, els projectes d'exemple quickpublication i quicksubscription. Obriu els dos projectes per a que puguin ser executats des de l'escriptori i des del mòbil (emulat o no). Per a verificar llur funcionament, podeu executar un projecte al dispositiu mòbil i l'altre a l'escriptori.
Raspbian
Instal·lant les Qt a la Raspberry Pi
PureQML
Posada en marxa del PureQML
- Instal·lació de l'eina python-future:
pip3 install future
- Primera aplicació
mkdir prjFolder cd prjFolder git clone https://github.com/pureqml/qmlcore.git ./qmlcore/build --boilerplate ./qmlcore/build
Obriu amb un navegador l'arxiu prjFolder/build.web/index.html
- Modificació de prjFolder/src/app.qml:
Text { anchors.fill: context; text: 'Primer exemple de pureQML'; color: 'red'; font.pixelSize: 32; verticalAlignment: Text.AlignVCenter; horizontalAlignment: Text.AlignHCenter; }
Reconstruïu-ho:
./qmlcore/build
Torneu a obrir amb un navegador l'arxiu prjFolder/build.web/index.html per a observar els canvis
Formació
Escola del Clot
Examen de programació de 2n d'SMX-A
UPC-School
Complement del Màster d'Industria 4.0 de la promoció 2018-2019 durant l'any 2021
21802500 - Màster Industria 4.0 Tecnologías IoT, Hands on y MVP (2019)
Col·legi d'Enginyers Industrials de Catalunya
Arduino i Raspberry Pi. Microcontroladors d'ús professional (matí: Arduino) - Formació al Col·legi d'Enginyers Industrials de Catalunya (9 / abril / 2019 i 4 / desembre / 2019)
Fent servir protocols de comunicacions a la placa S4A basada en Arduino Nano (9 / abril / 2019 i 4 / desembre / 2019)
Codi ESP8266 emprant MQTT (4 / desembre / 2019)
Arduino i Raspberry Pi. Microcontroladors d'ús professional (matí: Arduino) - Formació al Col·legi d'Enginyers Industrials de Catalunya (31 / octubre / 2018)
Formació per a professors de secundària i cicles formatius
Introducció a Internet de les Coses - juny 2018 (Curset de formació per a professors de CF realitzat a l'Institut Rambla Prim)
Fòrum 2016 - Jesuïtes Educació Tecnologies creatives a l'aula. Ús d'Arduino i Raspberry Pi
Fòrum 2015 - Jesuïtes Educació Tecnologies creatives a l'aula. Ús d'Arduino i Raspberry Pi
Internet de les Coses
21802500 - Màster Industria 4.0 Tecnologías IoT, Hands on y MVP (2019)
Introducció ràpida a LoRaWAN i The Things Network a l'Institut de Ciències del Mar (27 / setembre / 2018 i 25 / setembre / 2019)
Introducció a Internet de les Coses - juny 2018 (Curset de formació per a professors de CF realitzat a l'Institut Rambla Prim)
Formació per a empreses i ajuntaments
Viladecans 19 de febrer de 2020
Introducció ràpida a LoRaWAN i The Things Network
Tecnologías IoT, Hands on y MVP (4/5/2019)