Sonoff flashen

De laatste tijd ben ik bezig geweest met het vervangen van mijn KaKu schakelaars. Zo zat er KaKu in mijn hanglampen en werden ook de staande lampen via KaKu bediend. Omdat KaKu via 433mhz werkt en dus geen feedback kan geven heb ik besloten om ze te gaan vervangen. Via het Youtube kanaal van Bruh kwam in in aanraking met Sonoff.

De Sonoff is een WIFI bestuurbare schakelaar gemaakt door het bedrijf itead.
Deze is schakelaar is natuurlijk te gebruiken via de eigen app, maar handiger zou zijn om deze te kunnen aansturen middels Home Assistant icm MQTT. Om dit te bereiken moeten we nieuwe firmware flashen. Dit klinkt moeilijker dan het is.

Wat heb je nodig:
Sonoff
USB -> FTDI adapter
Mini USB kabel
Header wires male->female

De Sonoff (€4,46) en FTDI adapter (€1,69) heb ik via AliExpress gekocht, als je niet op China wil wachten klik dan hier.

Links:
Tasmota: https://github.com/arendst/Sonoff-Tasmota/releases
Arduino IDE: https://www.arduino.cc/do…arduino-1.8.3-windows.zip
Board Manager URL: http://arduino.esp8266.co…age_esp8266com_index.json

Stap 1: Downloaden en instellen van de software
Download de Arduino IDE software via de bovenstaande link, dit is de click-to-run versie.
Extract de ZIP file en open de map waarin Arduino.exe staat, maak hierin een nieuwe map aan met de naam “portable”. Open dan de Arduino.exe.

Vervolgens ga je naar File -> Preferences en vul het veld “Additional Boards Manager URLs” in met de volgende URL: http://arduino.esp8266.co…age_esp8266com_index.json

Ga dan naar Tools -> Board -> Boards Manager. In het venster kun je zoeken naar esp8266 en druk op Install.

Ga vervolgens naar Sketch -> Include Library -> Manage Libraries. In het venster kun je zoeken naar pubsub druk weer op Install en zoek dan naar json en installeer ArduinoJson.

Ga dan terug naar de portable map die zojuist is aangemaakt, dan naar sketchbook -> libraries -> pubsubclient en open het bestand PubSubClient.h met Notepad. Op regel 26 zie je MQTT_MAX_PACKET_SIZE 128 staan, verander dit in 512 en sla het bestand op.

Nu moeten we de firmware van Tasmota gaan downloaden, zie de link bovenaan de pagina.
Kies de laatste release en download de Source code (zip). Extract de zip file in een nieuwe map in de Arduino map. Ga nu terug naar de Ardiuno IDE software en kies voor File -> Open en navigeer naar je uitgepakte Tasmota map, daarin staat de map sonoff en open het bestand sonoff.ino.

Aan de bovenkant van de applicatie openen verschillende tabbladen, selecteer het tabblad user_config.h hierin staan alle instellingen. De volgende instellingen heb ik aangepast.

  • Project naam naar sonoff1 (en de volgende sonoff2 etc.)
  • WIFI SSID en wachtwoord
  • MQTT server informatie

Uitgeschakeld door een // ervoor te zetten

  • USE_DOMOTICS
  • USE_I2C
  • USE_IR_REMOTE
  • USE_WS2812
  • USE_WS2812_DMA

Pas de instellingen onder Tools aan, zie de instellingen:

Als dat ingesteld is kunnen we kijken of de code compileert door op het vinkje links boven te drukken. Als dat het geval is kunnen we gaan flashen.

Stap 2: Hardware voorbereiden
Haal je Sonoff uit zijn behuizing door de onderkant los te maken. Zorg ervoor dat je Sonoff niet is aangesloten op 230v!
Let ook op met het aansluiten van je FTDI adapter dat hij is ingesteld op 3.3v middels de jumper.
Op je Sonoff zie je op het midden van de printplaat 5 gaatjes zitten hierin steek je de male kant van je header wire en de female kant gaat op de FTDI.

Sluit de header wires als volgt aan:

