[Tasmota] ESP32-CAM

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
garycooper
Messages : 453
Inscription : 07 août 2017, 23:58

[Tasmota] ESP32-CAM

Message par garycooper »

Bonjour à tous, voilà quelques temps que je possède plusieurs mini camera ESP32-CAM mais j'avais du mal à trouver un projet qui puisse être facilement évolutif. Puis j'ai fini par trouver un tuto qui permet de flasher cette camera avec Tasmota. L'intérêt que j'y trouve est principalement de pouvoir facilement ajouter quelques devices type sonde de temperature, switch, détection IR ... Si on se passe de la micro SD, on peut utiliser plusieurs GPIO et en plus allumer, éteindre ou varier l'intensité de la LED blanche !
Pour la sonde de température, j'ai essayé plusieurs GPIO mais je n'ai pu la faire marcher que sur le 13 ... Allez savoir pourquoi ...
Pour flasher votre ESP32-CAM, vous aurez besoin :
* d'une ESP32-CAM (AI Thinker ou clone)
* d'un raspberry avec python 3 (j'ai utilisé un Pi 4)
* un adaptateur FTDI USB en 5V (ne fonctionne pas si on le met en 3,3V)
* quelques câbles dupont femelle/femelle

Schéma de câblage pour flasher l'ESP :

Image

Après, on branche l'adaptateur FTDI sur un USB du Raspberry et les choses sérieuses peuvent commencer !

On se connecte en SSH au Raspberry via Putty ou un autre logiciel. Pas besoin de se mettre en mode root.
On commence par installer "pip" sur le raspberry (s'il n'y est pas encore) :

Code : Tout sélectionner

sudo apt update && sudo apt install wget python3 python3-pip
On installe ESPtools qui nous permettra de téléverser le firmware :

Code : Tout sélectionner

pip3 install esptool
On cherche sur quel USB est branché l'adaptateur FTDI :

Code : Tout sélectionner

ls -l /dev/ttyUSB*
Pour ma part, il était sur l'USB0.
On associe l'utilisateur au même groupe que le port USB :

Code : Tout sélectionner

sudo usermod -a -G dialout ${USER} && sudo usermod -a -G tty ${USER}
On crée un dossier "Tasmota 32" dans le dossier "opt" du Pi :

Code : Tout sélectionner

cd /opt && sudo mkdir Tasmota32
On télécharge sur le Raspberry les fichiers utiles au flash + le firmware stable :

Code : Tout sélectionner

wget -P /opt/tasmota32/ \
  https://ota.tasmota.com/tasmota32/tasmota32-webcam.bin \
  https://github.com/arendst/Tasmota-firmware/raw/main/static/esp32/boot_app0.bin \
  https://github.com/arendst/Tasmota-firmware/raw/main/static/esp32/bootloader_dout_40m.bin \
  https://github.com/arendst/Tasmota-firmware/raw/main/static/esp32/partitions.bin
Si vous préférez charger le firmware de la branche développement :

Code : Tout sélectionner

wget -P /opt/tasmota32/ \
  https://ota.tasmota.com/tasmota32/tasmota32-webcam.bin \
  https://github.com/arendst/Tasmota-firmware/raw/main/static/esp32/boot_app0.bin \
  https://github.com/arendst/Tasmota-firmware/raw/main/static/esp32/bootloader_dout_40m.bin \
  https://github.com/arendst/Tasmota-firmware/raw/main/static/esp32/partitions.bin
On donne l'accès utilisateur au dossier "Tasmota 32" :

Code : Tout sélectionner

sudo chown -R ${USER} Tasmota32/
On efface la mémoire de l'ESP32-CAM avant de flasher :

Code : Tout sélectionner

esptool.py --port /dev/ttyUSB0 erase_flash
Une fois le message de fin d'effacement de la mémoire, on appuie sur le bouton RESET de l'ESP32-CAM pour le rebooter et le remettre en mode flash. On envoie le firmware Tasmota (ENFIN !!!) :

Code : Tout sélectionner

esptool.py --chip esp32 \
  --port $ESP_PORT \
  --before default_reset \
  --after hard_reset \
  write_flash -z \
  --flash_mode dout \
  --flash_freq 40m \
  --flash_size detect \
  0x1000 /opt/tasmota32/bootloader_dout_40m.bin \
  0x8000 /opt/tasmota32/partitions.bin \
  0xe000 /opt/tasmota32/boot_app0.bin \
  0x10000 /opt/tasmota32/tasmota32-webcam.bin
