======Tasmota======
De Sonoff TMH316D werkt met Tasmota, maar het display werkt dan niet meer.
De instellingen gaan als volgt:
=====Installatie=====
Gebruik een 3.3V FTDI interface!\\
Sluit als volgt aan:
- GND=GND
- 3.3=3.3
- RX=RX
- TX=TX
Dan bij inpluggen van USB 5-8 seconden de knop indrukken\\
Dan flashen via https://tasmota.github.io/install/
Ik heb gekozen voor de standaard Tasmota
=====Configuratie=====
Omdat ik het display niet nodig heb en vooral de temperatuur uit wil lezen heb ik het volgende gedaan:
in Configuration -> Other en dan bij Template:
{"NAME":"Sonoff THR316D","GPIO":[32,0,0,0,225,9280,0,0,0,321,0,576,320,9184,9216,0,0,224,0,9248,0,1,0,3840,0,0,0,0,0,0,0,0,0,0,0,0],"FLAG":0,"BASE":1}
Dan Activate
Let op, dan verschijnen twee relais, dat klopt niet.
Onder Configuration en Template kun je bij GPIO4 relay2 uitschakelen en op None zetten.
====Temperatuursensor====
===Waterdichte temperatuursensor (WTS01)===
- Zet GPIO25 op SerBr RX
- Controleer of GPIO27 op Output Hi staat
- Save
- Ga naar Tools -> Console
- Voer in commando SSerialMode 3
- Dan regel aanmaken voor na herstart:
- Rule1 on system#init do Backlog SSerialMode 3; DspLine1 [WTS01#Temperature]; DspLine2 [WTS01#Temperature] endon
- Rule1 1
- Daarna herstarten met bijv. Restart 1
https://github.com/arendst/Tasmota/discussions/24606
===Zwarte temperatuur en luchtvochtigheidssensor (THS01)===
- Zet GPIO25 op SI7021
- Controleer of GPIO27 op Output Hi staat
- Save
- Ga naar Tools -> Console
- Voer in commando DhtDelay 500,40
- Dan regel aanmaken voor na herstart:
- Rule1 ON System#Init DO DhtDelay 500,40 ENDON
- Rule1 1
- Daarna herstarten met bijv. Restart 1
====== Sonoff THR316D uitlezen via Tasmota HTTP API ======
De Sonoff THR316D is geflasht met Tasmota32 en kan lokaal via de HTTP API worden uitgelezen.
===== Basis =====
De Tasmota HTTP API gebruikt dit formaat:
http:///cm?cmnd=
Voor dit device:
http://192.168.1.214/cm?cmnd=Status%2010
Hierbij betekent ''Status%2010'' hetzelfde als het Tasmota-consolecommando:
Status 10
===== Sensorwaarden uitlezen =====
Gebruik voor temperatuur- en vochtigheidswaarden:
http://192.168.1.214/cm?cmnd=Status%2010
Voorbeeld met curl:
curl -s "http://192.168.1.214/cm?cmnd=Status%2010"
De response is JSON. Afhankelijk van de aangesloten sensor staat de waarde onder bijvoorbeeld ''SI7021'', ''WTS01'' of een andere sensornaam.
Voorbeeldresponse:
{
"StatusSNS": {
"Time": "2026-05-24T12:00:00",
"SI7021": {
"Temperature": 21.4,
"Humidity": 48.0,
"DewPoint": 10.1
},
"TempUnit": "C"
}
}
Alleen de temperatuur uitlezen met ''jq'':
curl -s "http://192.168.1.214/cm?cmnd=Status%2010" | jq '.StatusSNS.SI7021.Temperature'
Alleen de luchtvochtigheid:
curl -s "http://192.168.1.214/cm?cmnd=Status%2010" | jq '.StatusSNS.SI7021.Humidity'
Bij een WTS01-sensor eerst controleren hoe de sensor in de JSON heet:
curl -s "http://192.168.1.214/cm?cmnd=Status%2010" | jq '.StatusSNS'
===== Relais uitlezen en schakelen =====
Status van het relais:
http://192.168.1.214/cm?cmnd=Power
Relais aan:
http://192.168.1.214/cm?cmnd=Power%20On
Relais uit:
http://192.168.1.214/cm?cmnd=Power%20Off
Relais togglen:
http://192.168.1.214/cm?cmnd=Power%20Toggle
===== Beveiliging =====
Als de Tasmota webinterface met gebruikersnaam en wachtwoord is beveiligd:
http://192.168.1.214/cm?user=&password=&cmnd=Status%2010
Let op: dit is HTTP zonder TLS. Gebruik dit alleen op een vertrouwd intern netwerk of IoT-VLAN.
===== Opmerking =====
Voor periodiek uitlezen via HTTP is een interval van 60 tot 300 seconden meestal voldoende. Voor continue integratie is MQTT netter, omdat Tasmota dan zelf volgens ''TelePeriod'' de sensorwaarden publiceert.