Arduino Polska Forum
LoRa 433 - Wersja do druku

+- Arduino Polska Forum (https://forum.arduinopolska.pl)
+-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino)
+--- Dział: Sieciowe Protokoły i Urządzenia (https://forum.arduinopolska.pl/dzial-sieciowe-protoko%C5%82y-i-urz%C4%85dzenia)
+--- Wątek: LoRa 433 (/watek-lora-433)

Strony: 1 2


LoRa 433 - Alberto - 09-11-2020

Cześć,
Występuje z problemem, którego nie mogę przeskoczyć podczas mojej nauki z Arduino, z którym zacząłem bawić się nie dawno i porwałem się na komunikację radiową LoRa.
Na początku chciałem zgodnie z jakimś łatwym poradnikiem internetowym zrealizować przesłanie wiadomości z Arduino Uno, na drugie Uno i wyświetlenie jej w porcie szeregowym. Znalazłem szybko kilka poradników, ale postanowiłem przetestować ten, który wydawał mi się najprostszy. Opiszę jak działa mój kod:
Po wgraniu kodów na obie płytki, na dwóch niezależnych komputerach uruchomiłem w obu porty szeregowe. W odbiorniku wysłałem byle jaki znak, żeby zainicjować działanie programu. W monitorze UART zaczęło wpisywać tylko "Odebrałem: ". I tu jest problem. Niestety nie potrafię przesłać najprostszej wiadomości z jednej płytki UNO, na drugą.


Dodaję link do kodu mojego odbiornika i nadajnika. Dodam też link do poradnika, zgodnie z którym próbowałem zrealizować projekt. Jeżeli ktoś mógłby rzucić okiem, byłbym bardzo wdzięczny.

Co do urządzeń, które wykorzystuje:
2x Arduino Uno
2x LoRa E32 433T20D

https://www.youtube.com/watch?v=wYjALYK7pqU – poradnik
https://pastebin.pl/view/b4a2f087 - nadajnik
https://pastebin.pl/view/225f3ae1 - odbiornik


RE: LoRa 433 - Jarewa0606 - 09-11-2020

Bo ci się nie chce dlatego nie potrafisz, pierw kursy przerób https://forbot.pl/blog/kurs-arduino-uart-komunikacja-z-komputerem-pc-zmienne-id3836


RE: LoRa 433 - Alberto - 09-11-2020

Przerabiałem ten kurs z forbota. Sam UART działa mi przecież tak jak powinien. Dane które chce wysłać wyświetlają się, a sposób odbioru wydaje się działać, ale nie zawiera żadnych wartości. Uprościłem kod zostawiając tylko wysyłanie wiadomości na sztywno. Niestety dalej jest dokładnie tak samo. W UART nadajnika spamuje ładnie tekst. W UART odbiornika spamuje "Odebrałem: ". Natomiast zmienna input która ma być odczytana z loraSerial się nie pojawia. Nie wiem, czy czegoś tutaj brakuje, bo zasadniczo te kilka linijek wydaje się być ubogie i niewystarczające, ale z tego co rozumiem poradnik, powinien umożliwić przesłanie i odbiór wiadomości.

Kod po uproszczeniu:
https://pastebin.pl/view/cfa3f4e3 - nadajnik
https://pastebin.pl/view/e6f51378 - odbiornik

Prościej się już raczej nie da, ale ciągle nie wiem gdzie jest problem.


RE: LoRa 433 - Jarewa0606 - 09-11-2020

No to widocznie nic nie zrozumiałeś przerabiaj aż do skutku......


RE: LoRa 433 - Robson Kerman - 10-11-2020

A nie próbowałeś wykorzystać biblioteki EBYTE.h?


RE: LoRa 433 - Jarewa0606 - 10-11-2020

A co mu po bibliotekach jak on nie rozumie podstawowej komunikacji UART


RE: LoRa 433 - Alberto - 11-11-2020

Bibliotekę już dodałem, ale w tym podstawowym wariancie poradnika jej funkcje ni są za bardzo wykorzystywane.

Jarewa0606

A co do moich umiejętności i zrozumienia UARTu. Może i nie są wielkie i czegoś nie rozumiem, ale pisaniem takich tekstów nic nie wnosisz do wątku, bo nie pomagasz mi tym w żaden sposób.


RE: LoRa 433 - kaczakat - 11-11-2020

Pomaga, ale nie skorzystasz jak nie zrozumiesz. Zastanów się który UART do czego służy (używasz dwóch, sprzętowego i softowego), co gdzie wysyłasz i jaki to ma sens. Do testów nie potrzebujesz modułu LORA, możesz podłączyć jakiś konwerter UART-USB pod piny 2/3 i na razie ogarnąć sam UART. Jak potrzebujesz dwóch UART to lepiej użyj Arduino z dwoma sprzętowymi - MICRO/LEONARDO gdy tylko jeden zewnętrzny (ten do USB jest na natywnym USB), MEGA gdy ma być więcej zewnętrznych.


RE: LoRa 433 - Alberto - 11-11-2020

Wykonałem właśnie połączenie dwóch Arduino Uno przez porty szeregowe i przesłałem między nimi dane. Zasadniczo nasuwa mi się myśl odnośnie RX i TX. W przypadku gdy wykorzystuje moduł LoRa podłączam piny RX i TX modułu do przykładowo 2 i 3 na Uno. Wtedy RX i TX LoRa z drugiej strony muszą być odwrotnie? Do 3 i 2? Trochę tego nie rozumiem.

Wykorzystałem już kilka gotowych projektów. Przesłanie danych nie działa. Nabieram teorii że być może któryś moduł jest uszkodzony.


RE: LoRa 433 - kaczakat - 11-11-2020

Jest tylko jedno prawidłowe podłączanie: TX-RX. PIN TX można sobie opisać, że to TX, transmiter, można sobie tu też nabazgrać RX, że trzeba tu podłączyć RX z innego odbiornika. Tego drugiego sposobu oznaczania się nie stosuje. Jak widzisz linię TX-RX to dla jednej strony kabelka/ścieżki to jest RX, dla drugiej TX. Gdy ktoś podłącza pod pin 1 UNO to łączy się faktycznie do TX płytki, ale jednocześnie RX modułu konwertera na UNO. Z modułem konwertera UNO też się można komunikować, wtedy podłączasz TX do pinu obazgranego na płytce UNO jako TX, ale jest to jednocześnie RX konwertera. Co do zasady UART to komunikacja dwóch urządzeń, dlatego się nie łączy trzeciego do takiej linii, a w UNO/NANO lepiej nie wykorzystywać pinów 0 i 1 do niczego.
No, to na razie kabelkologia, błąd miałeś w programie, ogarnij co gdzie chcesz wysyłać.