Une fois le message précisant que le firmware a été chargé, vous pouvez retirer le pont entre le GPIO0 et le GND. Appuyez sur "RESET" de l'ESP32-CAM et le voilà qui redémarre en mode AP TASMOTA. Connectez-vous au réseau wifi qui commence par "Tasmota" (mot de passe "configesp") et tapez l'adresse IP 192.168.4.1 dans votre navigateur. Entrez le nom de votre réseau WIFI et votre mot de passe. Vous voilà avec votre ESP32-CAM sous Tasmota connecté à votre réseau wifi ! Il ne reste plus qu'à trouver son IP et configurer le module !

Entrez l'IP de votre ESP32-CAM puis cliquez sur "Configuration" et "Other configure". Mettre
{"NAME":"AITHINKER CAM","GPIO":[4992,1,672,1,416,5088,1,1,1,6720,736,704,1,1,5089,5090,0,5091,5184,5152,0,5120,5024,5056,0,0,0,0,4928,576,5094,5095,5092,0,0,5093],"FLAG":0,"BASE":2}
dans "Template" et cocher la case "Activate".
Ensuite allez dans "Console" est entrez
Rule1 ON System#Boot DO WcInit ENDON
puis validez. Inscrire
Rule1 1
dans "Console" puis
Restart 1
.
Si le module n'est pas à la bonne heure, vous pouvez taper
timezone
dans "Console".


Pour visualiser les snapshot (et donc intégrer la camera à Domoticz), entrez l'URL suivante :
http://IP de l'ESP32CAM:80/snapshot.jpg
Pour faire du streaming :
http://IP de l'ESP32CAM:81/stream
ou alors
http://IP de l'ESP32CAM:81/cam.mjpeg
Voici comment paramétrer pour pouvoir ajouter une sonde de température sur le GPIO13 et moduler l'intensité de la LED de flash. Attention ! A ne pas faire si vous souhaitez utiliser la carte microSD de l'ESP32-CAM.

Aller dans "Configuration" puis "Configuration module" :
Config module.JPG
Config module.JPG (41.09 Kio) Consulté 16357 fois

Ensuite aller dans "Configuration" puis "Template" :
Config template.JPG
Config template.JPG (34.96 Kio) Consulté 16357 fois
Et voilà ! Plus quà profiter !

Lien du Tuto initial :
https://cgomesu.com/blog/Esp32cam-tasmo ... cam-server
Dernière modification par garycooper le 22 févr. 2022, 12:55, modifié 3 fois.
suisk1ptitmotard
Messages : 42
Inscription : 02 juin 2017, 12:59
Localisation : Essonne 91

Re: [TUTO] ESP32-CAM sous Tasmota

Message par suisk1ptitmotard »

Sympa le tuto, je vais en commander une.

Est-ce qu'il y la possibilité de faire quelque chose pour la vision nocturne?
RPi2 Arduino digicode 12 Capteurs Sirénes Relais TeleInfo ESP8266 ds180b1 bme280 Alim Ininterruptible HPamplificateur
DomoticzV2024.7 Nginx Ramlog Openvpn Fail2ban Iptable MiniDlna Ssmtp Samba Telebot openbeken
garycooper
Messages : 453
Inscription : 07 août 2017, 23:58

Re: [TUTO] ESP32-CAM sous Tasmota

Message par garycooper »

Je crois qu'il faut commander un objecrif adapté à mettre à la place de celui d'origine.
suisk1ptitmotard
Messages : 42
Inscription : 02 juin 2017, 12:59
Localisation : Essonne 91

Re: [TUTO] ESP32-CAM sous Tasmota

Message par suisk1ptitmotard »

Bonjour,
Je test depuis plusieurs jours, pour le prix avec la cam de base 2mp 70° c'est déjà pas mal.

Je vais commander une autre cam 160° night version qui correspond mieux à mes besoins. Je n'ai pas d'élément de comparaison pas rapport à une cam sur Rpi, est ce que c'est plus fluide quand ca bouge vite.
RPi2 Arduino digicode 12 Capteurs Sirénes Relais TeleInfo ESP8266 ds180b1 bme280 Alim Ininterruptible HPamplificateur
DomoticzV2024.7 Nginx Ramlog Openvpn Fail2ban Iptable MiniDlna Ssmtp Samba Telebot openbeken
garycooper
Messages : 453
Inscription : 07 août 2017, 23:58

Re: [TUTO] ESP32-CAM sous Tasmota

Message par garycooper »

