Closed rosiste closed 2 years ago
Hi Jaroslave, You are right, the MQTT authentication is currently missing and it's not a problem to add it. It's a must anywhere else than local networks. I should be able to do it next week. Please let me know if you wish to do it by yourself.
Ahoj Jaro,
diky za dotaz. Ja to pouzivam jen na lokalni siti. Authentikaci rad pridam, ta MQTT knihovna/klient ji urcite podporuje. Kdybys to chtel udelat sam, tak taky neni problem. Github normalne nepouzivam, chtel jsem si ho jen vyzkouset na jednoduchym projektu. Jsetli jsou na merge requestly treba nejaky prava klidne ti to nastavim.
Mimochodem pouzivas neco od Teca nebo stary Inels?
Mej se,
Ondra
On Mon, Jul 6, 2020 at 12:05 AM Jaroslav Vacha notifications@github.com wrote:
Hi Ondreji, do you plan implement at least basic username/password authentication to MQTT server? Thanks Jaroslav
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/ocervinka/plccoms-mqtt-bridge/issues/7, or unsubscribe https://github.com/notifications/unsubscribe-auth/AC6PY7BTFG6VRD3SMHDOGPTR2EBMJANCNFSM4ORCVZSQ .
Ahoj Ondro, postavil jsem si dum jeste na starem Inelsu, nez se raozesli s Tecem. Jmeno a heslo by tam asi melo byt. I kdyz to mam jen na lokalni siti, nejaka minimalni ochrana by tam asi mela byt. Minimalne pred detmi. ;-) S Gitem taky zacinam, ale muzu to zkusit. Minuly tyden jsem vytvoril funkcni docker s plccoms (rosiste/plccoms:latest, ale jeste je treba dopsat dokumentaci), ktery mi bezi na x86 Synology (XPenology), tak si muzu zase rozsirit obzory :-) Trochu mi to v HA dela neplechu bez toho hesla. Jinak ten tvuj bridge jeste stale udolavam. Promenne nacte, k topikum se zaregistruje, ale od MQ bezicim na HA se pripoji a po case zase odpoji a na prikazy nereaguje.
Ahoj Jaro,
Taky stale pouzivam puvodni jednotky Inels (vcetne te centralni) a pak mam nekolik jednotek (hlavne mereni) od Teca. Uvazoval jsem o vymene centralni jednotky. Libi se mi jejich nova Foxtrot CP-2090, ale asi jeste pockam, dokud ta stara funguje. Inels mi ji pred peti roky vymenil, kdyz se po cca 6-7 letech provozu zacala restartovat pri bootovani.
Nevim co muze byt za odpojovanim MQTT clienta v plccoms-mqtt-bridge. MQTT client se obecne odpoji, kdyz se k MQTT brokeru pripoji jiny klient (nebo treba omylem druha instrance stejneho typu klienta) s totoznym client id. Mam ale zkusenosti jen s Mosquitto MQTT. Trochu jsem zkousel ten MQTT broker, ktery je soucasti Home Assistenta, ale ten nejde moc dobre konfigurovat a navic je deprecated. Tak doufam, ze ta pridana authentikace MQTT klienta tomuto pomuze. Pred tim nez se klient odpoji, funguje komunikace aspon jednim smerem (z PLC do HA), tzn. vidis stavy z PLC v HA?
Souhlas, nove Teco jednotky jsou opravdu sikovne resene (napriklad vestaveny PLCComS) a taky po nich s kamosem pokukujeme (jede take na Inels). Ale musel bych asi komplet predelat alarmy (Teco nezna Inels klavesnice), takze se mi do toho moc nechce. V inels CU odchazeji kondiky v napajeci casti - restartovani pri bootovani, mel jsem ji na oprave asi 2x, naposledy na tuhle zavadu letos (mam inels 10 rok). Diky za tip s Mosquitem. Ten co je soucasti HA neni verzemi moc pozdadu, ale je pravda, ze moc konfigurovat nejde. Pustil jsem ho v dockeru na HA samostatne a ted mi integrace PCComS+Bridge beha skvele obema smery! Pred tim to hazelo exception pri topic subscribe, takze chodili jen notifikace smerem k HA, prikazy ne. Takze diky, vyhledove se podivam, co s tou autentikaci. Koukal jsem do kodu a nemel by to byt velky zasah.
Díky za prima plugin k PLCComS, něco takového jsem vyhlížel už nějakou dobu. Hraju si s RPi4, které jsem původně pořídil pro Spotify Connect, ale pomalu se využití rozšiřuje. Foxtrot už mám asi 5 let, ale zatím stále jen pomalu rozšiřuju funkce (prozatím ovládání topení, ekviterma, nějaká ta světla a napojení na Paradox ústřednu. GUI jsem zatím řešil přes WebMaker, ale není to ono, HA jde celkem asi dobře jen naklikat a pojede to, na Foxtrotu si nechám základ pro krizové situace. Protože HA Mosquitto MQTT doplněk nechtěl číst data bez jména/hesla, tak jsem toto přidal do své implementace. Plus ještě při inicializaci EN: na PLCComS jsem přidal pro variables parametr "delta". Např. pro teploty mi to přijde vhodné, jinak mi je posílá téměř každou sekundu. Pokud se ještě naučím pracovat tady s githubem, nějak bych sem snad dodal ty mé úpravy.
Ahoj,
Jsem rad, ze se ti to hodi. Pouzivam to spolu s HA uz asi pul roku. Byl tam jen jeden problem se starsi verzi HA, ktera se nemumela znovu pripojit k externimu MQTT serveru https://github.com/home-assistant/core/issues/31057 . U me se to projevovalo po restartu domaciho K8s serveru, kdy HA startoval rychleji nez Mosquitto a proto se nepripojil. Musel jsem start HA trochu pozdrzet, ale ted uz to opravili https://github.com/home-assistant/core/pull/34556, takze se s MQTT serverem vzdy spoji a to i v pripade kdyz by se MQTT server nahodou restartoval. Jestli jsem dobre pochopil, ty stejne pozivas ten HA interni MQTT srever.
WebMaker s HA nemuzu srovnat, protoze jsem ho zkousel pouzivat jen jednou pred cca 10 lety, ale Inels/Teco jsem pak nakonec ovladal jen pres HW prvky a par veci specifickym SW pres PCComS. Pocitam ze WebMaker se za tu dobu posunul, nicmene HA spravuje komunita a ten pocet systemovych integraci je temer nekonecny.
Ano, UI prvky jde v HA pekne "naklikat" ale taky je mozne UI editovat jako YAML. Ja pouzivam oba pristupy podle toho co je v danou chvili vyhodnejsi. Jejich prvni, defaultni dashboard je v modu, kdy je spravovan automaticky HA a vsechny nove zarizeni jako senzory, vypinace atd, se tam automaticky pridavaji. Kdyz tento dasboard zacnes editovat rucne, HA ho uz nemuze updatovat. Doporucuji si jeden dashboard s automatickym updatem ponechat uz jen kvuli testovani a editovat jine (nove pridane dashboardy).
HA ale neni jen UI. Zarizeni (senzory a aktory) se pro kazdy typ integrace (napr MQTT) musi definovat v configuration.yaml, ale to uz mas urcite zvladnute. HA podporuje u MQTT integrace i discovery mod pomoci specialnich topicu. Nas plccoms-mqtt-bridge by bylo mozne rozsirit tak, aby zarizeni definovane ve sve konfiguraci takto oznamil HA. Pak by jejich konfigurace v HA uplne odpadla. V tuhle chvili mi ale manualni konfigurace MQTT zarizeni v HA vubec nevadi.
MQTT authentication se urcite hodi. To byl taky duvod, Jara otevrel tuhle issue :) Delta parametr ma taky smysl. Zvlast treba pri pouziti cloudoveho MQTT serveru, kde navic muzou chtit platit za data. Pro zpetnou kompatabilitu je ale treba, aby ten parameter byl optional, tzn, pri jeho absenci by se data data posilaly vzdy. Klidne ty zmeny muzes pushnout a vytvorit Pull request at na to muzem mrknout.
Ondra
Ahoj, jakym zpusobem prosim te funguje ten parametr "delta" od AcMetelky ? Resim to prave u teplotnich cidel a at jej nastavim na jakoukoliv hodnotu, tak se zpravy porad posilaji.
Pak se mi jeste pri spusteni tohoto "plccoms-mqtt-bridge" nejak zblazni cele rizeni iNELSu a prestane mi fungovat osvetleni pres vypinace na zdi atp. Aby to zase fungovalo, musim restartovat RPi, na kterem bezi PLCComS a "plccoms-mqtt-bridge". Diky za rady Marcel
Ahoj, visí to na mě, sice tu o změnách píšeme, ale ještě nejsou mergnuté v masteru. Musím to otestovat na své implementaci, o co mě Ondra prosil, jen jsem se k tomu ještě nedostal. Pokusím se více zezadu kopat, abych to dodělal a potvrdil změny. S Inels neporadím, nemám, jedu čistě Foxtrot a tímto napojení na Homeassistant na RPi. Jindra
Ahoj @Orlando522 ,
delta
je nepovinny parametr, muze byt pridan zvlast pro kazdou skupinu promennych (var-mapping) v konfiguraci. Ja jsem to jeste nezkusil :disappointed: @AcMetelka ma trochu jinou verzi, ale predpokladam, ze tam delta byla funkcni? Cele by to melo fungovat takto:
Priklad:
var-mapping:
- var: "TEMP_(.+)"
state-topic: "home/temperature/{0}"
var-delta: 0.5
Oprava 6.2.2022: delta: 0.5 var-delta: 0.5
Vsechny promenne z PLCComS
zacinajici na TEMP_
budou preposlany do MQTT topic home/temperature/{jmeno_plc_promenne_bez_predpony_RELAY_}
.
Takhle to vzdy fungovalo. Ted navic pri zadani parametru delta
var-delta
plccoms-mqtt-bridge
pozada PLCComS
, aby zasilal nove hodnoty jen pri zmene vetsi nez 0.5 (mozna vetsi nebo rovno - viz specifikace PLCComS
).
Muze to byt dobre pro cidla, ktere posilaji zbytecne moc dat. Snizi to MQTT traffic (pro kohokoli kdo pouziva ten topic) a i traffic mezi plccoms-mqtt-bridge
a PLCComS
. Zalezi asi na typu cidel a pouziti sebranych dat, na tom jestli nekdo plati za cloud MQTT, atd. Ja bych to u me pouzil asi jen pro jedno konkretni cidlo (termoclanek), ktere nepretrzite sype 5-10 hodnot za vterinu. Jinak trafic na lokalni siti mne tak moc nevadi, hodnoty do Prometheus ukladam stejne jen jednou za 15 vterin.
Taky netusim co se u tebe deje s iNELS. Muzes zkusit
plccoms-mqtt-bridge
cmd-topic
, ze ktereho bude plccoms-mqtt-bridge
cist a zapisovat do PLC.delta
v pripade ze tam mame chybu. Pouzij verzi z master branche (PR https://github.com/ocervinka/plccoms-mqtt-bridge/pull/12 jeste neni v master).PLCComS
. Podporu delty myslim starsi veze nemaji.PLCComS
. Pri zmene programu v PLC se muzi vygenerovat novy scada_export.pub
, ktery PLCComS
pouziva.Ahoj, diky za reakci. Pokud zacnu postupne a pouziji verzi od @AcMetelka a zprovoznim si pouze teplotni cidla, coz mam v konfiguraci nasledovne:
var-mapping:
- var: "TEPLOMER_(.*)"
state-topic: "home/teplota/{1}"
delta: 0.5
tak se mi neustale posila nasledujici: Coz znamena, ze parametr delta vubec nefunguje.
Ahoj, v config.yaml je potřeba dle src kódu uvést var-delta. V Readme jsem to upravil. Zároveň jsem to teď i úspěšně testnul na své implementaci s RPi.
@AcMetelka moc diky presne v tom byl zadrhel.Ted to fachci skvele.
Thanks both for fixing this.
Hi Ondreji, do you plan implement at least basic username/password authentication to MQTT server? Thanks Jaroslav