Omet navegació

2.1 Instal·lació en Ubuntu / Lliurex

0) Enllaçar python en Lliurex 16 i lliurex 19 (Aquesta nota sols és per a Lliurex 16 i lliurex 19)

Quan configures lliurex per tal que python siga per  defecte la versió 3 o superior el paquet ND4 que funciona amb python 2.7 deixa de funcionar i ja sols pots actualitzar el sistema utilitzant les ordres de ubuntu «sudo apt-get update» «sudo apt-get upgrade».

Quan acabes les pràctiques amb python 3 cal restaurar la configuració que  tenia python 2.7 per defecte amb l'ordre.

sudo ln -s /usr/bin/python2.7 /usr/bin/python

En Ubuntu no has de tornar a canviar la versió que tenies antiga de python. No tens cap problema. En lliurex malgrat tot, no notaràs res de açò llevat que vulgues instal·lar algun paquet nou que no tingueres. Però pots tornar a apuntar a python 2.7 , instal·lar el paquet i tornar a apuntar cap a python 3 per deixar-ho llest per treballar amb els alumnes.

1) Instal·lació de python3 (Aquesta nota és per Ubuntu 20.04, 22.04 i Lliurex 16 , 19 i 21)

El Ubuntu 22.04 pot tindre varies versions de Python, no pots desinstal·lar la versió de python3 o trencaràs el sistema.

Quan crides a python des d'un terminal no sap quina versió vols així que cal especificar que python és python3, i per fer això executa en un terminal l'ordre:

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

Comprovem la versió de python:

python --version

2) Posar esptool a lliurex 21 (Aquesta nota sols és per a Lliurex 21)

Modifiqueu les fonts de lliurex 21, obriu un terminal i escriviu:
sudo nano /etc/apt/sources.list


per afegir aquestes ratlles
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


Actualitzeu
sudo apt update


Instal·leu esptool
sudo apt-get install esptool


Canvieu les fonts de lliurex 21
sudo nano /etc/apt/sources.list


per deixar sols les fons de lliurex 21 (deixeu sols aquestes ratlles)
deb http://lliurex.net/focal/ focal main restricted universe multiverse preschool
deb http://lliurex.net/focal/ focal-updates main restricted universe multiverse
deb http://lliurex.net/focal/ focal-security main restricted universe multiverse

2) Posar esptool a Ubuntu/kubuntu i derivats

Per carregar el Firmware als ESP32 cal el programa esptool que instal·lem amb l'ordre:

sudo apt-get install esptool

3) Instal·lació del firmware

Baixem de Github la carpeta on està l'eina esptool.py d'ací: (Github d'espressif). Baixem el zip i la descomprimim a Python3 dins de la nostra /home/batx1 , caldrà crear una carpeta anomenada /home/batx1/Python3/esptool-master (el nostre usuari és batx1, el vostre variarà).
Entren a esta carpeta des del terminal.

cd /home/batx1/Python3/esptool-master

Ara anem a la la pàgina de MicroPython per baixar el últim firmware de la nostra ESP32. En el nostre cas baixem esp32-idf3-20210202-v1.14.bin i el deixem dins la carpeta esptool-master que tenim a Baixades.

Seleccionem amb el ratolí i copiem l'ordre de baix amb CONTROL + C
python esptool.py --chip esp32 --port /dev/ttyUSB0 erase_flash

Peguem al terminal l'ordre d'abans prement al mateix temps les tecles CONTROL + MAJ + V, prem INTRO
i esperem a que acabe el esborrat del firmware antic. Tornaràs a veure al terminal el nom del teu usuari batx1@Tecnologia

Selecciona amb el ratolí i copia l'ordre de baix amb CONTROL + C
python esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 115200 write_flash -z 0x1000 esp32-idf3-20210202-v1.14.bin

Pega al terminal l'ordre de abans prement al mateix temps les tecles CONTROL + MAJ + V , prem INTRO
i espera a que acabe l'escriptura del firmware nou. Tornaràs a veure al terminal el nom del teu usuari batx1@Tecnologia

El resultat s'assemblarà a aquest:

carrega-firmware

Aquest pas és imprescindible fer-lo bé si vols poder carregar programes de pyhon o executar ordres al terminal del ide per controlar ESP32.

Nota:

Si esteu formatant «WeMos D1 R32» o posant el firmware amb l'ordre de més amunt us caldrà després de posar l'ordre al terminal posar un cable entre «GND» i el «GPIO 00» i traure'l un segon més tard. Mireu la imatge de baix.

Wemos_D1_R32 carrega de firmware

4) Instal·lació de l'IDE Thonny

Anem a la pàgina de descarrega de Thonny i baixem la darrera versió de l'instal·lador per a Linux, en el nostre cas, thonny-4.0.1.bash ,

anem amb el terminal on hem deixat el programa, en el meu cas, /home/batxq/Python3, i executem la ordre:

bash thonny-4.0.1.bash

Després de la instal·lació veurem la ruta per executar el programa IDE.

Thonny instructions

Executem al terminal l'ordre: /home/batx1/apps/thonny/bin/thonny

Prova-IO18

Es útil fixar aquest programa al Dock de Lliurex per evitar-nos entrar sempre al Thonny amb el terminal.

Thonny al menú

Abans de carregar cap programa de microPython amb el IDE de Thonny cal triar que el llenguatge de programació de Thonny siga «MicroPython ( esp32)».

Per fer això vés a Tools, Options...

Tool , Options

i vas a la pestanya Interpreter , i tries MicroPython(esp32).

Interpreter MicroPython

Podem ara provar un programa senzill per engegar i aturar un led 100 vegades  posat al gpio 18.

from machine import Pin
from time import sleep_ms
for x in range(1, 100):
Pin(18, Pin.OUT).value(1)
sleep_ms(1000)
Pin(18, Pin.OUT).value(0)
sleep_ms(1000)
ESP32 GPIO18 Wemos-D1-R32 GPIO-18

Cal sagnar les ordres de dins del for 3 vegades a la dreta amb el botó que es troba a Edit -> Indent selected lines.

 Indent

Sagnat programa (Indent)

Guarda el script i executa'l amb el botó (verd) de Play que hi ha baix de View.

No oblides prémer el boto boot de ESP32 al carregar el programa.

ESP32 boot Wemos-D1-R32 boot

 

També pots executar ordres al terminal de Thonny per controlar amb ordres directes el ESP32.

Prova les ordres una a una:

import machine
pin1 = machine.Pin(18, machine.Pin.OUT)
pin1.value(1)
pin1.value(0)

Després executa help() per veure un resum d'ordres bàsiques.

Creat amb eXeLearning (Finestra nova)