Eigene Firmware für Sonoff S20

02.12.2018

Nachdem ich nach meinen diversen Erfahrungen mit dem Arduino auch mal andere Projekte erforschen wollte, habe ich mich durch Artikel in zurückliegenden Ausgaben der c't inspirieren lassen und Projekte mit dem ESP8266 ausprobiert - zuerst der Umbau einer WLAN-fähigen Steckdose...

Produkte unter der Marke Sonoff sind bei Bastlern und Makern sehr beliebt - besonders da viele einen ESP8266 oder ähnliches enthalten und das Aufspielen eigener Software auf diese Systeme sehr einfach ist. Da ich mich schon immer darüber erregt hatte, wie teuer Netzwerk-schaltbare Steckdosen sind, habe ich mir eine WLAN-Steckdose gekauft: Die wird zwischen die normale Steckdose und einen Verbraucher geschaltet. Per App kann ich dann den Verbraucher vom Strom trennen/mit dem Strom verbinden ohne mich in seiner Nähe befinden zu müssen.

Auf der Packung meiner bei Amazon (geht noch billiger - aber ich habe mich über die relativ geringe Lieferdauer von 8 Tagen sehr gefreut - da bezahl ich auch mal die drei Euro mehr) georderten prangten auch Ankündigungen wie IFTTT, Amazon Alexa, Google Assistant oder nest - ich schloss mich da einem Zitat aus der c't an: "Wir gaben der Original-Firmware keine Chance!"

Also - aufgeschraubt das Ding, Arduino-IDE runtergeladen und Beispielfirmware drauf geladen. Zusammenschrauben und ausprobieren. Enttäuschung verarbeiten: Der Knopf hatte jegliche Funktion verloren. SSID und Passwort fürs WLAN mussten hart in die Firmware einprogrammiert werden. Das geht doch anders!?

Also fix das Repository geklont und losgelegt mit einer Internet-Recherche - siehe da: WPS funktioniert... Nach einer weiteren Runde Hacken hatte ich meine Firmware fertig und in einem neu eingerichteten Repository abgelegt: Die Steckdose sucht nun nach Einstecken nach dem zuletzt verbundenen WLAN - findet sie es nicht oder kann sie sich nicht damit verbinden, blinkt sie aufgeregt, was den Nutzer dazu veranlassen sollte, am Access Point PushButton-WPS zu aktivieren. Sobald er dies getan hat, muss er durch Drücken des Knopfes an der Steckdose den WPS-Prozess dort noch in Gang setzen. Ist dies erfolgreich, ist die Steckdose betriebsbereit und der angeschlossene Verbraucher zunächst deaktiviert (sichtbar durch das grüne Dauerleuchten. Nun kann man die Steckdose am Schalter aus- und einschalten und alternativ per WLAN über die rudimentäre Weboberfläche.

Aktualisierung vom 2. Dezember 2018

Die Implementierung einer Zeitsteuerung in der Steckdose wurde wieder fallengelassen - schließlich läuft ein Raspi bei mir Tag und Nacht - und damit habe ich einen fähigen Linux-Server, auf dem so nützliche Dinge wie at und cron zur Verfügung stehen. Daher habe ich entschieden, die Steckdose per wget ( curl ginge natürlich auch) zu steuern und mich in der vorweihnachtlichen Zeit lieber ein wenig zurückzulehnen... (Wem will ich was vormachen? Ich werde die Zeit natürlich für andere Dinge nutzen!)

Artikel, die hierher verlinken

Max7119 NTP Uhr

01.03.2020

Nach meinen Erfolgen mit E-Paper und WLAN-Steckdosen dachte ich mir, dass es an der Zeit sei, etwas neues auszuprobieren...

Sonoff S20 und MQTT

07.03.2019

Wie bereits verschiedentlich beschrieben habe ich noch einmal an meiner eigenen Firmware für WLAN.Steckdosen weitergeschraubt

E-Paper Türschild mit ESP8266

08.09.2018

Nach meinen ersten Versuchen, das E-Paper-Display mit einem Raspi anzusteuern habe ich nunmehr den Schritt gewagt und - durch die ersten Erfolge mit der WLAN-Steckdose unvorsichtig geworden - erste Versuche mit der Ansteuerung durch einen ESP gemacht.

Alle Artikel rss Wochenübersicht Monatsübersicht Codeberg Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • OAuth und OTP

    16.02.2020

    Wie bereits beschrieben will ich mich demnächst näher mit OAuth befassen...

    Weiterlesen...

Neueste Artikel

  • Split von Filesets in Apache ANT

    Ich musste neulich darüber nachdenken, eine Parallelisierung für einen meiner ANT-Tasks in meinem Static Site Generator einzubauen.

    Weiterlesen
  • Ein Doclet zur Erzeugung von DocBook aus Javadoc

    Ich habe mich mit der Idee zu diesem Projekt Monate abgequält - hätte ich gewusst, was die eigentliche Implementierung für Qualen verursachen würde, hätte ich sie wahrscheinlich eingestampft.

    Weiterlesen
  • Motion JPEG Erzeugung aus Java heraus

    Da ich mich in den letzten Wochen wieder einmal mit Javas Sicherheitsmechanismen und dem Erzeugen von Animationen beschäftigt habe, habe ich den Entschluss gefasst, die bisher mittels JMF AVIs in dWb+ zu erstetzen - nur wodurch?

    Weiterlesen

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen Codeberg-Repositories findet man hier.