Analýza 433 MHz

Odpovědět
HaVecko
Příspěvky: 14
Registrován: 11 bře 2018, 10:25
Reputation: 0

Analýza 433 MHz

Příspěvek od HaVecko » 15 dub 2018, 20:11

Zdravím všechny nadšence,
zápasím s analýzou signálu z ovladače na vrata a nějak se mi nedaří. Po shlédnutí tohoto videa jsem ubastlil napěťový dělič a nahrál si kód ovladače viz obr. audacity.png. Podle časové osy a první pravidelné sekvence nul a jedniček předpokládám (10 bitů za cca 3,9 ms), že baud rate by měl být cca 2.560.000 bps. To jsem zřejmě uvažoval nějak blbě co? Jak Na to? Jde o to, že potřebuji synchronizovat vyčítání se změnou logické úrovně (za předpokladu střídání 01010), tedy vyřešit timing. Cílem by měl být podobný výstup jako na obrázku, tedy zahájení vysílání střídavou sekvencí nul a jedniček v počtu 12 ale do serial monitoru, tedy zápis přímo ve znacích.
Zkoušel jsem i programy využívající knihovnu RCswitch a INT pin, to mi nereagovalo vůbec. Je tam spousta šumu, v podstatě nonstop se generují data. Až zahájením vysílání se ruchy potlačí a snímá se něco smysluplného.
Mám to jen jako zábavu, nejde o život. Ale rád bych tomu přišel na kloub. Vysílač je Enika TX Key.
Přílohy
Audio záznam
Audio záznam
audacity.png (11.53 KiB) Zobrazeno 5087 x

jankop
Příspěvky: 1029
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Analýza 433 MHz

Příspěvek od jankop » 15 dub 2018, 21:00

Nerozumím úplně, co vlastně potřebuješ, jen bych chtěl připomenout, že běžně používané přijímače 433MHz se dají použít většinou jen s Manchester kódem. Není tedy možné modulovat vysílač třeba sériovým výstupem Tx z Arduina. Vysílač to vyslat dovede, ale přijímač to nedovede dobře zpracovat.

HaVecko
Příspěvky: 14
Registrován: 11 bře 2018, 10:25
Reputation: 0

Re: Analýza 433 MHz

Příspěvek od HaVecko » 15 dub 2018, 21:27

Chci zachytit nuly a jedničky a následně je chci vysílat, tedy udělat duplikátor ovladače. Něco jako u RFID. Mohu si u origo přijímače zjistit znaky, za kterými se ovladač skrývá, tedy cesta je o něco jednodušší. Vše je pouze otázka jedniček a nul a jejich časové synchronizace, ne? Jako neznalec to samozřejmě silně zjednodušuji a děkuji všem za vysvětlení souvislostí.
V případě RFID se mi také dodavatel snažil nakecat, že si musím koupit jeho čtečku za 4 tis. Já ji tedy nakonec koupil, bylo to na barák a lidi to zaplatili, ale to samé jsem schopen pořešit za 100,- s arduinem - otestováno protože mi to nedalo.

jankop
Příspěvky: 1029
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Analýza 433 MHz

Příspěvek od jankop » 15 dub 2018, 21:32

No tak si najdi manchester kód, protože to v něm je a na github určitě najdeš i něco pro Arduino.

HaVecko
Příspěvky: 14
Registrován: 11 bře 2018, 10:25
Reputation: 0

Re: Analýza 433 MHz

Příspěvek od HaVecko » 15 dub 2018, 21:40

Jo to hodně napovědělo, díky. Nicméně audio záznam by měl korespondovat s nulami a jedničkami zachycenými arduinem. Pak teprve mohu upravovat a dekódovat. V tuto chvíli tuším, že to začíná 12x 01 a toto se mi nedaří zachytit na datovém pinu v serial monitoru. To bych potřeboval vyřešit.

Wojta
Příspěvky: 184
Registrován: 22 črc 2017, 16:39
Reputation: 0

Re: Analýza 433 MHz

Příspěvek od Wojta » 16 dub 2018, 07:36

Pokud jde jen o zachycení nul a jedniček tak můžete třeba měřit šířku pulzů pomocí pulseIn() a vždy změnit na jakou hranu pulseIn reaguje. Místo HIGH nebo LOW se dá do pulseIn dosadit normální int takže můžete například za pomoci přerušení na pinu na kterém měříte pulseIn měnit na jakou hranu reaguje a tím pokrýt časové délky všech pulzů. Všechny naměřené časy si hoďte do nějakého pole a zajistěte si aby se dalo zjistit jestli byl v tomhle čase signál 1 nebo 0 (spoustu způsobů, třeba můžete trochu znepřesnit časy a 0 bit použít pro určování 1 nebo 0) Otázka je jestli vám tohle bude fungovat. Řešil jsem něco podobného nedávno a kvůli šířce pulzů to bylo nutné napsat v Cčku za pomocí Input Capture.

HaVecko
Příspěvky: 14
Registrován: 11 bře 2018, 10:25
Reputation: 0

Re: Analýza 433 MHz

Příspěvek od HaVecko » 16 dub 2018, 13:06

Máte pravdu všichni, díky za podněty. kouknu na to. Když se zadaří dám vědět.

HaVecko
Příspěvky: 14
Registrován: 11 bře 2018, 10:25
Reputation: 0

Re: Analýza 433 MHz

Příspěvek od HaVecko » 18 dub 2018, 19:33

Tak jsem se trochu zadrhnul na mých programovacích znalostech, které jsou dost slabé. Prozatím jsem zjistil, že data manchester kódování se neposílají časově synchronizované ale jako "plovoucí". Synchronizace se zřejmě provádí na základě předvoje jedniček v řadě (nebo nul) a následně je s odmlkou posílán kód. Tedy zřejmě takto:
1. Čekání na sekvenci 11111 či 00000 (nevím jistě zda nuly či jedničky a podle snifu je jich cca 11 nebo 12)
2. Určení časového intervalu mezi dvěma změnami stavu pevně daného řetězce nul či jedniček
3. Čekání na data, přijem s vypočteným timingem
4. Ukončení příjmu po timeoutu (viz konec snifu)

Ať hledám jak hledám, nemohu najít nic, co by to řešilo. Což mi připadá dost podivné. Jako by to to byla výsada komerčních řešení se záměrem utajit to. Kdyby to někomu cvrnklo o nos (ano, analogie s třemi oříšky) budu vděčen za link.

jankop
Příspěvky: 1029
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Analýza 433 MHz

Příspěvek od jankop » 18 dub 2018, 20:42

Stačí pár klíčových slov do googlu - Arduino Manchester Encoding Arduino RF 433 atp.
Je toho velmi mnoho. Protože se jedná o docela rychlý děj, nemusí být jednoduché to z voleje naprogramovat. Tak použij knihovny, které jsou k dispozici a pouč se z už napsaných programů.

http://www.instructables.com/id/Attiny8 ... ceiver-Ma/
https://arduinodiy.wordpress.com/tag/manchester-code/
https://mchr3k.github.io/arduino-libs-manchester/
https://github.com/mchr3k/arduino-libs-manchester
Mimochodem, tak mě napadá. Nemá ten ovladač plovoucí kód s antiscanem? U ovládání vrat bych to čekal, jinak je otevře každej trotl.

HaVecko
Příspěvky: 14
Registrován: 11 bře 2018, 10:25
Reputation: 0

Re: Analýza 433 MHz

Příspěvek od HaVecko » 19 dub 2018, 12:39

Všechny uvedené odkazy s výjimkou prvního jsem již navštívil. Ovladač zřejmě bude mít plovoucí kód (systém Bosys). Půjdu tedy jiným směrem a začnu si hrát s těmi jednoduššími příklady. Díky všem za příspěvky.

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 8 hostů