Re: příjem NTP ESP8266/32
Petr Zapadlo
zapik na email.cz
Neděle Červenec 24 10:21:48 CEST 2022
Zdravím,
odečítá se od 1970 (unix time stamp), samotného mě přkvapilo jak málo se
z toho paketu vlastně využije. Ale přesnostně mi to bohatě stačí (ani
minuta není pro mě kritická míra). Podívám se co dalšího by v tom paketu
bylo ještě využitelného - minimálně kontrola Stratum by stála za úvahu.
Zatím jsem udělal to, že jsem dopsal důslednou kontrolu délek paketu a
jeho čtení. Tak uvidím co to bude dělat, problém je v tom, že mi bude
dost dlouho trvat než ověřím, že to skutečně bylo řešení.
Petr
Dne 24. 07. 22 v 8:47 Miroslav Mraz napsal(a):
> Tohle zřejmě někdo převzal přímo z arduina -
> https://www.arduino.cc/reference/en/libraries/ntpclient/. Je to
> napsané celé blbě. Autor zřejmě netuší, že existuje něco jako
> stdint.h, zcela zbytečně používá u členských dat this-> (vy to tam už
> nemáte) - zřejmě je zvyklý na python nebo javascript. Z přijatého
> paketu jen převezme počet sekund od nějakého data. Nebudu zkoumat,
> jestli to má být rok 1900 (jak tam píše) nebo spíš 1970 (unix
> timestamp), podstatné je, že spoustu informací z toho paketu prostě
> zahodí. Chtělo by to paket podrobně prozkoumat a pokud v něm budou
> blbosti, tak ho prostě ignorovat.
>
> Mrazík
>
> On 24. 07. 22 5:34, Petr Zapadlo wrote:
>> Zdravím, odpovím tak nějak hromadně všem v jedné zprávě.
>>
>> Ne, read návratový kod neošetřuje - dobrý nápad - read by mělo vrátit
>> počet byte paketu - zkusím kontrolovat, to by mohlo pomoci na nějaké
>> fake pakety.
>>
>> Interní čas počítám a synchro dělám jednou za 12 hodin a při startu,
>> nejede mi tam nic kritického abych musel implementovat časový fázový
>> závěs (jestli se rybičkám rozsvítí o vteřinu dřív anebo později je
>> jedno :-)).
>>
>> Jako časový server používám české pooly NTP serverů:
>>
>> String ntp_hosts[NUM_NTP]
>> ={"0.cz.pool.ntp.org","1.cz.pool.ntp.org","2.cz.pool.ntp.org"};
>>
>> Prakticky to znamená, že každé čtení jde proti jinému NTP serveru.
>>
>> Celé jsou to zkoušel ve vlaku LEO Express do Prahy - Leoš má dost
>> blbou wifi, takže o výpadky tam není nouze, stejně tak o latenci
>> paketů jdoucí až >15s, měl jsem upravenou synchronizaci aby to šlo
>> co pár vteřin a ani jednou to nezablblo. Říkal jsem si, že blbější
>> situace už nenastane :-) (A nastala)
>>
>> Díky
>>
>> Petr
>>
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
Další informace o konferenci Hw-list