Tak jsem se pustil do programování a hned jsem narazil. Definice protokolu s-com, to je tedy něco.
Nechme stranou, že doba Tb je označena jako perioda, ale velký problém je definice doby mezi pakety. Podle obtázku je min. 3xTb. To je ovšem naprostý nesmysl, protože pokud bych vysílal hodnotu 127 (binárně 1111111), tak nedokážu rozlišit mezipaketovou mezeru od datové oblasti a budu se synchronizovat úplně nesmyslně. V textu sice doporučují mít mezipaketovou mezeru min. 200ms, ale to je také špatně. Pokud bych vysílal nejdelším povoleným časem Tb=30ms, tak je délka možného výskytu nepřetržitých jedniček rovna osmi (sedum bitů dat a před tím jedničkový startbit). Pro detekci musím dát o jeden bit více, takže 9*30ms=270ms. Druhý problém tkví v tom, že přijímač neví, dokud nepřečte první sync bit, jakou hodnotu Tb bude mít vysílač. Jsou dvě možnosti. Jednou je chvíli sledovat signál a zjistit nejkratší blok, z toho vypočíst minimální mezipaketovou mezeru (může být 36-270ms) a podle toho se synchronizovat. Problém nastane v případě, že vysílač vyšle jen pár paketů při změně návěsti, to se nemusí povést odsledovat délku Tb a ještě přijmout dva stejné pakety. Druhá možnost je říct, že minimální mezera je 270ms při jakékoli délce Tb. To ale může narazit na to, že někdo vysílá podle popsané definice.
Asi nezbyde jiná možnost, než vyzkoušet parametry změřit na dekodéru s kódem co je k dispozici na netu.
Odtud plyne moje prosba,
pokud jste někdo programoval vysílání, jakým způsobem