ArduinoIDE kód MQTT to Wemos to MXA7219

Processing/Wiring (illetve C) nyelvű programozási fogások, tippek. (AVR-Duino, Arduino, EthDuino, Diecimila, Severino, Nano, LilyPad)
nooy
Újonc
Újonc
Hozzászólások: 1
Csatlakozott: 2019. március 26. kedd, 13:21

ArduinoIDE kód MQTT to Wemos to MXA7219

HozzászólásSzerző: nooy » 2019. március 26. kedd, 14:09

Sziasztok,

ArduinoIDE-ben írt kódhoz szeretnék segítséget kérni. Jobb magyar fórumot nem találtam ahol leírhatnám a problémát, hátha valaki foglalkozik itt hasonlóval is.
Az otthoni projekt, hogy egy kijelzőt szeretnék készíteni amire MQTT-ből pár karakteres szöveget/számokat ki tudok íratni, wemos mini D1 (wifi) és MAX7219 alapokon. Túrtam a netet, és találtam erre egy jó alapot. Egy MD_Parola nevű könyvtárat mintakóddal amit PubSubClient-el egészítettem ki és egy kicsit módosítva lett a kód http része. Igy egy tetszőleges böngészőből a wemos címére küldött URL-be írt paramétereknek megfelelően kiírja az URL-be megadott szöveget.
A probléma ott kezdődött, hogy egy openhab2 MQTT szerver-ről szerettem volna ezt kivitelezni HTTP binding-el, ami nem működött, mert az arduinos kód jquery-t használ amit gondolom a kliens oldali böngésző dolgoz fel ami itt nincs.
A következő ötlet az volt, hogy a kódba építsünk bele MQTT funkciót. Ez működik is, bejelentkezik a megadott csatornába és a wemos soros portján meg is jelenik amit MQTT-n ráküldök.
És itt akadtam el a kódban.
1. Az eredeti ötletben azt szerettem volna, hogy MQTT-n elküldve az URL-ben szereplő paramétereket feldolgozza és mintha böngészőből küldtem volna rá, kiírja a kijelzőn azt amit akarok.
2. Vagy egyszerűsítve az esetet csak azt szerettem volna második körben, hogy egyszerűen írja ki a kijelzőre amit kap az MQTT-n keresztül.

Az utóbbi részben működik/működött csak valami nem volt kerek a kóddal, mert ha túl hosszú szöveget küldtem rá, akkor mintha a kódrészletek is megjelentek volna a kiírt szövegben. PL mqtt-n ráküldtem, hogy 12345 és az jelent meg, hogy "12345ESP8266Client". Ilyesmire kell gondolni. Ez a szöveg "ESP8266Client" az MQTT-s kapcsolat beállításához használt paraméter. Vagy ha még hosszabbat küldtem rá, akkor meg egy másik kódrészlet, mintha buffer overflow lenne. :)

A kódot is mellékelem:
Parola_Scrolling_ESP8266_v4_mqttv4_2019.ino



Köszönöm ha valaki ránézne!
Norbi
Nincs meg a kellő jogosultságod a hozzászóláshoz csatolt állományok megtekintéséhez.

Vissza: “Arduino / C-nyelvű programozás (AVR-Duino, EthDuino, Arduino, Diecimila)”

Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 2 vendég