====== MitsuRunner & IoT-GURU ======
IoT-Guru on maksuton pilvipalvelu, jonne Mitsurunner oletusarvoisesti raportoi MQTT:llä tilatietonsa (ulkolämpö, kennolämpö, deltaT, jne). Voit nettiselaimella tarkastella kunkin raportoidun parametrin nykytilaa ja historia-kuvaajaa. Iotguru ei ole pakollinen mutta erittäin suositeltavaa, sillä tuota kautta voit seurata lämpöpumppusi toimintaa ja varmistaa että kennon sulatus toimii suunnitellulla tavalla.
Alla ohjeet raportoinnin ja seurannan aktivoimiseen IoT-Gurussa.
(IoT-Gurun sijasta voit käyttää raportointiin jotakin muuta mqtt-palvelinta, mutta niille ei ohjeita täällä.)
===== Setup:n tekeminen IoT-GURUun =====
Mene osoitteeseen https://iotguru.live/
Luo itsellesi Account painamalla ylhäältä Sign up.
* tuon alle DEVICE esim. "wemos"
* tuon alle NODE esim. "mitsu"
* tuon alle tarvittava määrä FIELDejä, esim. "ulko", "kenno", "delta"
* Mitsurunner toiminnan seuraamista auttaa jos määrittelet myös FIELDit "rssi", "outerror", "heatexcherror","state"
FIELD-välilehden hellakuvatusti
p-osiosta kohdasta GENERIC MQTT TOPIC löydät tyyppiä
"pub/jGwFuf8I***N2hAddcR6w/p5NVA6zTB***hNCQMvoR7A/itRVfK2***O-yHJgNOcR7A/ulko"
olevat määritteet, jotka voit kopioida platform.yaml-tiedostoon al
===== IoT-GURU asetusten määrittäminen Mitsurunneriin =====
**Secrets.yaml**-tiedostssa valitse IoT_Guru MQTT-serveri käyttöön poistamalla #-merkit IoT-Guru MQTT määritysrivien alusta ja päivitä MQTT username, client_id ja password
mqtt:
broker: iotguru.cloud <== IoT-GURUn osoite
id: mqtt_client
username: kopio IoT-GURU Your Account -sivulta löytyvä SHORT IDENTIFIER
client_id: kopioi IoT-GURU DEVICE/Device Details -sivulta löytyvä DEVICE SHORT IDENTIFIER
password: kopioi IoT-GURU DEVICE/Device Details -sivulta löytyvä DEVICE KEY
** Secrets.yaml**-tiedostossa voit myös ottaa käyttöön web_serverin poistamalla #-merkit rivien web_server: ja port: 80 edestä. Tällöin voit nähdä Mitsurunnerin tilan kirjautumalla selaimella Mitsurunnerin IP_osoitteeseen.
**Platform_wemos.yaml / Platform_elite.yaml** tiedostoon päivitä MQTT-topic osuus kopioimalla IoT-GURU-sivuilta käyttämäsi MQTT-topicit. Jätä käyttämättömät topicit muuttamatta.
# MQTT topics. These are inside single quotes
topic_heatexchanger: 'IoT-GURU DEVICE/NODE/FIELD/Help-välilehdeltä GENERIC MQTT TOPIC string tähän
topic_outdoor: 'IoT-GURU DEVICE/NODE/FIELD/Help-välilehdeltä GENERIC MQTT TOPIC string tähän
topic_delta: 'IoT-GURU DEVICE/NODE/FIELD/Help-välilehdeltä GENERIC MQTT TOPIC string tähän
topic_rssi 'IoT-GURU DEVICE/NODE/FIELD/Help-välilehdeltä GENERIC MQTT TOPIC string tähän:
topic_outdoor_errors: 'IoT-GURU DEVICE/NODE/FIELD/Help-välilehdeltä GENERIC MQTT TOPIC string tähän
topic_exchanger_errors: 'IoT-GURU DEVICE/NODE/FIELD/Help-välilehdeltä GENERIC MQTT TOPIC string tähän
topic_outdoor_errors: 'IoT-GURU DEVICE/NODE/FIELD/Help-välilehdeltä GENERIC MQTT TOPIC string tähän
# MQTT topics. Notice that these are inside both single and double quotes:
topic_outdoor_raw: '"pub/uuu/ccc/nnn/outdoor_raw_temperature"'
topic_state: 'IoT-GURU DEVICE/NODE/FIELD/Help-välilehdeltä GENERIC MQTT TOPIC string tähän
topic_excess_timer_state: '"pub/uuu/ccc/nnn/excess_timer_state"'
=> ovat siis muotoa: /uuu/ccc/nnn/field-name/ , jossa uuu = user_id, ccc = client_id, nnn = node_short_identifier
esim:
topic_heatexcharger: 'pub/jGwFuf8I4spe***AddcR6w/p5NVA6zTBfP***CQMvoR7A/itRVfK2hvdO-yHJgNOcR7A/kenno'
topic_outdoor: 'pub/jGwFuf8I4spe***AddcR6w/p5NVA6zTBfP***CQMvoR7A/itRVfK2hvdO-yHJgNOcR7A/ulko'
===== IoT-GURUn testaaminen =====
NOTE: IoT-Guru ei tue MQTT_trace-logia (=trace logi näkyy ainoastaan USB-yhteydellä). Turhan kuormituksen välttämiseski on MQTT-login lähetys poistettu. Ohjelma kannatta kääntää komennolla
esphome run --no-logs mitsurunner.yaml
Tällöin flashayksen jälkeen ei ruudulle tule Python-poikkeamailmoituksia.
=> Käännä ja lähetä Mirsurunner-ohjelma laitteellesi.
* jos laite on liitetty USB-yhteydellä voit trace-logsta nähdä MQTT-yhteyden tilan
* jos olet ottanut WEB-serverin käyttöön voit kirjautua selaimella Mitsurunnerin IP-osoitteeseen ja nähdä sieltä MQTT-yhteyden tilan
* tarkista IoT-Gurusta että määrittelemäsi Topicit päivittyvät
===== Konfigurointi useammalle loggerille (Mitsurunnerille) =====
Mitsurunner ohjeissa on neuvottu IoT-Guru-konfigurointi ja IoT-Guru-parametrien määrittely platform.yaml-koodiin. Ohje ei kuitenkaan kerro mitä pitää tehdä jos aiot laittaa useampia Mitsurunnereita (tai loggereita tai mqtt_client'eja) lähettämään/pyytämään tietoja IoT-Guruun.
On huomioitava että mqtt-protokolla vaatii jokaiselle yhteyttä muodostavalle laitteelle oman yksilöllisen tunnuksen ==> Jokaiselle IoT-Guruun liitettävälle laitteelle on luotava IoT-Gurussa oma "Device" ja alla mainitut IoT-Gurun parametrit tulee kopioida IoT-Gurusta liitettävälle laitteelle.
* user short identifier ==> User name
* device short identifier ==> Client_id
* device key ==> Password
Raportoitavat kohteet määritetään IoT-Gurussa "Device"/"Node"/"Field" -rakenteilla. Mitsurunner-ohjeessa (yksi Mitsurunner) on neuvottu rakenne:
Device: Mitsurunner1
..Node: Alakerta
....Field: Delta
....Field: Ulkolämpö
.........
Usemman laitteen tapauksessa täytyy jokaiselle laitteele määritellä oma "Device" IoT-Guruun:
Device: Mitsurunner2
..Node: Yläkerta
....Field: Delta
....Field: Ulkolämpö
.........
(
Device: Logger1:
..Node: Kylpyhuone
....Field: Lämpö
....Field: Kosteus
)
IoT-Guru sallii raporttien lähettämisen myös toiselle "Device":lle. Näin ollen IoT-Guru-rakenne voidaan tehdä myös niin että yhden "Device":n alle ei määritellä mitään ja kaikki raportointi tehdään toiselle "Device":lle - graafien selaaminen vaatii tällöin vähemmän klikkauksia.
Device: Mitsurunner1
Device: Mitsurunner2
..Node: Alakerta
....Field: Delta
....Field: Ulkolämpö
.......
..Node: Yläkerta
....Field: Delta
....Field: Ulkolämpö
....