Fer anar la targeta Wemos D1 R32 amb Lliurex 21

Si intenteu fer anar la targeta Wemos D1 R32 amb Lliurex 21 per treballar amb els vostres alumnes

us trobareu un error com aquest quan proveu a carregar el programa Blink a la Wemos D1 R32.

L’error és:

Traceback (most recent call last):
File “/home/eso4/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool.py”, line 31, in
import esptool
File “/home/eso4/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool/init.py”, line 41, in
from esptool.cmds import (
File “/home/eso4/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool/cmds.py”, line 14, in
from .bin_image import ELFFile, ImageSegment, LoadFirmwareImage
File “/home/eso4/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool/bin_image.py”, line 14, in
from .loader import ESPLoader
File “/home/eso4/.arduino15/packages/esp32/tools/esptool_py/4.5.1/esptool/loader.py”, line 30, in
import serial
ModuleNotFoundError: No module named ‘serial’
exit status 1
Error al compilar per a la placa ESP32 Dev Module.

Per resoldre aquest error primer cal que instal·lem el mòdul «serial» a Lliurex 21 i després caldrà posar els controladors de ESP32 a Arduino IDE.

Anem amb la instal·lació del mòdul serial:

Anem al menú de Lliurex 21 i iniciem Repoman.

Després caldrà marcar a Repoman els Repositoris de Ubuntu i prémer Apply. Esperem 20 segons que s’actualitzen i ens ho diga el sistema.

Sortim de Repoman. Ara ja podem anar a un terminal Konsole i escriure dins, i premem INTRO després:

sudo apt install python3-pip (Cal pertanyer al grup admin/root)

D’aquest forma instal·lem el gestor de programes de python3-pip a Lliurex 21.

Després cal instal·lar el mòdul serial per a Arduino amb aquesta ordre de python3 dins del terminal Konsole:

pip install esptool (aquesta ordre cal executar-la en cada usuari que tinga que treballar amb Wemos/ESP32 . Fixa’t que no cal ser admin/root. Els usuaris normals la poden executar.

Ara si ja tingueren els controladors de ESP32 dins de Arduino IDE ja podriem continuar treballant amb els alumnes. Però com que se suposa que acaben de instal·lar fa pocs dies Arduino a Lliurex 21 cal posar-los.

Obrim Arduino IDE i anem a Eines, Placa «El nom de la darrera placa usada» , Gestor de plaques…

Cal que escrigues ESP32 a la finestra de cerca, prems INTRO , i tries el paquet esp32 de Espressif Systems, i la instal·les., tardarà molt poc si tens fibra doncs baixarà 3,2 Gb de controladors.

Quan tornes a iniciar Arduino IDE, ja podràs triar la targeta Wemos D1 R32, i veuràs que ara els programes ja es carreguen bé.

Truquet per gestionar la teua aula:

Si vas a instal·lar això a tots els ordinadors de l’aula no cal baixar 3.2 Gb de controladors en cada ordinador. El programa emmagatzema els controladors a la carpeta /home/«usuari»/.arduino15 que està oculta.

Fes que el gestor Dolphin et mostre el fitxers ocults a la home de l’usuari, comprimeix la carpeta .arduino15 en un fitxer tar.gz que t’ocuparà 1,6 Gb i copia’l a l’ordinador del costat a la seua home, i descomprimeix-lo et quedarà un fitxer .arduino15 a la home amb tots els controladors llestos.

Com carregar programes a ESP32/Wemos a Lliurex (Python 3.6.9 o superior)

Arduino IDE funciona amb python 2.7 com vam veure a l’entrada anterior o amb python 3 si m’ha calgut canviar la versió per defecte per poder fer gastar altres programes. En el meu cas , tinc instal·lat en alguns lliurex 21 Python 3 per defecte per poder programar amb els alumnes batxillerat amb MicroPython.

Vaig posar per defecte python 3 amb l’ordre:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10

Comprove la versió de python amb l’ordre:

python  --version

en va eixir la versió 3.6.9

Quan he provat a pujar programes fets amb l’IDE d’Arduino a targetes Wemos/ESP32 ix l’error «No module named serial».

Em cal instal·lar pyserial i pip3 per poder instal·lar paquets en python, per fer això tinc que modificar les fonts de programari de lliurex amb l’ordre:

nano /etc/apt/sources.list

per afegir les línies següents sense borrar les que hi han:

deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse

deb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse

deb http://archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse

deb http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse

deb http://archive.canonical.com/ubuntu focal partner
deb-src http://archive.canonical.com/ubuntu focal partner

Em cal actualitzar els paquets amb l’ordre:

sudo apt-get update

Ara instal·le pip3 amb l’ordre:

sudo apt-get install python3-pip

Instal·le pyserial per a python3 amb l’ordre:

sudo pip3 install pyserial

Ara ja puc tornar a provar carregar programes a ESP32/Wemos D1 R32:

I ja funciona!!!

Com carregar programes a ESP32/Wemos en Lliurex (Python 2.7)

Veurem en aquesta entrada com reparar una error d’Arduino IDE anomenat «No module named serial». Cal tindre en compte que Arduino IDE pot anar amb llibreries de python 2.7 (ho veurem en aquesta entrada) o amb llibreries de python 3 com veurem a la entrada posterior.

Tinc Lliurex 19 als Dynabook de Conselleria on volia que els alumnes de 4t programaren robotets fets amb Wemos D1 R32 i m’he emportat la sorpresa que no puc pujar programes amb l’Arduino IDE doncs en dona l’error «No module named serial» aquest.

Llegesc al fòrum d’Arduino que em cal instal·lar pyserial així que vaig a modificar primer els repositoris de Lliurex 19.

Vaig al terminal Konsole i escric:

sudo nano /etc/apt/sources.list

pose la contrasenya entre amb el nano i escric al final del fitxer sense esborrar les ratlles que ja conté:

deb mirror://mirrors.ubuntu.com/mirrors.txt bionic main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt bionic-updates main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt bionic-backports main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt bionic-security main restricted universe multiverse

i pose al terminal l’ordre per actualitzar el llistat de paquets del sistema:

sudo apt-get update

l

Instal·le pyserial amb l’ordre:

sudo pip install pyserial

però el sistema no em deixa, doncs em diu que no tinc instal·lat el programa pip. Execute squestes 3 ordres una darrera de l’altra:

sudo apt update
curl https://bootstrap.pypa.io/pip/2.7/get-pip.py --output get-pip.py
sudo python2 get-pip.py

Ara instal·le pyserial amb l’ordre.

sudo pip install pyserial

Reinicie el sistema i torne a provar Arduino IDE i ja no dona error, doncs puc carregar programes amb l’IDE d’Arduino a ESP32 i Wemos-D1_R32

Pràctiques de «Tecnologia i Digitalització»al curs 2021-2022

Cotxe controlat amb el teu telèfon (4t d’ESO).

Els materials que calen són: targeta Nano33IoT, driver motor, porta piles i pila de 9V, cables mascle femella, clemes, xapa de PP per tallar el xassís del cotxe.

L’esquema del que has de muntar és aquest:

Ací tens les instruccions i les ajudes que done als alumnes, i el vídeo de com es comporta aquest cotxe.

Làmpada amb sensor de presència (3r ESO).

Els materials que calen són: targeta Arduino UNO, leds anell corona, clemes, cables mascle mascle, xapes de fusta per tallar amb el làsser, detector d‘ultrasons, piles de 1.5 V i porta piles.

Es convenient que els alumnes cerquen a Internet models per agafar idees, després dibuixen els plànols de alçat i planta del que volen, i facen un prototip de cartró abans de dibuixar el model definitiu amb LibreCad, i tallar-lo amb el làser. Així ajustaran millor la mida dels materials i desperdiciaran menys fusta.

El dibuix de l’esquema elèctric pot ser semblant a aquest:

Ací teniu les instruccions i ajudes, i deo que done als alumnes per fer aquesta pràctica.

CyberFlors (2n d’ESO).

Els materials que calen són: targeta Arduino UNO, leds anell corona, clemes, cables mascle mascle, xapes de fusta per tallar amb el làser, piles de 1.5 V i porta piles, fulls de polímer sintétic de colors variats i textures rugoses.

Cal que algun alumne de cada grup es dibuixe alguns anells de fusta de diàmetres creixents per subjectar els pètals de les flors, i un suport en forma de trèbol per subjectar les fulles. Amb Librecad es molt fàcil fer això, i ho podem tallar amb el làser quan hagen revisat les mides.

El dibuix de l’esquema elèctric pot ser semblant a aquest:

Ací teniu les instruccions, ajuda i vídeo que proporcione als alumnes per fer aquesta pràctica.

Entorn de programació:

Per programar en ESO amb els alumnes m’agrada utilitzar el programari lliure BlocklyArduino junt amb Arduino IDE corrent dins de Lliurex 21 o algun Linux alternatiu. Hi ha altres programes que permeten que els alumnes usen diagrama de blocs per aprendre a programar. A mi m’agrada BlocklyArduino per que el puc instalar a cada ordenador i encara que falle Internet eixe dia que em cal usar-lo no em deixarà mai tirat. Com que és lliure no tinc que registrar-me ni jo ni cap alumne per usar-lo ni per guardar els programes fets a l’ordenador. Es guarden en format « nom_programa.B@ » i així sempre puc continuar un altre dia on m’havia quedat.

ABP de Tecnologia + Història (1r d’ESO).

En primer el nostre centre va optar per per una variant d’àmbits anomenada ABP en totes les matèries. Això permet que en cada ABP hi ha un especialista de cada matèria en tot moment dins l’aula. De forma que cada especialista explica cada dia el que s’ha programat de la seua especialitat.

En el cas nostre com que al taller em de dividir-nos en dos grups en dos tallers paret amb paret, quan hi ha dubtes de Tecnologia canvie de taller i el company/companya de Història es canvia de taller per no deixar els alumnes sols. Quan fem la Teoria sempre estem junts els dos professors a l’aula. L’experiència amb els alumnes enguany m’ha agradat força. No tinc clar que es puguen aplicar els ABP a tots els cursos i a totes les matèries. En qualsevol cas, per a cursos superiors, l’aplicació sempre hauria de ser voluntària amb professorat format.

Us deixe el «VÍDEO» de 3.5 minuts de la selecció de projectes que vam exposar en una mostra a la nostra biblioteca. No ens cabien tots i van seleccionar els que podien cabre en una taula.

Escriure a la pissarra amb una tauleta digitalitzadora.

Anem a veure com escriure a una pissarra projectada amb un canó com els molts que tenim a les aules. Ens cal una pissarra digitalitzadora Wacom (ens cal qualsevol model), un ordinador amb Lliurex 21 o Windows i un canó.

Si teniu una lesió crònica a la ma i no podeu escriure a una pissarra vertical però sí podeu escriure en horitzontal sobre una tauleta digitalitzadora com la «Intuos Art de Wacom» també podeu utilitzar tant en Lliurex 21 o superior com en Windows un programa lliure anomenat MyPaint.

MyPaint a Lliurex 21

El MyPaint deuria estar instal·lat en LLiurex 21 per defecte, si tens una altra versió de Lliurex on no hi és , o algú l’ha desinstal·lat , el podeu instal·lar si aneu a un terminal Konsole i escriu l’ordre:

sudo apt-get install mypaint

En Windows també el podeu instal·lar si aneu a la web https://github.com/mypaint/mypaint/releases i ara trieu la versió de exe de 64 bits, o la de 32 bits si el vostre Windows és molt vell.

Ja em explicat com instal·lar MyPaint tant en Linux com en Windows veiem que podem fer amb ell.

Per escriure: (1) Aneu a l’eina de selecció de colors i trieu la paleta de colors i un color.

Alternativament premeu V al teclat i trieu el color.

Ara ves a l’eina de selecció de pinzells, tria clàssic,

i tria Pen (També pots escrirure B al teclat i triar la família de pinzells i el pinzell)

Pinzell per escriure

Ja pots escriure amb la taula digitalitzadora.

Botó inferior llapis: Moure zona escrita/dibuixada en arribar a final de pàgina per fer espai. Mirà l’esbós 1 i el esbós 2.

Botó superior llapis: Fa aparèixer el menú del MyPaint

Per dibuixar rectes: Escolliu eina recta/corba i dibuixeu les rectes.

Per dibuixar corbes: Manteniu l’eina recta/corba i premeu Maj (Shift) mentre modifiqueu la darrera recta dibuixada. En acabar solteu la tecla Maj. Així obtindreu una corba Bezier que s’adapta al que volgueu.

Per esborrar: (1) Escolliu l’eina pinzell i (2) l’eina esborrar per anar esborrant o feu CTRL+Z per anar més ràpid.

Per guardar la faena: premeu CTRL+S o aneu a «Fitxer», «Guarda». De forma alternativa podeu deixar l’esbós anant a «Fitxer», «Guarda com esbós» però en aquest cas el nom el triarà de forma automàtica el programa i el desarà a la carpeta MyPaint de la vostra carpeta d’inici (home).

Configura el controlador de l’escàner Brother DCP 7030 amb Ubuntu

Tin una impressora bastant antiga, i funciona com el primer dia, vaig triar bé un model amb tòner on la tinta n’asseca quan arriba la calor de l’estiu. Però és tant antiga que els controladors del fabricant no acaben de rutllar al meu Ubuntu de 64 bits. Per això us deixe aquesta xuleta que supose que us servirà per qualsevol Brother antiga.

Primer del tot anem a la web del fabricant Brother , i ens baixem el controlador per 64 bits i el controlador per a usuaris no admins per cable usb que en el meu cas són els paquets: brscan3-0.2.13-1.amd64.deb , i brother-udev-rule-type1-1.0.2-0.all.deb

Ara anem a la carpeta on han baixat via terminal:

cd Baixades

i els instal·lem amb les ordres:

A continuació provem si es detecta el escàner amb l’ordre:

dpkg -l | grep brother

i ara si no el teníem al menú principal, utilitats, instal·lem l’«Escàner de documents» amb l’ordre:

sudo apt-get install simple-scan

Arranquem el programa d’escaneig i provem si SANE detecta els controladors de l’escàner, en el meu cas no els va detectar. Per això cal arreglar aquest problema.

Encara que els controladors estiguen instal·lat a /usr/lib64, l’aplicació d’escaneig SANE el cercarà a /usr/lib, com diu la pàgina d’ajuda de LinuxMint.

Això fa necessari definir amb un enllaç feble entre ambdós directoris, a més a més , de crear la carpeta /usr/lib/sane:

sudo ln -sf /usr/lib64/libbrscandec.so /usr/lib
sudo mkdir -p /usr/lib/sane
sudo ln -sf /usr/lib64/sane/libsane-brother.so /usr/lib/sane

ara donem permís a l’usuari no admin per utilitzar l’escàner, en el meu cas jo ho faig amb l’ordre:

sudo usermod -a -G scanner carles

A continuació vaig on estan els dispositius d’escaneig i afegiré el meu

sudo gedit /lib/udev/rules.d/60-libsane.rules

Vaig amb amb compte amb gedit, i al final just abans de la ratlla «LABEL=”libsane_rules_end”», afegesc aquestes dues ratlles:

# Brother scanners

ATTRS{idVendor}==”04f9″, ENV{libsane_matched}=”yes”

Ja puc reiniciar l’ordinador amb el menú o amb l’ordre «sudo reboot»

I escanejar anant a Utilitats «Escàner de documents» o amb l’ordre « simple-scan »

La prova és ací:

Programant estris IoT amb python

Fins ara sempre havia utilitzat Arduino amb l’IDE d’Arduino amb els alumnes més grans per mostrar-los com programar els automatismes i robotets. El C que du Arduino és estructurat i lògic, però a vegades els programes es fan massa llargs.

Es poden utilitzar programes per ensenyar a programar usant blocs, però quan utilitzes un conversor de codi de blocs a codi font, el programa final és il·legible i no és pot mantindre amb el temps. Sempre he tingut molts dubtes d’aquesta forma d’ensenyar a programar. Els programes de veritat, siguem seriosos, mai es fan amb diagrames de blocs.

Aquest estiu confinat,he provat ESP32, i m’ha agradat molt. A més a més, també he provat la seua programació amb python, amb una variant especialment pensada per estris d’internet de les coses IoT, micropython, i estic força content, els programes són més curts, el sagnat de python fa els programes més fàcils de llegir i entendre. En sembla que el provaré amb els alumnes aquest curs.

Proveu-ho vosaltres també.

Pràctiques de Tecnologia sota pandèmia.

El curs que ha acabat ha estat rar, molt rar, amb el tercer trimestre sense alumnes presencials, i treballant de forma telemàtica i amb projectes que havien començat, i han acabat abandonats per impossibilitat d’entrar al taller a construir cap prototip ni poder programar-los.

El curs que vindrà no té pinta de ser molt millor, amb els rebrots pujant com la espuma aquest estiu, amb quina seguretat podran estudiar els nostres alumnes ?

I això en fa preguntar-me, a part del primer trimestre on té prioritat absoluta ensenyar/recordar als alumnes a treballar de forma telemàtica per buscar informació, redactar documents digitals, modificar imatges, àudios i videos i connectar-se a plataformes educatives per baixar informació i pujar tasques. Quina mena de pràctiques del tipus projecte fet i programat amb Arduino els puc demanar que facen?

Cal que allò que els manem siga especialment barat, per si han d’acabar a casa o han de continuar una llarga temporada a casa, si la pandèmia ens visita de nou.

He fet algunes proves amb la targeta ESP32 , i haig de reconèixer que funciona molt bé, i el preu és prou econòmic per que els alumnes puguen fer alguna activitat programant amb aquesta targeta en sa casa. Si el projecte és senzill podrien fer activitats per aprendre a programar el seu prototip encara que no estiguera acabat.

No ho tinc tot lligat, però us deixe el que he pensat que podrien fer els meus alumnes:

Pràctiques de Tecnologia. Programació d’ESP32 amb BlocklyArduino i Arduino IDE.

Si voleu baixar les pràctiques anteriors aneu ací: Descarrega pràctiques.

BlocklyArduino: Comunicació Bluettoth d’Arduino amb Android

Ja he completat les proves per ensenyar als alumnes com comunicar l’Arduino amb el telefon Android programant amb BlocklyArduino i amb APPInventor.

El primer que cal fer es muntar el següent:

Ací can tindre en compte que si connecten el Rx del Bluettoth al pin 2 i el Tx del Bluetooth al pin 3 , caldrà definir com Rx d’Arduino el 3 i com Tx el 2. És a dir, l’emissor Tx del Bluettoth es comunica amb el receptor Rx d’Arduino, i el mateix passa amb el receptor del Bluetooth. Amb això clar ja poden escriure el programa:

A continuació ja podem carregar el programa al Arduino UNO si tenim Windows, o convertir el programa a codi C per copiar-lo dins del IDE d’Arduino i carregar-lo després. Després aparellem el dispositiu Bluettoth al nostre mòbil, i amb l’APP «Bluetooth Terminal» envie un zero o un u per veure si tot funciona com cal que vaja.

Bé, és útil controlar un led amb el telefon ? És clar que no, però és el primer pas per construir i controlar un cotxe teledirigit amb el teu telefon.

És cert que passar de controlar un led a construir un cotxe i controlar-lo no és directe. Cal passar pels alguns passos intermedis que tens ací: Comunicacions Bluetooth amb Android.

Apa, benvinguts al programari lliure en valencià/català.

BlocklyArduino traduït al «català – valencià»

He traduït el Blockly@rduino al «Català – Valencià» , he enviat aquesta setmana la traducció a l’autor després de provar en un servidor el funcionament optim de la traducció.
BlocklyArduino serveix per aprendre a programar amb blocs les targetes com Arduino i derivades en la nostra llengua. És important que quan els alumnes comencen el seu contacte amb els sensors i els actuadors típics de l’«Internet de les coses» ho facen en català/valencià i no es troben que han de passar-se a l’anglés. Si volem que aprecien la nostra llengua, el seu ús ha d’estar també en aquests àmbits especialitzats.

També he actualitzat els materials que he preparat per començar a usar-lo, els he deixat ací: Tutorial BlocklyArduino.

Si no podeu instal·lar aquesta WebAPP al vostre ordinador en un servidor local, podeu utilitzar la versió que he deixat ací: WebAPP BlocklyArduino.

També podeu descarregar el programa del diposit de GitHub: BlocklyArduino_AIO La versió AIO, All In One permet carregar el programa directament a la targeta si teniu Windows, si teniu Linux un cal convertir el programa a codi reconeixible per l’IDE d’Arduino i usar aquest programa per escriure el programa a la targeta.

En uns quant dies revisaré la traducció i canviaré la versió de la WebAPP del meu servidor per valencianitzar-la, llavors us posaré ací un zip amb instruccions per fer el mateix al vostre servidor local.

Gaudiu del programari lliure en «català – valencià», us deixe un tast ací baix.

Actualització: Us pose el zip amb els fitxers de llengua per valencianitzar el BlocklyArduino V4. Dins hi ha txt amb les instruccions.