Valdymas naudojant HTTP requestus galimas tik su šiais įrenginiais: BASICR3, RFR3, MINI.
Tam, kad, būtų galima valdyti Sonoff jungiklį naudojant HTTP requestus, būtina įjungti DIY Mode (SONOFF DIY Mode Overview).
Pagal aprašymą, tai turėtų būti atliekama šiais žingsniais:
Su įrenginiais, kurie šiuo metu nėra palaikomi, DIY rėžimo įjungti nepavyksta:
Buvo bandyta su Sonoff S26 ir Sonoff TH16 - įrenginiai sukuria Access pointą, bet jungiantis adresu http://10.10.7.1/, gaunamas HTTP timeout, nepaisant to, kad HTTP(80) portas randamas kaip atviras:
.
Galimi keli Sonoff switcho su tasmotos firmware valdymo būdai:
Tasmota įjungiama ir išjungiama naudojantis tokiais HTTP requestais:
Paprasčiausias MQTT brokeris gali veikti ant raspberry pi. Jo veikimui reikia installiuoti mosquitto package:
sudo apt-get install mosquitto mosquitto-clients sudo systemctl enable mosquitto
Trys pagrindinės MQTT žinutės tasmotos valdymui:
# Get status
pub.single("cmnd/tasmota_1/Power", hostname=host)
get_result("stat/tasmota_1/POWER", host)
# Power on using MQTT
pub.single("cmnd/tasmota_1/Power", "on", hostname=host)
get_result("stat/tasmota_1/POWER", host)
# Power off using MQTT
pub.single("cmnd/tasmota_1/Power", "off", hostname=host)
get_result("stat/tasmota_1/POWER", host)
import asyncio
from tasmotadevicecontroller import TasmotaDevice
from tasmotadevicecontroller import tasmota_types as t
async def main():
device = await TasmotaDevice.connect('192.168.0.101')
setResult = await device.setPower(t.PowerType.TOGGLE)
loop = asyncio.get_event_loop()
loop.run_until_complete(main())