Flasher le Sonoff 4CH R3 et le Sonoff 4CH Pro R3

Sorti cette année, le Sonoff 4CH Pro R3 n’a que peu d’évolution par rapport à la version précédente.


Un des points d’amélioration est l’emplacement du GPIO0 qui est utilisé lors du flashage pour passer le Sonoff en mode programmation. Plus besoin de souder un fil sur le GND. Le GPIO0 se trouve sur le BP1.

Ce tuto a pour but de faciliter le flashage pour gagner du temps.

Matériel utilisé :

  • 1 Sonoff 4CH PRO R3 ou Sonoff 4CH R3,
  • 1 fer à souder,
  • 1 convertisseur USB à TTL (FT232RL),
  • 4 câbles DuPont,
  • 1 connecteur à souder (4 ou 5 pin).

Soudure :

J’ai utilisé des connecteurs femelle pour la version PRO et des connecteurs mâle pour la version classique.

Flashage :

Pour cette partie, même si cela paraît évident pour certains, ne branchez pas le Sonoff au secteur.
Veillez à bien respecter le câblage ci-dessous.

Passons en mode maintenance :

  • appuyez et maintenez le BP1,
  • ensuite branchez le convertisseur USB-TTL à votre ordinateur,
  • enfin relâchez le BP1.

Si la SLED (Sonoff 4CH R3) se met à clignoter, recommencez la procédure.

Si la LED5 (Sonoff 4CH PRO R3) se met à clignoter, recommencez la procédure.

Étant sous Mac OS, je vais vous détailler la procédure de flashage pour Mac.

On va maintenant installer le programme Esptool.py :

pip install esptool

Vérifiez les informations du Sonoff :

Flobul@Air-de-Flo % esptool.py flash_id

esptool.py v2.8
Found 3 serial ports
Serial port /dev/cu.usbserial-1420
Connecting....
Detecting chip type... ESP8266
Chip is ESP8285
Features: WiFi, Embedded Flash
Crystal is 26MHz
MAC: c8:2b:96:d0:4c:28
Uploading stub...
Running stub...
Stub running...
Manufacturer: 51
Device: 4014
Detected flash size: 1MB
Hard resetting via RTS pin...

On peut télécharger la dernière version d’ESPEasy sur https://github.com/letscontrolit/ESPEasy/releases

Sauvegardons le firmware actuel en cas de problème, ou au besoin pour configurer le module RFX 433.92MHz une prochaine fois.

Flobul@Air-de-Flo % esptool.py read_flash 0x00000 0x100000 sonoff-4ch-pro-r3-backup.bin
esptool.py v2.8
Found 3 serial ports
Serial port /dev/cu.usbserial-1420
Connecting....
Detecting chip type... ESP8266
Chip is ESP8285
Features: WiFi, Embedded Flash
Crystal is 26MHz
MAC: c8:2b:96:d0:4c:28
Uploading stub...
Running stub...
Stub running...
1048576 (100 %)
1048576 (100 %)
Read 1048576 bytes at 0x0 in 95.4 seconds (88.0 kbit/s)...
Hard resetting via RTS pin...

Si tout s’est bien passé, on peut effacer la mémoire flash du Sonoff. (pensez à débrancher le Sonoff et repasser en mode maintenance)

Flobul@Air-de-Flo % esptool.py erase_flash

esptool.py v2.8
Found 3 serial ports
Serial port /dev/cu.usbserial-1420
Connecting....
Detecting chip type... ESP8266
Chip is ESP8285
Features: WiFi, Embedded Flash
Crystal is 26MHz
MAC: c8:2b:96:d0:4c:28
Uploading stub...
Running stub...
Stub running...
Erasing flash (this may take a while)...
Chip erase completed successfully in 1.0s
Hard resetting via RTS pin...

Chargeons le bon fichier firmware dans le Sonoff (pensez à débrancher le Sonoff et repasser en mode maintenance)
Il s’agit de la version ESP8285 1M (vu dans les informations de tout à l’heure), ici : ESP_Easy_mega_20201016_normal_ESP8285_1M.bin

Flobul@Air-de-Flo % esptool.py write_flash --flash_size 1MB --flash_mode dout 0x00000 ESPEasy_ESP82xx_mega-20201016/bin/ESP_Easy_mega_20201016_normal_ESP8285_1M.bin

