Dies ist eine alte Version des Dokuments!


Sonoff

Umbau des Standard-Sonoff 10A in einen Impulsgeber

Sonoff FHEM (nur mit eig. Firmware)

Flash:

sudo python ../.local/lib/python2.7/site-packages/esptool.py -p /dev/ttyUSB0 --baud 115200 write_flash --flash_size=1MB 0x0 sonoff_dual_user1.1024.new.2.bin 

Flashing with Raspberry Pi

( ( SUPLA Firmware Download ) )

ESP Easy Firmware

Flashen (Hardware)

Man muss erst die 4/5 Pins einlöten. Man braucht: Grnd, Senden (TX), Empfangen (RX) & 3.3 V (VCC oder 3V3). Wichtig: Keine 5V verwenden! Ding geht kaputt! Klar: Nie mit Netzspanung flashen!

Bei den ESP8266 muss der GPIO0 beim Booten auf Masse liegen, damit der Sonoff in den Flashmode geht. GPIO0 ist mit dem Taster verbunden, den also beim Anschluss gedrückt halten. Leider ist der Taster beim TH (Temperatur/Huminity) nicht mit dem Taster verbunden (also löten!).

https://wiki.fhem.de/wiki/Sonoff

Bei Erfolg mit neuen WLAN verbinden (ESP_0 V2.0 ESP0). Passwort: configesp IP-Adresse 192.168.4.1 (oder 2.1)

https://waschto.eu/easyesp/

Sonoff 10A (Standard)

Pins von oben (Relais an der Unterseite):

  • VCC
  • Rx
  • Tx
  • Grnd
  • GPIO 14

Wichtig: RX/TX vertauschen! Ich brenne mit Windows (flash.cmd). Com3, Size 1024 (kb), Firmware V 140.

Sonoff RF

Das ist das gleiche Layout wie der Standard, nur ist noch ein Modul installiert für 433Hz-Funkschalter. Das Modul hat einen Tipschalter. Warum?

Achtung: Zum Flashen muss man die beiden Kontakte von R21 kurzschließen (beim Standard ist ein Nummwiderstand installiert, hier nicht). Ich habe einen Draht drangelötet, dann geht es. 1) R21-Brücke

EAPEasy

Es gibt Version 1 und 2. 2 habe ich nicht getestet (flashen schlug fehl), daher das Kompilat von 1 runtergeladen. FHEM via http funktioniert ab Release 128. Habe zuerst 120 installiert, das geht wirklich nicht, obwohl es schon FHEM-http als Protokoll anbietet (EasyESP-Modul in fhem meckert, dass es V 128 min braucht). V 140 funktioniert aber einwandfrei. Als Comtroller-IP (oder halt Hostname) in der Config muss der FHEM-Server eingetragen sein.

Timeserver NPT kann man in den Advanced Settings eintragen.

Rules

https://www.letscontrolit.com/wiki/index.php/Tutorial_Rules

https://www.letscontrolit.com/wiki/index.php/ESPEasy_Command_Reference

Variablen: https://www.letscontrolit.com/wiki/index.php/ESPEasy_System_Variables z.B.: TaskValueSet [DHT22#TempDHT22],5,1

On Clock#Time do // this event comes in every minute
  TaskValueSet 4,2,[SENSOR#Temperature]
  TaskValueSet 4,3,[SENSOR#Humidity]

endon

Überwacht Luftfeuchtigkeit und schalte die Lüftung ein, wenn zu hoch.

  1. Der Luftfeuchtigkeitswert ist standardmäßig 60%, kann aber per WLAN geändert werden
  2. Die Überwachung kann ein/ausgeschaltet werden
  3. 1,2,3 oder mehr Timer können zu best. Uhrzeiten den Lüfter für X Minuten einschalten
  4. Der Lüfter kann per WLAN für 15 Minuten eingeschaltet werden
  5. Der Lüfter kann per WLAN für X Sekunden eingeschaltet werden
  6. Ein Druck auf den Knopf schaltet den Lüfter für 15 Min ein. Wenn er schon an ist, schaltet er ihn aus (min. 15 Min)
// 2017 gerwiki.de/sonoff
On System#Boot do
 timerSet,1,30 // wait for ntp & start timer
 TaskValueSet 4,1,0
 TaskValueSet 4,3,60 // 60% Humidity default
endon

on CheckTime1 do
 if  %systime%=23:25
  gpio,12,1
  timerSet,2,900
  TaskValueSet 4,1,1
 endif
endon
on CheckTime2 do
 if %systime%=22:00
  gpio,12,1
  timerSet,2,600
  TaskValueSet 4,1,1
 endif
endon

on PUMP#Key do
 if [PUMP#Relay]=1
   TaskValueSet 4,1,1
   gpio,12,0
   timerSet,2,900
 else
   Event FanOn15min
 endif
endon

on Rules#Timer=1 do
  Event CheckTime1
  Event CheckTime2
  if [Dummy#Monitorstop]=0
   timerSet,1,60 
   Event CheckHum
//   TaskValueSet 4,2,%uptime%
  endif 
endon

on CheckHum do
   if [SENSOR#Humidity]>[Dummy#Hum]
    gpio,12,1
   else
    gpio,12,0
  endif
endon

on Rules#Timer=2 do
  TaskValueSet 4,1,0
   Event CheckHum
  timerSet,1,60
endon

// Switch on Fan for x seconds:
// http://<your esp ip>/control?cmd=event,FanOn=15 
on FanOn do
 gpio,12,1
 timerSet,1,0
 TaskValueSet 4,1,1
 timerSet 2,%eventvalue%
endon
on FanOn15min do
 event FanOn,900
endon

on WatchStart do
 TaskValueSet 4,1,0
 timerSet 1,60
endon
on WatchStop do
 TaskValueSet 4,1,1
 timerSet 1,0
endon

//http://<your esp ip>/control?cmd=event,SetHumidity=66
on SetHumidity do
  TaskValueSet 4,3,%eventvalue%
endon

Normaler Switch 10A

  • Relais über GPIO 12
  • Taster über GPIO 0
  • Leuchtdiode über GPIO 13

Rules: (zuvor bei den advanced Settings aktivieren: Damit funktioniert der Taster & schaltet das Relais ein/aus

on PUMP#Key do
 if [PUMP#Relay]=1
   gpio,12,0
 else
   gpio,12,1
 endif
endon
on PUMP#Relay do
 if [PUMP#Relay]=1 
   gpio,13,0
 else
   gpio,13,1
 endif
endon

Dual

Der Dual ist wie der normale Switch, aber mir 2 Relais. ABER. Zum Flashen muss man bei den ESP den GPIO 0 geschaltet haben beim Booten. Dann geht das Ding in den Flashmodus. Normalerweise ist bei Sonoff der Taster an den GPIO verbunden → also Knopf drücken beim Booten, dann einfach flashen. Nicht so beim Dual. Da geht der Taster nicht über den GPIO 0, daher muss man den GPIO 0 an der Platine abgreifen, um zu flashen. Anleitungen im Netz. War mir bislang zu mühsam…

TH 10 / TH 16

  • Jack mit Temperatur-/Feuchtigkeitssensor via GPIO 14

DHT: Der Sensor () ist DHT22-kompatibel

Die (blaue) Leuchtdiode hängt auch an GPIO 14, leuchtet also gleichzeitig mit der Relaisschaltung. L

Extra GPIO schalten

 
Nach oben
sonoff.1508186964.txt.gz · Zuletzt geändert: 2024/02/29 13:35 (Externe Bearbeitung)
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0
DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp   Dogecoin Donations Accepted Here    DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp  DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp