Diferència entre revisions de la pàgina «Índex general»

De Wiki d'en Jordi Binefa
Dreceres ràpides: navegació, cerca
(Comunicacions)
m (Alguns trucs)
 
(Hi ha 211 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)
  
== Arduino ==
+
[http://formacio.things.cat:8000/?p=277 Modbus RTU using Arduino and pyQt] (May 3, 2016)
[https://binefa.cat/blog/?p=282 SPI - Sample of master and slave using two Arduino]
 
  
[https://binefa.cat/blog/?p=285 How to deal with binary data between Python and Arduino]
+
[http://formacio.things.cat:8000/?p=279 Modbus RTU on RS485 using Arduino and PyQt] (May 9, 2016)
  
[https://binefa.cat/blog/?p=292 Arduino library for SX1276 using LoRA and PyQt]
+
[http://formacio.things.cat:8000/?p=147 Ús del port sèrie a un autòmat programable (CP1E d'Omron)] ( 4 / juny / 2015)
  
[https://binefa.cat/blog/?p=317 Adding AES encryption to LoRa at SX1276 on Arduino]
+
[http://formacio.things.cat:8000/?p=109 Using digital I/O. Arduino + firmata + pyFirmata + pyQt] (December 8, 2014)
  
[https://binefa.cat/blog/?p=129 Ús de la biblioteca ecat.h a Arduino (1a part)]
+
[http://formacio.things.cat:8000/?p=102 Arduino + Raspberry Pi using pyFirmata and pyQt] (November 26, 2014)
  
[https://binefa.cat/blog/?p=136 Ús de la biblioteca ecat.h a Arduino (2a part)]
+
[http://formacio.things.cat:8000/?p=100 Serial read using Ardublock] (November 18, 2014)
  
[https://binefa.cat/blog/?p=140 Ús de la biblioteca ecat.h a Arduino (3a part)]
+
=== TCP / UDP ===
 +
[https://binefa.cat/esp8266/doc/ethernetTcpUdp_00.pdf TCP/UDP Capa de transport d'Ethernet] (22 / gener / 2016)
  
[https://binefa.cat/blog/?p=122 Radio Control using Arduino and NRF24L01]
+
[http://formacio.things.cat:8000/?p=50 Modbus TCP/IP on Arduino Nano + ENC28J60] (August 27, 2014)
  
== Comunicacions ==
+
[http://www.iotsharing.com/2017/08/how-to-use-https-in-arduino-esp32.html Demo 29: How to use HTTPS in Arduino ESP32]
[https://binefa.cat/blog/?p=275 Modbus RTU using Python and Qt]
 
  
[https://binefa.cat/blog/?p=277 Modbus RTU using Arduino and pyQt]
+
==== UDP ====
 +
[[UDP]]
  
[https://binefa.cat/blog/?p=279 Modbus RTU on RS485 using Arduino and PyQt]
+
==== MQTT i MQTTS ====
 +
[[MQTT i MQTTS]]
  
[https://binefa.cat/blog/?p=147 Ús del port sèrie a un autòmat programable (CP1E d'Omron)]
+
=== 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://binefa.cat/blog/?p=109 Using digital I/O. Arduino + firmata + pyFirmata + pyQt]
+
[https://ca.wikipedia.org/wiki/Chirp_spread_spectrum Espectre eixamplat (Chirp Spread Spectrum)]
  
[https://binefa.cat/blog/?p=102 Arduino + Raspberry Pi using pyFirmata and pyQt]
+
[https://ca.wikipedia.org/wiki/Espectre_eixamplat_per_seq%C3%BC%C3%A8ncia_directa Espectre eixamplat per seqüència directa (DSSS)]
  
[https://binefa.cat/blog/?p=100 Serial read using Ardublock]
+
[https://ca.wikipedia.org/wiki/Espectre_eixamplat_per_salt_de_freq%C3%BC%C3%A8ncia Espectre eixamplat per salt de freqüència (FHSS)]
  
== ESP8266 ==
+
[https://en.wikipedia.org/wiki/LPWAN What is LPWAN?]
[https://binefa.cat/blog/?p=353 ESP8266 witty]
 
  
[https://binefa.cat/blog/?p=373 ESP8266’s Witty sending data to plot.ly]
+
[https://cms.edn.com/ContentEETimes/Documents/EDN/LP%20WAN%20Comparison%20Table%20final.pdf Comparison table of Low Power WAN alternatives]
  
[https://binefa.cat/blog/?p=365 Displaying ESP8266’s LDR level on web using ThingSpeak]
+
==== LoRa ====
 +
[https://wiki.binefa.cat/index.php?title=LoRa LoRa]
  
[https://binefa.cat/blog/?p=311 ESP8266 library for SX1276 using LoRA and PyQt]
+
==== SigFox ====
 +
[https://docs.pycom.io/chapter/tutorials/sipy/register.html Registering SiPy with Sigfox]
  
[https://binefa.cat/blog/?p=327 ESP8266 and Arduino using LoRa and AES encryption]
+
==== 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 ==
 
== 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 ===
 
=== Programes de ràdio ===
[https://binefa.cat/blog/?p=248 El Cafè de les Telecos: L’electrònica del present i del futur] (7 / octubre / 2015)
+
[http://formacio.things.cat:8000/?p=248 El Cafè de les Telecos: L’electrònica del present i del futur] (7 / octubre / 2015)
  
[https://binefa.cat/blog/?p=334  Make It! Un projecte català amb Arduino i Scratch – Programa 277 de “Mossega la poma”] (8 / març / 2016)
+
[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 ===
 
=== Revistes ===
[https://binefa.cat/blog/?p=245 Prototipatge electrònic a l’abast de tothom] (9 / octubre / 2015)
+
[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)
 
[http://upcommons.upc.edu/handle/2099/9430 Mesura experimental d'acceleració i velocitat per PC] (novembre / 1994)
 +
 +
== Microcontroladors ==
 +
=== Arduino ===
 +
==== Arduino genèric ====
 +
[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://www.dexterindustries.com/howto/run-a-program-on-your-raspberry-pi-at-startup/ Run a Program On Your Raspberry Pi At Startup]
 +
 +
[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://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://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://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://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://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://wireguard.how/client/raspberry-pi-os/ WireGuard Client: Raspberry Pi OS] (VPN)
 +
 +
=== 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=299 Programming STM32 using Arduino IDE on Debian Jessie] (June 8, 2016)
 +
 +
== Node RED ==
 +
=== Introducció ===
 +
[https://binefa.cat/IoT/nodeRed/nodeRed01.pdf Introducció al Node-RED]
 +
 +
=== 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://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)
 +
 +
[[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)] -->
 +
 +
==== 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://www.binefa.cat/IoT/nodeRed/prj/mqtt_esp8266_esp32/ex00/ Exemple amb MQTT i NodeRED emprant ESP8266 i ESP32]
 +
 +
[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://www.binefa.cat/IoT/nodeRed/prj/numAleat/ Exemple de generació de número aleatori amb NodeRED]
 +
 +
[https://www.binefa.cat/IoT/nodeRed/prj/statsCtrl/ Interaccionar amb ordres de terminal amb NodeRED]
 +
 +
[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://github.com/jmoenig/Snap Codi font. Replicable a qualsevol servidor] by [https://twitter.com/moenig Jens Mönig]
 +
 +
[http://snap4arduino.rocks/ Snap4Arduino]
 +
 +
[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/blog/?p=506 Sistema domòtic amb Internet de les Coses] (16 / setembre / 2017) - Diada del Programari Lliure 2017
+
[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)
  
[https://binefa.cat/blog/?p=470 Orange Pi, C.H.I.P. i Raspberry Pi] (22 / abril / 2017) - Diada de la Llibertat del Maquinari 2017
+
[[Demostració d'us de LoRaWAN amb un PLC d'IndustrialShields a la Fira IOTS-2018]] (16-18 d'octubre 2018)
  
[https://binefa.cat/blog/?p=401 Comunicacions amb Raspberry Pi] (11 / març / 2017) - Raspberry Pi Jam a Barcelona (2017)
+
[[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://binefa.cat/blog/?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)
+
[[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://binefa.cat/blog/?p=391 Arduino i Raspberry Pi (4/4)] (1 / desembre / 2016) - Formació per a [http://telecos.cat/verNoticias.aspx?CAL=1324 telecos.cat]
+
[[Introducció a Internet de les Coses - juny 2018]]
  
[https://binefa.cat/blog/?p=386 Arduino i Raspberry Pi (3/4)] (29 / novembre / 2016) - Formació per a [http://telecos.cat/verNoticias.aspx?CAL=1324 telecos.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)
  
[https://binefa.cat/blog/?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=506 Sistema domòtic amb Internet de les Coses] (16 / setembre / 2017) - Diada del Programari Lliure 2017
  
[https://binefa.cat/blog/?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=470 Orange Pi, C.H.I.P. i Raspberry Pi] (22 / abril / 2017) - Diada de la Llibertat del Maquinari 2017
  
[https://binefa.cat/blog/?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=401 Comunicacions amb Raspberry Pi] (11 / març / 2017) - Raspberry Pi Jam a Barcelona (2017)
  
[https://binefa.cat/blog/?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=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)
  
[https://binefa.cat/blog/?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=391 Arduino i Raspberry Pi (4/4)] (1 / desembre / 2016) - Formació per a [http://telecos.cat/verNoticias.aspx?CAL=1324 telecos.cat]
  
[https://binefa.cat/blog/?p=191 Curset de 5 hores sobre maquinari lliure] (21 / juny / 2015)
+
[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]
  
[https://binefa.cat/blog/?p=216 Maquinari lliure amb Ubuntu] ( 9 / maig / 2015)
+
[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]
  
[https://binefa.cat/blog/?p=208 Comunicació entre Raspberry Pi i Arduino emprant plaques d’electronics.cat ] (11 / abril / 2015)
+
[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]
  
[https://binefa.cat/blog/?p=202 Exercicis de maquinari lliure amb Arduino Nano] (17 / gener / 2015)
+
[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ó])
  
[https://binefa.cat/blog/?p=212 Maquinari lliure amb Arduino Nano] (20 / setembre / 2014)
+
[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]
  
[https://binefa.cat/blog/?p=199 Maquinari lliure controlat amb GNU/Linux (32 bits)] (23 / novembre / 2014)
+
[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ó])
  
[https://binefa.cat/blog/?p=196 Exercicis de maquinari lliure amb Arduino Nano] (15 / novembre / 2014)
+
[http://formacio.things.cat:8000/?p=191 Curset de 5 hores sobre maquinari lliure] (21 / juny / 2015)
  
[https://binefa.cat/blog/?p=188 Maquinari lliure controlat amb GNU/Linux] (19 / març / 2014) - JEDAI - Institut Joan d'Àustria
+
[http://formacio.things.cat:8000/?p=216 Maquinari lliure amb Ubuntu] ( 9 / maig / 2015)
  
[https://binefa.cat/blog/?p=185 Maquinari lliure controlat amb GNU/Linux] (15 / març / 2014) - Esplai Virtual a Neàpolis
+
[http://formacio.things.cat:8000/?p=208 Comunicació entre Raspberry Pi i Arduino emprant plaques d’electronics.cat ] (11 / abril / 2015)
  
[https://binefa.cat/blog/?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=202 Exercicis de maquinari lliure amb Arduino Nano] (17 / gener / 2015)
  
[https://binefa.cat/blog/?p=179 Raspberry Pi per connectar maquinari lliure] ( 5 / octubre / 2013) - Mollerussa LAN Party
+
[http://formacio.things.cat:8000/?p=212 Maquinari lliure amb Arduino Nano] (20 / setembre / 2014)
  
[https://binefa.cat/blog/?p=176 Raspberry Pi per connectar maquinari lliure] (29 / setembre / 2013) - Dia de la Llibertat del Programari
+
[http://formacio.things.cat:8000/?p=199 Maquinari lliure controlat amb GNU/Linux (32 bits)] (23 / novembre / 2014)
  
[https://binefa.cat/blog/?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=196 Exercicis de maquinari lliure amb Arduino Nano] (15 / novembre / 2014)
  
[https://binefa.cat/blog/?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=188 Maquinari lliure controlat amb GNU/Linux] (19 / març / 2014) - JEDAI - Institut Joan d'Àustria
  
[https://binefa.cat/blog/?p=167 Sessió pràctica de maquinari lliure] (29 / juny / 2013) - Barcelona Mini Maker Faire
+
[http://formacio.things.cat:8000/?p=185 Maquinari lliure controlat amb GNU/Linux] (15 / març / 2014) - Esplai Virtual a Neàpolis
  
[https://binefa.cat/blog/?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=182 Maquinari lliure controlat amb Ubuntu] (9 / novembre / 2013) - [https://wiki.ubuntu.com/CatalanTeam/Activitats/SaucySalamander#graellaActivitats Festa Saucy Salamander Ubuntu 13.10]
  
[https://binefa.cat/blog/?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=179 Raspberry Pi per connectar maquinari lliure] ( 5 / octubre / 2013) - Mollerussa LAN Party
  
[https://binefa.cat/blog/?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=176 Raspberry Pi per connectar maquinari lliure] (29 / setembre / 2013) - Dia de la Llibertat del Programari
  
[https://binefa.cat/blog/?p=155 Maquinari Lliure – OSHW] (15 / setembre / 2012) - Diada de la Llibertat del Maquinari 2017
+
[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 ==
[https://binefa.cat/blog/?p=346 Robot pel curs 2016-2017]
+
=== Robots físics ===
 +
[http://formacio.things.cat:8000/?p=346 Robot pel curs 2016-2017] (20 / setembre / 2016)
  
[https://binefa.cat/blog/?p=205 Maquinari lliure Exemples pràctics. Com construir-te el teu propi robot] XXII Jornades Tècniques a l'Institut Escola del Treball de Barcelona (23 / febrer / 2015)
+
[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
  
== SCADA D.I.Y. using Python ==
+
=== Bots ===
[https://binefa.cat/blog/?p=272 Scada using Python and Arduino]
+
==== Bot de Telegram ====
 +
[[Bot de Telegram]]
  
== SCADA Indusoft ==
+
==== Bot de Mastodon ====
[https://binefa.cat/indusoft/indusoft00.pdf Introducció a les comunicacions (1a part)]
+
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].
  
== S4A Programming Learning Board ==
+
[https://botsin.space/@siarq_sensors Exemple de bot de Mastodon] per a fer lectures de sensors cada hora.
[http://makeit.cat Make It! amb Scratch per arduino] El kit que conté la placa S4A PLB
 
  
[https://binefa.cat/blog/?p=330 Xerrada sobre S4A PLB / Make It! a la llibreria Hispano Americana] Tutorial introductori a la placa S4A PLB
+
[https://gist.github.com/aparrish/661fca5ce7b4882a8c6823db12d42d26 Getting credentials for the Mastodon API with Mastodon.py, step by step]
  
[https://binefa.cat/blog/?p=264 Electrònica amb S4A] Amb els arxius del disseny de la placa (OSHW)
+
== SCADA ==
 +
=== SCADA DIY using Python ===
 +
[http://formacio.things.cat:8000/?p=272 Scada using Python and Arduino] (November 30, 2015)
  
[https://binefa.cat/blog/?p=232 How to install S4A on 64 bit Debian Jessie]
+
[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/blog/?p=225 S4A Progamming Learning Board] (19 / setembre / 2015)
+
=== SCADA Indusoft ===
 +
[https://www.binefa.cat/indusoft/indusoftIntro00.pdf Introducció al disseny amb Indusoft] (4 / gener / 2018)
  
[https://binefa.cat/blog/?p=358 Displaying analog data using Python on S4A Programming Learning Board]
+
[https://www.binefa.cat/indusoft/indusoft00.pdf Introducció a les comunicacions (1a part)] (3 / gener / 2018)
  
[https://binefa.cat/blog/?p=361 Displaying realtime data on web using plot.ly on S4A PLB]
+
[https://www.binefa.cat/indusoft/indusoft02.pdf Introducció a les comunicacions (2a part)] (7 / gener / 2018)
  
== STM32 ==
+
[[Receptes a l'Indusoft]] ( 8 / març / 2018 )
  
[https://binefa.cat/blog/?p=299 Programming STM32 using Arduino IDE on Debian Jessie]
+
== Visualització i emmagatzematge IoT ==
 +
=== Grafana ===
 +
[http://docs.grafana.org/installation/debian/ Installing Grafana on Debian]
 +
 
 +
=== InfluxDB ===
 +
[[InfluxDB]]
 +
 
 +
=== Sentilo ===
 +
[https://youtu.be/DoCdtQZTZ-A Configuració inicial del Sentilo]
 +
 
 +
[https://youtu.be/DUfvC16ipjo Connectant l'ESP8266 a Sentilo]
 +
 
 +
[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 ==
[[OpenGL a màquines virtuals]]
+
=== 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)
 +
 
 +
[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] ====
  
[https://binefa.cat/blog/?p=238 Metadistribució basada en Debian Jessie 8.2] (7 / octubre / 2015)
+
[[Curset a TE Connectivity del 4 de març de 2020]]

Revisió de 09:52, 10 jul 2024

Contingut

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

UDP

MQTT i MQTTS

MQTT i MQTTS

Xarxes d'àrea estesa de baix consum (LPWAN)

Conceptes teòrics

Xarxa de llarg abast (WAN)

Espectre eixamplat (Chirp Spread Spectrum)

Espectre eixamplat per seqüència directa (DSSS)

Espectre eixamplat per salt de freqüència (FHSS)

What is LPWAN?

Comparison table of Low Power WAN alternatives

LoRa

LoRa

SigFox

Registering SiPy with Sigfox

Antenes

Andreas Spiess video: "#182 ESP32 Lora Boards: What you need to know before you buy (incl. Antenna knowledge)"

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

Comunicacions amb Arduino

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 datasheet

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

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


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);
}

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

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)

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}'

Raspberry Pi 5

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

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)

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)

PlatformIO

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ó

Introducció al Node-RED

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

ModBus TCP amb NodeRED

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

Snap4Arduino

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 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

Installing Grafana on Debian

InfluxDB

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

Recursos en Debian

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

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)

Empresa de marcat CE

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

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

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 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

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

Curs 2019-2020

Curs 2018-2019

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

LoRa

Tecnologías IoT, Hands on y MVP (4/5/2019)

TE Connectivity

Curset a TE Connectivity del 4 de març de 2020