esptool.py v2.8
Found 3 serial ports
Serial port /dev/cu.usbserial-1420
Connecting....
Detecting chip type... ESP8266
Chip is ESP8285
Features: WiFi, Embedded Flash
Crystal is 26MHz
MAC: c8:2b:96:d0:4c:28
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Compressed 868784 bytes to 572317...
Writing at 0x00010000... (14 %)
Wrote 868784 bytes (572317 compressed) at 0x00000000 in 52.1 seconds (effective 133.4 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...

Débranchez et rebranchez le convertisseur USB-TTL relié au Sonoff (sans passer en mode maintenance).

Un nouveau réseau WiFi devrait apparaître : ESP-Easy (mot de passe : configesp)
Dans la fenêtre qui apparaît, entrez/sélectionnez le nom de votre réseau WiFi et son mot de passe.

Vous voilà avec un Sonoff 4CH PRO R3 prêt à être configuré à la sauce ESPEasy.
Bien sûr, il est possible de lui injecter le firmware Tasmota suivant la même procédure.

Intégrer le Sonoff dans votre Jeedom :

Pour cette partie, je vous encourage à suivre le tuto de Sigalou pour l’intégrer dans Jeedom : http://sigalou-domotique.fr/domotique/25-flash-sonoff-reseau-wifi-flashage

Ajouter les relais et BP

Commençons par affecter le GPIO-13 (D7) sur la LED status WiFi.

Les boutons BP1 à BP4 sont devenus inactifs lors du changement de firmware, il va falloir les reconfigurer.
Créez 8 Switch input : 4 BP, 4 relais en leur affectant leur GPIO.

relais1GPIO-12 (D6)
relais2GPIO-5 (D2)
relais3GPIO-4 (D1)
relais4GPIO-15 (D8)
BP1GPIO-0 (D3)
BP2GPIO-9 (D11)
BP3GPIO-10 (D12)
BP4GPIO-14 (D5)

On va ajouter une règle pour affecter chaque bouton au relais correspondant.
Activez les Rules dans le menu Tools > Advanced > Rules et envoyez.
Changer d’onglet et allez dans le nouvel onglet Rules.
Entrez ce code dans Rules Set 1 et sauvegardez.

On BP1#BP1=1 do
  if [relais1#relais1]=0
    gpio,12,1
  else
    gpio,12,0
  endif
endon
On BP2#BP2=1 do
  if [relais2#relais2]=0
    gpio,5,1
  else
    gpio,5,0
  endif
endon
On BP3#BP3=1 do
  if [relais3#relais3]=0
    gpio,4,1
  else
    gpio,4,0
  endif
endon
On BP4#BP4=1 do
  if [relais4#relais4]=0
    gpio,15,1
  else
    gpio,15,0
  endif
endon

Redémarrez le Sonoff et testez les BP.

Ajouter des sondes sur l’interface I2C

Il faut se rendre dans l’onglet Hardware pour activer l’interface I2C.
Sélectionnez :

  • GPIO 1 pour la ligne GPIO <=> SDA,
  • GPIO 3 pour la ligne GPIO -> SCL.

Physiquement, la pin TX correspond à SDA et la pin RX correspond à SCL.

Voilà ce que donne le montage :

Sonoff 4CH R3 avec 1 sonde BMP280 et 1 OLED SSD1306

La pin nommée IO2 sur le R3 et nommée SDA sur le PRO R3 correspond au GPIO2.
Qui peut être également utilisé pour raccorder une sonde 1-Wire ou autre…

Enjoy.

Liens :
Manuel utilisateur (EN)
Guide d’installation rapide (EN)
Spécifications (EN)
Lets Control It ESPEasy (EN)

Loading

10 réflexions sur « Flasher le Sonoff 4CH R3 et le Sonoff 4CH Pro R3 »

  1. Merci pour cet article !
    Perso, j’utilise l’IDE Arduino pour flasher. Bonne expérience avec le Sonoff Basic.
    Je n’ai pas encore d’expérience avec le CH4, mais si j’en crois mon expérience avec le Basic, une reprogrammation implique aussi une reprogrammation de la LED.
    Pour le CH4, les LED des relais sont elles connectées au relais, ou à des GPIO… et dans ce cas, aux quelles GPIO?
    Et quelle est la GPIO de la LED Wifi?
    Merci pour votre aide.
    Meilleures salutations.

    1. Bonjour.
      Pour les LED des relais, elles sont directement connectées aux relais donc non paramétrables.
      Elles indiquent donc, d’office, l’état des relais.
      Leur affectation est sur la page de l’article :
      relais1 : GPIO-12 (D6)
      relais2 : GPIO-5 (D2)
      relais3 : GPIO-4 (D1)
      relais4 : GPIO-15 (D8)
      BP1 : GPIO-0 (D3)
      BP2 : GPIO-9 (D11)
      BP3 : GPIO-10 (D12)
      BP4 : GPIO-14 (D5)

      Comme indiqué dans l’article, la LED pour le status WiFi est sur le GPIO-13 (D7).
      A paramétrer dans l’onglet Hardware.

      Cordialement.

      1. Merci pour votre réponse.
        La LED en GPIO 13 m’avait échappé dans l’article.
        Cordialement.

    1. Bonjour.
      Pouvez-vous être plus précis ?
      Avez-vous le CH4 R3 ou le CH4 PRO R3 ?
      Vous n’avez pas de Bouton poussoir numéro 2 ? Ou vous ne le voyez pas dans la configuration d’Espeasy ?

      1. Bonjour,

        Oui pardons, j’ai le 4chpro r3 qui n’était pas le même que dans votre article.

        Je ne vois pas la gpio dans la conf esp.

        1. Sur mon 4CH PRO R3, il est bien disponible.
          Quelle version de Espeasy ? Firmware ?
          Possible de réinitialiser la configuration usine ?

    1. Bonjour.
      La partie RF 433MHz n’est plus modifiable une fois le firmware modifié.
      Il est préférable de sauvegarder l’ancien firmware qui permet les modifications et de la garder précieusement. Puis il suffit de reflasher avec le nouveau firmware désiré

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *