esp lua-uart, problem z pozbyciem sie /r/n

  • 10 Odpowiedzi
  • 357 Wyświetleń

0 użytkowników i 1 Gość przegląda ten wątek.

esp lua-uart, problem z pozbyciem sie /r/n
« dnia: Czerwiec 09, 2017, 04:22:38 pm »
Witam
mam urządzenie, podłączone to esp przez uart.
Komunikacja wymaga, by przesyłane dane, komendy, nie było zakończone znakiem /r/n lub /r lub /n
Np wyświetlacz Nextion wymaga zakończenia transmisji znakiem 0xff 0xff 0xff..
Co do wysłania tych znaków to nie problem, ale pobycie się tego graniczy z cudem...
Firmware Nodemcu, język lua..
Wydaj się ze w SDK transmisja uart na sztywno zapisane ma /r/n na końcu bufora.....jak to obejść?

*

Offline Ganz_Conrad

  • * 24
  • 2
    • Zobacz profil
  • Nazwa i wersja ID: ??
Odp: esp lua-uart, problem z pozbyciem sie /r/n
« Odpowiedź #1 dnia: Czerwiec 10, 2017, 05:44:23 pm »
a musisz się bawić w LUA i nodemcu? Nie łatwiej w arduino? Tam chyba koniec linii jest dodawany ręcznie do każdej komendy.
Odp: esp lua-uart, problem z pozbyciem sie /r/n
« Odpowiedź #2 dnia: Czerwiec 11, 2017, 07:49:04 am »
a musisz się bawić w LUA i nodemcu? Nie łatwiej w arduino? Tam chyba koniec linii jest dodawany ręcznie do każdej komendy.

Właśnie jak nie obejdę tego problemu, zrobię w Arduino..
Rozumiem ze w Arduino jest biblioteka wrzucajaca high-level do esp?
Czy wrzuca caly firmware?



*

Offline Ganz_Conrad

  • * 24
  • 2
    • Zobacz profil
  • Nazwa i wersja ID: ??
Odp: esp lua-uart, problem z pozbyciem sie /r/n
« Odpowiedź #3 dnia: Czerwiec 11, 2017, 07:09:23 pm »
nie bawiłem się arduino, tylko jakieś przykłady. Wygląda to dużo lepiej niż LUA, do której zraziłem się przy okazji Fibaro, a w arduino masz C++ (jeśli się nie mylę).
Odp: esp lua-uart, problem z pozbyciem sie /r/n
« Odpowiedź #4 dnia: Czerwiec 11, 2017, 08:31:43 pm »
Ja tez nie, ale esp ma swoj firmware i albo robisz cos wysokopoziomowo np nodemcu i lua, lub od podstaw razem z adk do esp..
Stad pytanie jak to robi arduino..czy tylko hl czy buduje caly firmware i go laduje...
Odp: esp lua-uart, problem z pozbyciem sie /r/n
« Odpowiedź #5 dnia: Czerwiec 11, 2017, 09:06:00 pm »
Właśnie poczytałem, do arduino potrzebujesz uc, Nano lub innego na atmedze..
Ja potrzebuje bezpośrednio na ESp to zrobić, bez pomocy uc.
Jakbym potrzebował zatrudnić uc do tego, nie było by problemu, lepiej to bym napisał w c..

np tak:
https://www.youtube.com/watch?v=K456Cwc252o
ESP + nano

Szukam rozwiązania bez pomocy uc..w lua dałbym rade, ale to /r/n/ ubija mi projekt..

chyba ze się mylę i można wrzucić coś przez arduino bezpośrednio do esp
...


Edit..

Jednak arduino tworzy swoj firmware..;)
Musze to sprawdzic
« Ostatnia zmiana: Czerwiec 12, 2017, 05:48:30 am wysłana przez wchpikus »
*

Offline Ganz_Conrad

  • * 24
  • 2
    • Zobacz profil
  • Nazwa i wersja ID: ??
Odp: esp lua-uart, problem z pozbyciem sie /r/n
« Odpowiedź #6 dnia: Czerwiec 12, 2017, 10:05:51 am »
nie doczytałeś ;-)
Chodzi mi o to, że do programowania ESP potrzebujesz jedynie środowisko Arduino i samo ESP.
W preferencjach SDK dodajesz link do dodatkowych bibliotek zawierających "płytki bazowe", instalujesz bibliotekę do ESP i wybierasz ESP tak jakbyś wybierał płytkę z arduino uno, czy mega. Wybierasz port COM, prędkość. Razem z tym pakietem instalują Ci się przykłady pod ESP. Wybierasz np. Blink - mruganie diodą, klikasz jeden przycisk "kompiluj i programuj" i tada! dioda miga.
ESP podłączasz do kompa albo poprzez dodatkowy konwerter RS232 - usb, albo kupujesz płytkę z wbudowanym. (ta z nodemcu, którą posiadasz powinna działać). Jak będziesz programował z zewnętrznym konwerterem to zwróć uwagę na poziomu napięć : 3V3.
Oczywiście po zaprogramowaniu ESP, tracisz soft komunikujący się poprzez komendy AT, więc warto najpierw zapisać dokładnie jaką wersję softu masz na ESP (AT+GMR), a następnie znaleźć jej binaria w sieci i nauczyć się ładować je do ESP (dodatkowy soft do ładowania).
Musisz się zagłębić w biblioteki pod arduino, bo nie wiem dokładnie które segmenty Flash są programowane przez SDK Arduino, ale sądząc o kompilacji, chyba całość.

Ja też nie doczytałem Twojego postu do końca ;-). Mam nadzieję, że info się przyda.
Odp: esp lua-uart, problem z pozbyciem sie /r/n
« Odpowiedź #7 dnia: Czerwiec 12, 2017, 01:16:36 pm »
Hej
nie musisz mi dokładnie tłumaczyć jak załadować coś do esp, to nie problem.
Po Prostu nie wiedziałem ze parduno samo ląduje cały firmware z nasza "praca"...
Zobaczę na ile elastyczny jest ten arduino, potrzebuje postawić serwer tcp i klienta tcp,bridge na uart..ciekawe czy to potrafi..



Odp: esp lua-uart, problem z pozbyciem sie /r/n
« Odpowiedź #8 dnia: Czerwiec 13, 2017, 05:55:32 pm »
Jednak Arduino...
Poradziłem sobie tak:

byte ter[4] = {0x22, 0xff, 0xff, 0xff};

void send_nextion( String location,String data){
  Serial.print(location);//nextion
  Serial.print("=");
  Serial.write(0x22);
  Serial.print(data);
  //Serial.write(0x22);
  Serial.write(ter, 4);
}

send_nextion("t0.txt","Connecting");


teraz czas na serwer i klienta tcpip..



*

Offline zen

  • *** 132
  • 3
    • Zobacz profil
  • Nazwa i wersja ID: Domoticz / OpenHAB
Odp: esp lua-uart, problem z pozbyciem sie /r/n
« Odpowiedź #9 dnia: Czerwiec 14, 2017, 01:53:29 pm »
Hej
nie musisz mi dokładnie tłumaczyć jak załadować coś do esp, to nie problem.
Po Prostu nie wiedziałem ze parduno samo ląduje cały firmware z nasza "praca"...
Zobaczę na ile elastyczny jest ten arduino, potrzebuje postawić serwer tcp i klienta tcp,bridge na uart..ciekawe czy to potrafi..

Oczywiście, do wszystkiego masz biblioteki.
Odp: esp lua-uart, problem z pozbyciem sie /r/n
« Odpowiedź #10 dnia: Czerwiec 19, 2017, 01:47:29 pm »
Niestety,jedno dziala,drugie nie..
W arduino ladnie dziala obsluga uart i buforow,niestety timery leza..
Niby jest ok,ale uruchomiony timer softowy po uruchonieniu stacka wifi pada...zasobow brak?
Chce odpalic klienta ip i serwer, nasluchujacy na tym samym porcie,to dziala.
Dodaje wysylanie danych po ip, jeszcze zyje.
Dodaje obsluge wysylania danych po uart...juz lekka zadyszka,dodaje timer,timer przy dzialajacym wifi jest gdzies na koncu kolejki..odpalenie odbierania danych przez uart zabija wszystko;)

Jest jakis sposob,rozumiem ze przerwania raczej nie wchodza w gre ( zreszta na przerwaniach latwo uwalic caly stack ip)na timer i uarta w tym esp?