Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 6 cze 2025, o 05:03


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 11 ] 
    Autor Wiadomość
    PostNapisane: 30 cze 2017, o 14:49 
    Offline
    Nowy

    Dołączył(a): 06 paź 2011
    Posty: 24
    Pomógł: 0

    Cześć,
    szukam na forum i nie mogę sobie poradzić.
    Protokół UDP.

    Atnel Wifi -> Serwer UDP, port 8899

    Z kompa wysyłam dane (UDP Test Tool) na adres serwera UDP (Atnel Wifi -> procek) - port 8899. Dane są ładnie odbierane.

    Zwrotnie chciałbym odesłać zwrotnie potwierdzenie z procka do kompa.
    Ok, potwierdzenie zwrotne procek wysyła do Atnel Wifi. Oczywiście komp nic nie odbiera. Bo przecież nigdzie nie ustawiłem adresu i portu, do którego Atnel Wifi (Serwer UDP) ma wysyłać dane.

    Co więcej podejrzałem WireSharkiem adres i numer portu, na który wysyła UDP serwer (Atnel Wifi) potwierdzenie.
    Podczas kilkukrotnego obserwowania numer portu zmienił się!!??
    Pierwszy port na jaki wysyłał UDP serwer to 58971. Jak ustawiłem taki numer portu odbioru w UDP Test Tool wszystko ładnie chodziło. Ku mojemu zdziwieniu po bliżej nieokreślonym działaniu (nie pamiętam co zrobiłem, na pewno nie odłączałem zasilania Atnel Wifi) numer portu docelowego się zmienił!!
    Pamiętam, że się zaczynał na 58xxx, ale pozostałe trzy cyfry były inne.
    Gdzie to ustawić/zmienić??
    Pozdrawiam

    _________________
    smalski



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 30 cze 2017, o 16:05 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27406
    Lokalizacja: Szczecin
    Pomógł: 1043

    smalski napisał(a):
    Oczywiście komp nic nie odbiera. Bo przecież nigdzie nie ustawiłem adresu i portu, do którego Atnel Wifi (Serwer UDP) ma wysyłać dane.


    I to jest typowe podejście początkujących, którzy nie rozumieją niestety jak działa UDP i client/serwer

    Panie kochany ;) wysyłając datagram UDP do procka (poprzez moduł WIFI jako serwer UDP) jak sam mówisz, procek ładnie odbiera dane. I teraz zrozum ...

    polecam tak nawiasem mówiąc nowy cykl poradników, który tworzę

    http://mirekk36.blogspot.com/2017/06/ud ... aania.html

    (w drugim odcinku który się ukaże będziesz miał garść informacji żeby to zrozumieć) ale już teraz ci podpowiem ;)

    Gdy SERVER UDP nasłuchuje i odbiera pakiet UDP to bardzo dobrze wie do kogo ma odpowiedzieć i zna jego port odbiorczy ;) bo tenże port nazywa się SOURCE PORT i leci w datagramie ;) Dlatego serwer potrafi bez niczego - bez żadnych tam twoich konfiguracji (które nawiasem mówiąc byłyby niestety bez sensu bo przez to chciałbyś zrobić z serwera UDP hmmm sam nie wiem co)

    To że moduł wifi może odsyłać odpowiedzi z różnym portem (Source Port) to żadne zdziwienie ;) Tak samo robi Windows gdy wysyłasz zapytanie UDP klientem UDP. Określasz TYLKO docelowy adres IP oraz docelowy port ... a powiedz mi czy zwykle wiesz jaki będzie port zwrotny czyli SOURCE PORT?

    nie wiesz ;) bo windows sam go losuje z puli wolnych w danej chwili i nie wykorzystywanych portów ;)

    pobierz sobie ten komponent do Delphi (nawet jeśli w ogóle nic nie robisz w Delphi)

    http://atnel.pl/mkudps.html

    masz tam taki fajny programik EXE o nazwie MkTerminalUDP (napisany nawiasem mówiąc w oparciu o ten komponent) i nim bez żadnego wireszarka będziesz mógł się przekonać o tym o czym mówię i testować sobie komunikację UDP

    Poczekaj też na dalsze części tych poradników moich o UDP bo one są właśnie przeznaczone dla początkujących osób - które jeszcze tego nie rozumieją czy nie wiedzą ... pokażę DOKŁADNIE co i jak zobaczysz ;)

    ------------------------ [ Dodano po: kilkunastu sekundach ]

    Podsumowując, Server UDP ślicznie odpowiada KAŻDEMU kto do niego coś wyśle ;) o ile uznasz że tak trzeba i prockiem coś odeślesz

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 30 cze 2017, o 16:56 
    Offline
    Nowy

    Dołączył(a): 06 paź 2011
    Posty: 24
    Pomógł: 0

    Ok, zainteresuje się bardziej.

    Tylko dziwi mnie, że 4 lata temu robiłem dokładnie taką samą komunikację przy pomocy ENC28j60 i komponentów INDY do Delphi i ustawiałem porty nasłuchu i docelowe bo obu stronach transmisji UDP i wszystko ładnie chodziło, a teraz jest inaczej. Cóż może to kwestia przypadku...

    Dziękuję i pozdrawiam

    _________________
    smalski



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 30 cze 2017, o 17:03 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27406
    Lokalizacja: Szczecin
    Pomógł: 1043

    bo jest też możliwość nawet dla klienta ustawić Source port chociaż to nie ma większego sensu, ale można, tylko trzeba zbindować adresy w Indy. Więc pewnie coś pozapominałeś i teraz troszkę może dlatego się dziwisz. Ale na pewno nic przez kilka lat się nie zmieniło w tym zakresie ... UDP ;)

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 wrz 2017, o 17:25 
    Offline
    Nowy

    Dołączył(a): 05 sty 2016
    Posty: 5
    Pomógł: 1

    Mam takie pytanie wysyłam string z programu delphi do procesora za pomocą karty wifi atnel. String składa się z tokenów. Czy jest jakieś ograniczenie co do długości znaków?
    Pomimo ustawienia w programie procesora bufora 100 bajtów, to nie mogę przesłać więcej niż około 25 znaków. Czy moduł MKUDPS ma jakieś ograniczenia, które nie mogę odszukać co do długości stringu?
    Pozdrawiam



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 wrz 2017, o 17:35 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27406
    Lokalizacja: Szczecin
    Pomógł: 1043

    grodzial napisał(a):
    Czy moduł MKUDPS ma jakieś ograniczenia, które nie mogę odszukać co do długości stringu?


    Jak można szukać ograniczeń tak błahej rzeczy jak długość stringa na PC ??? sorki ale to niedorzeczność ;) na PC ? ... możesz sobie 2 mb stringa przesłać takim komponentem

    zamiast patrzeć na babola w swoim programie na procku - po opisie problemu idę o zakład, że nie ustawiłeś odpowiednich buforów cyklicznych w procku, o ile korzystasz jak się należy z buforowania cyklicznego - chyba że sam coś zakombinowałeś i źle to zrobiłeś w procku - no ale sorki wtedy bez kodu to pytanie bardziej do wróżki

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 wrz 2017, o 18:27 
    Offline
    Nowy

    Dołączył(a): 05 sty 2016
    Posty: 5
    Pomógł: 1

    Dziękują za podpowiedź.
    Jak się siedzi od 6 rano i nie odchodzi od komputera to czasem tak bywa, że przychodzi taki moment, że na prostym błędzie można się złapać i szukać dziury w cali.
    Dzięki poradnikom znowu zapowiada się kupno od pana kilku rzeczy i licencje na komponent. Wszystko ładnie śmiga i znów będzie można poszerzyć ofertę sprzedażową.
    Niestety moja żona już nie może pana słuchać w poradnikach w przeciwieństwie do mnie. Niestety musi to przeboleć. Trzeba z czegoś przecież żyć, bo przez pana rzuciłem robotę i zajmuje się już głównie programowaniem i budowaniem od podstaw sterowników.
    Niestety pasjonaci tak mają, że na wakacjach odpoczywają pisząc programy do procka. Nie ma to jak relaks na łonie natury z komputerem w ręku.
    Pozdrawiam

    ------------------------ [ Dodano po: 8 minutach ]

    Mam jeszcze pytanie. Czy powstanie jakiś poradnik do sterowania przez wifi prockiem za pomocą programu delphi i telefonu i odpowiedzią z procka stringiem na nasze zapytanie, ale nie wewnątrz sieci domowej, ale gdy jestem poza domem na wakacjach i chciałbym sobie pogadać z prockiem i trochę rzeczy posterować.
    Mam nadzieję, że inni podzielają moją opinię, że takie cuda, przydałyby się nie jednemu.
    Pozdrawiam



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 wrz 2017, o 19:07 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27406
    Lokalizacja: Szczecin
    Pomógł: 1043

    grodzial napisał(a):
    Czy powstanie jakiś poradnik do sterowania przez wifi prockiem za pomocą programu delphi i telefonu i odpowiedzią z procka stringiem na nasze zapytanie, ale nie wewnątrz sieci domowej, ale gdy jestem poza domem na wakacjach i chciałbym sobie pogadać z prockiem i trochę rzeczy posterować.

    ale co to za różnica czy sieć domowa czy poza domem?

    z punktu widzenia programu ABSOLUTNIE żadna

    jedyne co to trzeba sobie na routerze poudostępniać porty, zadbać o jakiś DYNDNS itp

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 wrz 2017, o 19:15 
    Offline
    Nowy

    Dołączył(a): 05 sty 2016
    Posty: 5
    Pomógł: 1

    Postaram się popróbować z przekierowaniem portów w routerze zobaczymy czy dojdzie do procka i czy z procka przez kartę wifi czy da radę mi odpowiedzieć.
    Popróbuję w wolnej chwili. Skoro się da.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 wrz 2017, o 20:09 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2596
    Pomógł: 129

    Napisz w czym był problem - będzie dla potomnych



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 14 wrz 2017, o 07:50 
    Offline
    Nowy

    Dołączył(a): 05 sty 2016
    Posty: 5
    Pomógł: 1

    Trzeba było zwiększyć rozmiar bufora w pliku mkuart.h "UART_RX_BUF_SIZE 32"
    Zwiększyłem rozmiar na 64 i już mógł przyjąć dłuższy string. Rozmiar ustawiamy do swoich potrzeb.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 11 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    cron
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO