Hallo Zusammen,
so langsam wird es Zeit meine Wandthermostaten fertig zu stellen, das ja bald die Heizperiode kommt.
Da ich das OLED Display nicht die ganze Zeit an haben möchte (Längere Lebensdauer) wollte ich einen kleinen Touchsensor
mit einbauen, der bei Bestätigung das Display für 10 Sec an macht.
Sobald ich ihn anschließe spiel der D1min verrückt klickt schnelle das Relais und ist dann komplett zurückgesetzt.
Evtl. mach ich ja auch was falsch.
Folgende Konfiguration habe ich
GENERIC(18)
Hardware Tasmota GPIO: Pin Pin GPIO: Tasmota Hardware
N/A RST TX GPIO1 None(0) N/A
N/A None(0) A0 RX GPIO3 None(0) N/A
Optokopler/Finderrelais Relais1(21) GPIO16 D0 SCL(D1) GPIO5 I2C SCL(5) OLED SH1106 & BME/BMP280
N/A None(0) GPIO14 SCLK(D5) SDA(D2) GPIO4 I2C SDA(6) OLED SH1106 & BME/BMP280
N/A None(0) GPIO12 MISO(D6) D3 GPIO0 None(0) N/A
N/A None(0) GPIO13 MOSI(D7) D4 GPIO2 DS18x20(4) 1x DS18B20
N/A None(0) GPIO15 CS(D8) GND GND
3V3 3V3 5V N/A
Alles anzeigen
So läuft es erstmal, wobei ich vor einiger Zeit das Pänomen hatte, dass kein Standard Schalter vorhanden war und ich um das Display
an und auszuschalten ein extra Relais konfigurieren musste, dann waren aber 3 Schalter in der Webif
Nungut, ich habe bislang probiert, am GPIO0 und GPIO15 mit entsprechender Konfig Button1(17) den Touchsensor anzuschließen,
was erst gut funktioniert, bei Touch wird das Display aktiviert und über das Script nach 15sec wieder aus gemacht,
dann nach einigen malen, fängt das Relais an zu rattern und nichts geht mehr, sämtlich Konfig ist zurückgesetzt
Sonoff Basic, DisplayMode, DisplayModel, und keine GPIO Zuordnung
Touchbutton Link
vorläufiger Draft Script:
>D
temp=0
adjt=0.5
hum=0
press=0
temp2=0
adjt2=-0.1
p:soll=20.0
pit=0.5
xs=0
ys=0
mo=0
mod=0
min=soll-pit
max=soll+pit
timer=0
dim=0
>B
+>Display
;->DisplayModel 7
;->DisplayMode 0
->DisplayDimmer 50
->displaytext [Bi0z]
>E
mo=Display#Model
mod=Display#Mode
dim=Display#Dimmer
xs=Display#Width
ys=Display#Height
print %xs% %ys% %mo%
>T
temp=BME280#Temperature+adjt
hum=BME280#Humidity
press=BME280#Pressure
temp2=DS18B20#Temperature+adjt2
>S
min=soll-pit
max=soll+pit
if upsecs%10==0{
if temp2>=soll+pit
then
=>power1 0
=>DisplayText [s3l2c1]
=>print %temp2%
endif
if temp2<=soll-pit
then
=>power1 1
=>power2 1
=>DisplayText [s3l2c1] heizen
=>print %temp2%
endif
}
if pwr[1]>0
then
=>DisplayText [s3l2c1] heizen
else
=>DisplayText [s3l2c1]
endif
if upd[soll]>0
then
=>Publish tele/%topic%/SENSOR {"Soll":%1soll%}
=>Publish tele/%topic%/SENSOR {"Ist":%1temp%}
endif
if mo==9{
->displaytext [f1Ci5l2c6T]
->displaytext [f0s3Ci7l2c1] %1temp%~f8C
->displaytext [f2Ci2l3c5]%0hum%
->displaytext [f1Ci2l6c18]%%
->displaytext [f2Ci6l4c3]%0press%
->displaytext [f1Ci6l8c16]hpa
->displaytext [f1Ci3l10c6tS]
}
endif
if mo==7{
->DisplayText [f0s3l1c1] %1temp%~f8C
->DisplayText [f0s1l8c1]%1temp2%~f8C
->DisplayText [f0s1l8c10] %1soll%~f8C
}
endif
if pwr[2]>0{
timer+=1
if timer>=15
then =>power2 0
timer=0
endif
>W
nm(10 30 0.5 soll "Soll")
Temp BME: %1temp%°C
Temp DS: %1temp2%°C
DisplayModel: %0mo%
DisplayMode: %0mod%
DisplayDim: %0dim%
Display X: %0xs% pix
Display Y: %0ys% pix
Min %1min%
Max %1max%
Alles anzeigen
Hat jemand eine Idee dazu, warum der Touchsensor solche Komplikationen auslöst?
Danke
Gruß Jens