Salut suisk1ptitmotard, la puissance de l'ESP32 Cam n'est pas fofolle... Ça lag pas mal mais j'ai pas vraiment comparé avec la camera du rpi. Pour 6€ l'ESP + objectif, il faut pas attendre les performances d'une IPCam.
Jieffe
Messages : 55
Inscription : 27 mars 2021, 20:52

Re: [TUTO] ESP32-CAM sous Tasmota

Message par Jieffe »

Chouette tutoriel, merci !

A noter qu'il est désormais possible de se procurer un ESP32-CAM équipé d'un port USB (soit intégré directement sur le PCB ou grâce à un shield supplémentaire), ce qui facilite grandement le flashage de Tasmota.

J'ai le modèle avec USB intégré sur le PCB et cela fonctionne impeccablement.
balajol
Messages : 864
Inscription : 13 nov. 2015, 18:54
Localisation : 62

Re: [TUTO] ESP32-CAM sous Tasmota

Message par balajol »

Bonjour,
Merci Pour ce tutoriel et les liens .
Pour ma part je suis sous Tasmota 9.3.1
Sous "Configuration module" je n'ai pas accès au GPIO 4
Sous "Template" J'ai bien le GPIO 4 PMW

Pourriez vous Préciser comment vous commandez la Led ?
Merci de votre retour

Ceci-dit je suis étonné de la qualité d'image de cette cam pour ce Prix (FRAMESIZE 1024x760)

Cdt
Bertrand

Edit: Pour ceux qui ont cherché comme moi, J'ai trouvé pour l'allumage On/Off, Je continu de chercher pour faire varier la puissance de la LED ..
http://<ip>/cm?cmnd=Power%20TOGGLE
http://<ip>/cm?cmnd=Power%20On
http://<ip>/cm?cmnd=Power%20off
http://<ip>/cm?user=admin&password=joker&cmnd=Power%20Toggle
2024.6 PC Windows10 ; 2ème DEBIAN 10;DANFOSS LC13, Topp; Senseurs univ FIBARO FGBS001, Flood Sensor, ZMNHBD1 Flush 2 Relays ; FIBARO FGS222-FGS212;RFXCOM-RFXtrx433 USB 433.92MHz , Prises Phénix, Prises et Eclairage DI-O, SOMFY RTS,Sonoff ..
garycooper
Messages : 453
Inscription : 07 août 2017, 23:58

Re: [TUTO] ESP32-CAM sous Tasmota

Message par garycooper »

Bonjour, c'est surprenant parce que j'ai flashé la version 9.31. Dans "Configuration module" il faut choisir "ESP32-CAM(2)" et valider. Ensuite il faut revenir au menu principal puis retourner sur "Configuration module". Là tu pourras paramétrer le GPIO4 en PWM. Attention, si tu as paramétré plusieurs GPIO dans "Configuration module", chacun doit avoir un numéro différent das la cas à droite (pas de numéro pour les DS18b20 par exemple). En paramétrant le GPIO4 en PWM tu peux faire varier la luminosité de la LED grâce au curseur et allumer ou éteindre avec "Toggle".
balajol
Messages : 864
Inscription : 13 nov. 2015, 18:54
Localisation : 62

Re: [TUTO] ESP32-CAM sous Tasmota

Message par balajol »

Bonjour,
Merci de ton retour
J arrive également à faire, varier la, luminosité à partir de la console . Ma demande concerne l accés par un lien http afin de la faire varier à partir de domoticz. Est il possible avec le firmware Tasmota de commander directement les gpio comme avec espeasy ?
Cdt
Bertrand
2024.6 PC Windows10 ; 2ème DEBIAN 10;DANFOSS LC13, Topp; Senseurs univ FIBARO FGBS001, Flood Sensor, ZMNHBD1 Flush 2 Relays ; FIBARO FGS222-FGS212;RFXCOM-RFXtrx433 USB 433.92MHz , Prises Phénix, Prises et Eclairage DI-O, SOMFY RTS,Sonoff ..
garycooper
Messages : 453
Inscription : 07 août 2017, 23:58

Re: [TUTO] ESP32-CAM sous Tasmota

Message par garycooper »

Oui biensûr. Il faut créer un matériel en dummy device puis créer manuellement les types d'interrupteurs ou capteurs rattachés aux GPIO. Ensuite, tu mets le numéro d'IDX dans l'onglet "configuration domoticz" de Tasmota. Ne pas oublier également de compléter la partie configuration MQTT
Répondre