Als je alle header wires aangesloten hebt kunnen we gaan flashen, sluit de USB kabel aan op de FTDI, houd het knopje op de Sonoff ingedrukt en zorg voor een klein beetje druk op de header wires die in de Sonoff zitten (zodat ze goed contact maken) en sluit nu de USB kabel aan op je computer. Wanneer hij is herkend kun je het knopje los laten (5sec ongeveer). Check voor de zekerheid of we de juiste poort gaan flashen via Tools -> Port.
Als dat het geval is druk je bovenaan in de software op het pijltje naast het vinkje. Houd ten alle tijden tijdens flashen druk op de header wires van je Sonoff.
Wanneer alles goed gaat zie je 100% staan onderin de console en geeft het LED-je op de Sonoff een “flikker”. Nu kan je de header wires loskoppelen.

Om het flashen makkelijker te maken heb ik een aan/uit knop aangesloten op de + kabel (zwart in mijn geval).

De Sonoff is nu geflashed met de Tasmota software en kan aangesloten worden, zodra dit is gedaan zal de Sonoff zich melden op je WIFI netwerk en kan je het IP adres van de Sonoff achterhalen om de webinterface te openen.

Stap 3: Toevoegen aan Home Assistant
Open de configuration.yaml en zorg ervoor dat je MQTT is ingesteld, voorbeeld:

code:

1
2
3
4
5
6
7
mqtt:
  broker: 192.168.1.118
  port: 1883
  client_id: home-assistant-1
  keepalive: 60
  username: !secret mqtt_user
  password: !secret mqtt_password

Voeg daarna onderstaand toe:

code:

1
2
3
4
5
6
7
8
9
switch:
  platform: mqtt
  name: "Strip Cord"
  command_topic: "cmnd/sonoff/power"
  state_topic: "stat/sonoff/POWER"
  qos: 1
  payload_on: "ON"
  payload_off: "OFF"
  retain: true

Nu kun je je configuration.yaml opslaan en Home Assistant herstart. Nu zit je Sonoff schakelaar in Home Assitant!

9 gedachten over “Sonoff flashen”

  1. vraagje welk FTDI heb je gebruikt ik krijg het niet voor elkaar constant melding (flash fout) heb rxd en txd al een keer gewisseld geen succes
    ik gebruik de usb to TTL
    ik heb hier diverse sonof basic schakelaars liggen die graag zou willen flashen
    heb je een misschien een oplossing?
    al vast bedankt groet jan

    1. Ik heb deze van Aliexpress: Link
      Wordt hij goed herkend bij apparatenbeheer?
      Bij apparatenbeheer kun je ook zien op welke COM poort hij zit.
      Dit moet overeenkomen met wat in de Arduino IDE is ingesteld.

      Belangrijk is dat je de knop op de Sonoff ingedrukt houd als je de spanning erop zet. Hierdoor komt de Sonoff in de programmeer modus.
      Als hij eenmaal is gestart kun je de knop loslaten.
      Hopelijk lukt het nu.

  2. Dank voor je snelle reactie
    wordt de usb stick door wiindows 10 ondersteunt die van mij nl niet kan ik alleen op een oude laptop

  3. Ik heb een leuke software ontwikkeld voor de sonoff. Deze software geeft uitgebreide mogelijkheden. Het is niet alleen een schakelaar. Er kunnen sensoren worden aangesloten waardoor de sonoff kan worden gebruikt als bewegingssensor, thermostaat, hygrostaat, lichtsensor en meer.
    meetwaarden en gebeurtenissen kunnen worden verstuurd naar bijvoorbeeld Domoticz.

    Kan op de Sonoff basic R1 en het nieuwe model met de ESP8285.
    De bediening is overzichtelijk en intuitief. De webinterfaces zijn geoptimaliseerd voor telefoon.

    Bekijk de handleiding voor meer informatie: <a href="http://hansiart.nl/techniek/newsonoff/newsonoff_manual.html&quot;

  4. Ik heb een sonoff geflashed en op 3.3 volt werkt alles. Als ik vervolgens 220 v aansluit zie ik dat er geen wifi signaal uitgezonden wordt. Ik heb geen idee hoe dat kan. Iemand anders?

  5. Als ik de map ‘portable’ aanmaak in de map waarin Arduino.exe staat, krijg ik de Arduino niet meer geopend. Weet iemand hoe dat komt?

Laat een reactie achter

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *