Stránka 1 z 2
Identifikace neznameho serioveho async kodu
Napsal: 27 lis 2022, 16:53
od JirkaZ
Věděl by někdo, co průběh v příloze může být za typ kódu? Jako běžný sériový mi to nepřipadá, chybí tam start a stop bit. Nějaký Manchester apod.?
Jedná se o výstup z kodéru do VF vysílacího modulu, přenáší se pouze tento signál (tj. žádné separátní hodiny). Údajně má jít o jakési "11bitové kódování", nic dalšího nevím. Použito ve speciálním DO průmyslového typu.
Experimenty v Saleae s nastavováním analyzátorů zatím nevedly nikam (zkoušen Async Serial a Manchester).
Díky za smysluplné názory, ev. nasměrování. Nejsem "digitální člověk", tak ne moc zprudka
V příloze je ze Saleae celý záznam.
Napsal: 27 lis 2022, 17:39
od JirkaZ
Update: zkusil jsem měření v PulseView (má mnohem větší množství analyzátorů), tam se nějak chytá analyzátor kódu s názvem rc_encode (používají ho např. enkodéry PT2262 apod.).
Potíž je ale v tom, že po sobě následující kódy (vysílají se opakovaně několikrát za sebou) mají různý obsah, viz příloha...
Takže to asi taky nebude úplně ono.
Dodávám, že kodér v předmětném DO je PIC12F629 s nějakým zákaznickým sw (pochopitelně zamčený).
Napsal: 27 lis 2022, 18:19
od samec
máš tam krátke a dlhé impulzy, takže asi takto
detail
___00000000100111111___
pulseview
__00000000100110100__00000000100110100__00000000100110100__00000000100110100__
prípadne naopak
Napsal: 27 lis 2022, 18:21
od JirkaZ
samec: myslíš, že to je něco jako digitální PWM?
Pak bych ale čekal alespoň konstantní vzájemnou rozteč (periodu) náběžných či sestupných hran, ne? To nemají...
Napsal: 27 lis 2022, 19:55
od ondraN
Je tam, podle mého mínění, jedenáct kódovaných pulsů, pak dva široké oddělovací a nakonec čtyři kódované. Ty dva široké pulsy by mohl být oddělovač dat a třeba nějakého zabezpečení přenosu. Kódováni by mohlo být třeba krátký H, dlouhý L jako nula a dlouhý H, krátký L jako jednička. A nebo naopak. Ale je to spíš věštění z křišťálové koule, protože je moc málo vzorků a žádná znalost toho, co se přenáší.
Napsal: 27 lis 2022, 20:24
od JirkaZ
ondraN:
pokud se týká toho celého Saleae záznamu, tak tam se postupně tiskne 5 funkčních tlačítek, pětice stisků ve stejném pořadí jsou dvě po sobě, poprvé delší stisk, podruhé kratší stisk.
Při kratším stisku je počet opakování téhož kódu (= kódu tlačítka) po stisku dán softwarově (opakuje se cca 20x, min. počet opakování je nejasný, protože se mi nepodařilo "vygenerovat" dostatečně krátký stisk). Při delším stisku se kód tlačítka opakuje tak dlouho, jak dlouho je stisknuté.
Součástí kódu je taky nějaký unikátní kód vysílače (nastavuje se při spárování s přijímačem pomocí 11bitového binárního kódu stiskem určitých tlačítek na vysílači) a nejspíš nějaké zabezpečení spolehlivosti přenosu (parita apod.). Leda že by se k zabezpečení spolehlivosti přenosu využíval ten počet opakování a jako platný se vzal kód s dominantním výskytem...
Můžu sem dát záznam z PulseView nebo Saleae pro dvě různá nastavená kódování vysílače a stejnou kombinaci stisků tlačítek, z toho by mohlo být patrné, která část je kód vysílače a která něco jiného.
Napsal: 27 lis 2022, 20:41
od ondraN
Nejdříve bych se podíval na to, jestli tam jsou za všech okolností ty dva dlouhé pulzy mezi 11b a 4b. Pokud ano, jedná se o oddělovač a lze se od toho odpíchnout, pokud ne, je to jinak než jak jsem popsal.
Dále bych srovnal impulzy pro stejná tlačítka ale při spárování s jiným přijímačem. Tady může být skrytý velký problém, protože pokud je to nějaké dálkové ovládání, tak je signál nějak šifrovaný. Tady je taky nutné vědět, jestli je komunikace jen jednosměrná. Když ano, neměl by to být až takový problém. Při obousměrné komunikaci se použiívají plovoucí kódy a s tím se nedá hnout.
P.S. ten celý záznam mi nejde otevřít. Logic chce příponu sal

