LWIP 1.4.1, FreeRTOS, kdepak, nejde...

Jaroslav Buchta jaroslav.buchta na hascomp.cz
Pátek Říjen 18 19:24:43 CEST 2013


No ja to testoval na strukture
PC->kabel->WiFi AP 1)->kabel->centralniAP->ven
                                    2) ->wifi AP klient->kabel->zarizeni 
s LWIP
Tady po pripojeni kabelu probehne par paketu a pak uz se nedeje nic, 
pokud z PC na zarizeni neco neposlu a za nejakou hodinu to spojeni zda 
se umre
Pokud to propojim takto:
PC->kabel->wifi AP klient 1) ->Wifi AP->kabel->centralniAP->ven
                                             2) ->kabel->Zarizeni s LWIP
Tak to zda se neumira na necinnost, sem tam nejaky paket probehne sam o 
sobe ale chcipne po nejakem case zarizeni, takze to zacinam povazovat za 
nezavisle problemy...
Kdyz pripojim LWIP primo k pocitaci, tak tam stale neco zije.

Diky za radu, paket vyzkousim.

Dne 18.10.2013 19:12, Martin Persich napsal(a):
> S tim jsem se osobně nesetkal, normálně podle mého běhá po síti tolik 
> broadcast paketů, že zařízení nemá šanci být "neaktivní".
> Pokud budete chtít posílat nějaký paket jen tak - určitě ničemu 
> neublížíte, pokud zvolíte "Gratuitous ARP". Osobně jsem si doplnil 
> vyslání tohoto paketu při startu a po každém připojení kabelu. 
> Užitečné, pokud "rychle" přepojujete jedno zařízení do různých míst sítě.
> Martin. persich na transcon.cz <mailto:persich na transcon.cz>
>
>     ----- Original Message -----
>     *From:* Jaroslav Buchta <mailto:jaroslav.buchta na hascomp.cz>
>     *To:* HW-news <mailto:hw-list na list.hw.cz>
>     *Sent:* Friday, October 18, 2013 6:59 PM
>     *Subject:* Re: LWIP 1.4.1, FreeRTOS, kdepak, nejde...
>
>     Jeste otazecka - je mozne, ze AP nebo router zacne pripojene
>     zarizeni ignorovat, kdyz je dlouho neaktivni? Zase po prijezdu z
>     nakupu mrtvola, po odpojeni a pripojeni kabelu (bez restartu) OK.
>     Myslim, ze neblikala ani ledka na konektoru, takze router na tu
>     adresu asi nic neposilal... Tady by pomohlo zrejme posilat
>     periodicky nejake broadcasty ze zarizeni - jake nejlepe?
>
>     Dne 18.10.2013 17:31, Jaroslav Buchta napsal(a):
>>     Ja uz se z toho picnu, zatim to vypada, ze se neco nekde predbiha
>>     - kdyz prelozim kod neoptimalizovany, pravdepodobnost seknuti se
>>     snizi tak 5x, kdyz to pripojim primo k compu, tak to je taky v
>>     pohode a ted jsem dal zpozdeni po zpracovani prichoziho paketu a
>>     to zda se chodi take dobre (to bylo puvodne kvuli tomu abych
>>     videl, ze blika ledka...)
>>
>>     void ethernetif_input( void * pvParameters )
>>     {
>>       struct pbuf *p;
>>
>>       for( ;; )
>>       {
>>         if (xSemaphoreTake( s_xSemaphore,
>>     emacBLOCK_TIME_WAITING_FOR_INPUT)==pdTRUE)
>>         {
>>           STM32F4_Discovery_LEDOn(LEDO);
>>
>>           p = low_level_input( s_pxNetIf );
>>           if (ERR_OK != s_pxNetIf->input( p, s_pxNetIf))
>>           {
>>             pbuf_free(p);
>>             p=NULL;
>>           }
>>           vTaskDelay(10);
>>     <-----------------------------------------------------------------------
>>           STM32F4_Discovery_LEDOff(LEDO);
>>         }
>>       }
>>     }
>>
>>     A taky obcas pomuze odpojit a pripojit kabel - jakoby router uz
>>     pakety po nejake dobe do zarizeni neposilal - je to mozne, kvuli
>>     nejake chybne reakci - odpovedi na nejaky dotaz atp?
>>
>>
>>     Dne 18.10.2013 6:45, Jaroslav Buchta napsal(a):
>>>     Tak bohuzel, vypadalo to nadejne ale je to nejak velmi nahodny
>>>     proces... Pamet haldy jsem zvetsil extremne, ale jak jsem
>>>     zjistil ze statistik, neni vubec pouzivana, dokud nepouziju
>>>     nejake hiugh level funkce (coz samozrejme behem testu
>>>     nepouzivam)... Takze zbyva zkoumat obsluhu hardware, funkci ISR,
>>>     DMA a hlavnesynchronizace tasku, kde to vyhnije.... Ostatni
>>>     casti programu a tasky normalne bezi, i VCP na USB, takze vetsi
>>>     destrukce pameti nenastava.
>>>
>>>     Dne 17.10.2013 8:09, František Burian napsal(a):
>>>>     Bude to tim MEM_SIZE, u mne se to chovalo stejne, jednou za cas
>>>>     se neuvolnil paket (nebyl volny buffer ethernetoveho rozhrani)
>>>>     a strasne jsem se divil ze mi po case roste pametova narocnost.
>>>>     Pro overeni ze je to tento problem bych doporucil MEM_SIZE
>>>>     nastavit stejne, kolik mate deskriptoru v hw ethernetu, to pak
>>>>     padne hned pri prvnim neuvolnenem bloku.
>>>>
>>>>     Tipuji ze jste jen problem oddalil ale nevyresil. Spis bych
>>>>     zvetsil pocet deskriptoru na RX i TX kontrolovanych DMA ethernetu.
>>>>
>>>>     Franta.
>>>>
>>>>
>>>>     ---------- Původní zpráva ----------
>>>>     Od: Jaroslav Buchta <jaroslav.buchta na hascomp.cz>
>>>>     Datum: 17. 10. 2013
>>>>     Předmět: Re: LWIP 1.4.1, FreeRTOS, uz snad vse jde
>>>>
>>>>
>>>>         Tak snad konecne uspech, celou noc bezi stabilne a
>>>>         komunikativne - provedl jsem par zmen v nastaveni options
>>>>         jako syntezu z ruznych projektu a podle uvazeni, co by
>>>>         mohlo pomoci....
>>>>         Az bude trochu casu, zkusim iteracni metodou zjistit, ktere
>>>>         nastaveni bylo to dulezite ;-)
>>>>         Nove (rozdilne) bylo nastaveno toto:
>>>>
>>>>         #define ETHARP_TRUST_IP_MAC             1
>>>>         #define IP_FRAG_USES_STATIC_BUF         1
>>>>         #define LWIP_AUTOIP                     1
>>>>         #define SYS_LIGHTWEIGHT_PROT    1 // toto tipuji jako klicove
>>>>         #define MEM_SIZE                (8*1024)            //
>>>>         predtim 5*
>>>>         #define DEFAULT_THREAD_STACKSIZE        1000    // predtim
>>>>         500, ale zasobniky jsem vypisoval a docela rezerva byla
>>>>
>>>>         Tak snad uz OK, ted zacnu resit ty servery, mam dojem, ze
>>>>         nejaky projekt tu kdysi probehl ale nemohu to najit.
>>>>
>>>>
>>>>
>>>>
>>>>         Dne 16.10.2013 22:35, Martin Persich napsal(a):
>>>>
>>>>             Nezaregistroval jsem, jaký hardware máte použit, ale já
>>>>             jsem realizoval zařízení s MCU Atmel AVR32 (AT32UC3xx)
>>>>             a DP83848 (National Semiconductor). Použil jsem driver
>>>>             dodaný firmou Atmel pro vývojový kit EVK1100 a tam byla
>>>>             (a troufám si tvrdit, že přestože jsem firmu Atmel již
>>>>             dvakrát na toto upozornil, že tam ještě je) chyba,
>>>>             která se projevuje přesně, jak píšete. V okamžiku, kdy
>>>>             řadič vyhodnotí chybu během odesílání paketu, řadič
>>>>             zablokuje další vysílání, ale driver toto
>>>>             nezaregistruje a neprovede jeho reset. Samozřejmě -
>>>>             nejčastěji toto vzniká při kolizi paketu, když je vše
>>>>             připojeno na "obyčejný" HUB (ano, pořád si pro ladění
>>>>             Ethernetových komunikací jeden schovávám, je to
>>>>             nesrovnatelně pohodlnější, než nastavovat
>>>>             monitorování pro nějaký inteligentní switch).
>>>>             Alespoň si člověk zvedne sebevědomí, že ani tito
>>>>             "světoví" vývojáři nejsou bez chyby, když pak zjistí,
>>>>             že zapomněli v návrhu na dva rezistory uvedené v
>>>>             datasheetu ... cca dvacet kusů zařízení je ok, další
>>>>             dvě stávkují ... Jo, člověk nesmí věřit všemu, co najde
>>>>             na internetu ...
>>>>             A s příkazem "ping" mám také ještě jeden nevyřešený
>>>>             problém. Pokud pustím "ping" na dvou mých zařízeních
>>>>             (perioda 200 ms, paket 400 Byte) proti sobě, jede to
>>>>             měsíc bez zaškobrtnutí, 100 % úspěšnost. Pokud však do
>>>>             těchto zařízení ještě pustím druhý "paralelní" ping z
>>>>             normálního PC (perioda 1 s), klesně úspěšnost na cca 98
>>>>             %. Asi se tam ještě něco přepisuje, ale vím o tom a
>>>>             prozatím jsem to neměl čas řešit.
>>>>             Martin. persich na transcon.cz <mailto:persich na transcon.cz>
>>>>
>>>>                 ----- Original Message -----
>>>>                 *From:* Jaroslav Buchta
>>>>                 <mailto:jaroslav.buchta na hascomp.cz>
>>>>                 *To:* HW-news <mailto:hw-list na list.hw.cz>
>>>>                 *Sent:* Wednesday, October 16, 2013 7:37 PM
>>>>                 *Subject:* Re: LWIP 1.4.1, FreeRTOS, nejde PING
>>>>
>>>>                 Hmmm je to nejake divne, obcas to zdechne - nekdy
>>>>                 to vydrzi minutu, nekdy pul dne... Ted to zkousim
>>>>                 primo pripojene k compu, abych mohl sledovat
>>>>                 veskerou komunikaci a zatim to funguje,neni znamy
>>>>                 nejaky bug, ktery by treba delal problemy s
>>>>                 nekterymi routery a tak? Cely system nespadne,
>>>>                 funkcni tasky bezeji dal, zrejme to i pakety
>>>>                 prijima ale nevysila... Ale to se blbe overuje,
>>>>                 zrovna u teto desky nemam zadnou jinou komunikaci -
>>>>                 asi budu muset zprovoznit SWO pres STLINK, ale s
>>>>                 tim tady nekdo taky hlasil problem, ze se ztraci
>>>>                 cast dat, ze...
>>>>
>>>>                 Dne 15.10.2013 6:36, František Burian napsal(a):
>>>>
>>>>                     Stabilita muze byt uvolnovanim. Taky jsem to
>>>>                     resil az jsem prisel na to ze pokud volani lwip
>>>>                     funkce ktera ma jako parametr pbuf, a ma ho
>>>>                     uvolnit, selze, pak musim uvolnit tu pamet sam
>>>>                     ! Zejmena jde o lowlevel send a receive ... Asi
>>>>                     tyden mi to dalo nez jsem pochopil.
>>>>
>>>>                     Franta.
>>>>
>>>>                     ---------- Původní zpráva ----------
>>>>                     Od: Jaroslav Buchta
>>>>                     <jaroslav.buchta na hascomp.cz>
>>>>                     <mailto:jaroslav.buchta na hascomp.cz>
>>>>                     Datum: 15. 10. 2013
>>>>                     Předmět: Re: LWIP 1.4.1, FreeRTOS, nejde PING
>>>>
>>>>
>>>>                         Tak vyreseno, ve stare verzi nebylo
>>>>                         prekryti definice
>>>>                         #define CHECKSUM_GEN_ICMP
>>>>                         takze to tam misto souctu nedavalo 0 a HW
>>>>                         to spatne zda se spocital....
>>>>                         No ale pekne jsem si osvezil sitove
>>>>                         protokoly za ty 2 noci :-P
>>>>                         Tak jeste ta stabilita, to bude asi nejaky
>>>>                         zasobnik nejakeho tasku zase...
>>>>                         _______________________________________________
>>>>                         HW-list mailing list - sponsored by
>>>>                         www.HW.cz <http://www.HW.cz>
>>>>                         Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
>>>>                         http://list.hw.cz/mailman/listinfo/hw-list
>>>>
>>>>
>>>>
>>>>                     _______________________________________________
>>>>                     HW-list mailing list  -  sponsored bywww.HW.cz  <http://www.HW.cz>
>>>>                     Hw-list na list.hw.cz  <mailto:Hw-list na list.hw.cz>
>>>>                     http://list.hw.cz/mailman/listinfo/hw-list
>>>>
>>>>
>>>>                 ------------------------------------------------------------------------
>>>>                 _______________________________________________
>>>>                 HW-list mailing list  -  sponsored by www.HW.cz
>>>>                 <http://www.HW.cz>
>>>>                 Hw-list na list.hw.cz <mailto:Hw-list na list.hw.cz>
>>>>                 http://list.hw.cz/mailman/listinfo/hw-list
>>>>
>>>>
>>>>
>>>>             _______________________________________________
>>>>             HW-list mailing list  -  sponsored bywww.HW.cz  <http://www.HW.cz>
>>>>             Hw-list na list.hw.cz  <mailto:Hw-list na list.hw.cz>
>>>>             http://list.hw.cz/mailman/listinfo/hw-list
>>>>
>>>>
>>>>         _______________________________________________
>>>>         HW-list mailing list - sponsored by www.HW.cz
>>>>         Hw-list na list.hw.cz
>>>>         http://list.hw.cz/mailman/listinfo/hw-list
>>>>
>>>>
>>>>
>>>>     _______________________________________________
>>>>     HW-list mailing list  -  sponsored bywww.HW.cz
>>>>     Hw-list na list.hw.cz
>>>>     http://list.hw.cz/mailman/listinfo/hw-list
>>>
>>>
>>>
>>>     _______________________________________________
>>>     HW-list mailing list  -  sponsored bywww.HW.cz
>>>     Hw-list na list.hw.cz
>>>     http://list.hw.cz/mailman/listinfo/hw-list
>>
>>
>>
>>     _______________________________________________
>>     HW-list mailing list  -  sponsored bywww.HW.cz
>>     Hw-list na list.hw.cz
>>     http://list.hw.cz/mailman/listinfo/hw-list
>
>     ------------------------------------------------------------------------
>     _______________________________________________
>     HW-list mailing list  -  sponsored by www.HW.cz
>     Hw-list na list.hw.cz
>     http://list.hw.cz/mailman/listinfo/hw-list
>
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list

------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20131018/d5403ce4/attachment.htm>


Další informace o konferenci Hw-list