Napsal: 27 lis 2022, 21:22
od JirkaZ
ondraN:
Komunikace je jednosměrná, plovoucí kód to nepoužívá.
V příloze je srovnání stisku téhož tlačítka pro tři různá kódování vysílače (screenshoty ze Saleae narychlo vložené do LibreOffice Draw).
Z toho plyne, že dlouhé pulsy jsou zcela různě...
Napsal: 27 lis 2022, 21:25
od JirkaZ
ondraN píše:...
P.S. ten celý záznam mi nejde otevřít. Logic chce příponu sal

Je to ze starší řady (verze
1.2.29), mezitím měnili formát, kompletně GUI (asi někomu vadilo, že to předchozí jde ovládat a uživatel si i mohl zapamatovat jak) a další věci.
Bohužel to udělali tak blbě, že kompatibilita mezi těmi řadami verzí ("starou" a novou) neexistuje, ani nejde data importovat (třeba přes jiný formát) atd. To nevymyslíš...
Zkusím to ještě s tou novou verzí.
Napsal: 27 lis 2022, 22:01
od Kremik
Tohle mi něco připomíná. Mám desku, v několika exemplářích, osazenou asi 30ti šváby CMOS4000 a v podstatě nedělá nic jiného, než že po nějakém vstupním pulsu vysílá - teď nevím - asi 128 sekvencí řady pulzů tam a pozpátku. Trošku to připomíná pulsy jako když se točí kódovým kolečkem, ale je do toho zakomponováno i to 7mi či 8mibitové čislo plus nějaké pulsy navíc. Vůbec mě nenapadá, k čemu by to mohlo být. Byl jsem tak zvědavý, že jsem si nakreslil i schéma, ale mám to kdesi založené.
Napsal: 27 lis 2022, 22:18
od rnbw
Nie je to bi-phase coding?
Napsal: 28 lis 2022, 00:05
od samec
JirkaZ píše:Z toho plyne, že dlouhé pulsy jsou zcela různě...
Ale blbosť. Sú to obyčajné jednotky a nuly z nejakého nepresného časovača.
Z toho, čo vidím, to vyzerá, že na začiatku sú dva nulové start bity, potom jedenásť bitov kód prenosového kanálu a za tým štyri bity kód tlačidla, alebo tri bity kód tlačidla a jeden bit parita.
Henten sale..čo? neviem otvoriť a odmietam si kvôli tomu inštalovať visual studio!
Napsal: 28 lis 2022, 07:38
od ondraN
Nepřesnost pulzů může být i tím, že je nastavená moc malá vzorovací frekvence analyzátoru. Zkus poslat ten sal soubor a zkus jednotlivé pakety navzorkovat s vyšší frekvencí. Taky by bylo dobré vědět, jaký je tvůj záměr. Možná by byla analýza pak jednodušší.
Napsal: 28 lis 2022, 10:48
od JirkaZ
samec píše:JirkaZ píše:Z toho plyne, že dlouhé pulsy jsou zcela různě...
Ale blbosť. Sú to obyčajné jednotky a nuly z nejakého nepresného časovača.
To "jsou zcela různě" bylo míněno jako "zcela různě umístěné v rámci bitové souslednosti". Jako odpověď na dotaz ondryN ("Nejdříve bych se podíval na to, jestli tam jsou za všech okolností ty dva dlouhé pulzy mezi 11b a 4b.")
samec píše:Z toho, čo vidím, to vyzerá, že na začiatku sú dva nulové start bity, potom jedenásť bitov kód prenosového kanálu a za tým štyri bity kód tlačidla, alebo tri bity kód tlačidla a jeden bit parita.
OK, dík, podívám se na to.
samec píše:Henten sale..čo? neviem otvoriť a odmietam si kvôli tomu inštalovať visual studio!
Saleae Logic, viz výše, nebo
tady. Na co proboha nějaké Visual Studio?
Update: jo aha, oni to pro widlous vyžadují. No jo, no....
Konkrétně záznam je z verze
1.2.29, je nutné ji spouštět s parametrem --override (viz
zde).
Napsal: 28 lis 2022, 11:02
od JirkaZ
ondraN píše:Nepřesnost pulzů může být i tím, že je nastavená moc malá vzorovací frekvence analyzátoru. Zkus poslat ten sal soubor a zkus jednotlivé pakety navzorkovat s vyšší frekvencí. Taky by bylo dobré vědět, jaký je tvůj záměr. Možná by byla analýza pak jednodušší.
Momentální vzorkování je 100ks/s. Jo, zkusím to, potíž je v tom, že novější verze (co produkují ty *.sal soubory) mi nefungují. Ale budu to ještě nějak řešit.
Formát
PulseView by nevyhověl?
Záměrem je o tom kódu získat základní informace pro případ možného budoucího nahrazení ev. nedostupného vysílače.
Mezitím jsem si vzpomněl, že by kód mohl nějak být odvozen od kódování Holteku HT12 (kodér viz třeba
tady, popis kódu elektronická strana 5 a 6). Důvodem je to, že v podobných vysílačích se dříve tyto obvody používaly.
Jedná se ale jen o moji spekulaci.