User Tools

Site Tools


event:codenight:radio

Reverzní inženýrství digitálních signálů - meteosondy

Přednáška se zabývá problematikou reverzního inženýrství datových přenosů realizovaných pomocí radiového spojení. Postup je předveden na konkrétním příkladu meteorologických sond Vaisala. Během výkladu je kladen důraz na témata které mají širší souvislost s problematikou příjmu a dekódování radiových signálů.

Proč vlastně provádět reverzní inženýrství radiových protokolů?

  • poslech vysílání v éteru (vysílačky, telefony, družice, drony, bezdrátové teploměry, meteosondy, …)
  • bezpečnostní analýza
  • ověření že zařízení pracuje podle specifikace

Krmení pro ty co nevědí co je meteosonda

(de)modulace - sondy

  1. zjištění typu modulace
    • obecně poměrně složitý problém
    • pro sondy byl typ modulace znám ze specifikace
  • vysílá v rozsahu 401-406MHz
  • modulace FM + pár triků = GFSK/GMSK
  • rychlost 4800 baud nebo též 4800 symbolů/sec
  • proč GMSK?
    • obdélníky se dobře interpretují jako 1 a 0 ale špatně se přenášejí
    • vlny se hůř interpretují jako 1 a 0 ale dobře se přenášejí
    • zaoblením se změnšuje rozsah frekvencí použitých pro přenos (bandwidth)

TODO: obr. FFT signálu sondy + bw TODO: obr. zdemodulovaný signál, proložebý obdélníky TODO: obr. FFT signálu sondy + obrys FFT pro obdélníkový signál

rozpoznání různých typů modulace

TODO:

  1. obecná problematika: typy modulace a jak je rozpoznat - (AM, FM, OFDM, TDM, FDM, QAM (G/M)FSK)
    1. udělat si FM demodulaci, demodulaci do quadratury a do AM → zjistit jednotlivé složky

dekódování zdemodulovaného signálu

- synchronizace hodin TODO: orb. vizualizace vlivu rozcházejících se hodin

  1. problém synchronizace hodin pokud je na lince hodně stených bitů za sebou, obr. rozcházení se hodin na vysílači + zdůraznit vliv šumu

TODO: obr

  1. sondy: data jsou vysílání stejně jako by šla po sériové lince

TODO: obr. schéma prtokolu na sériové lince

  1. kódování bitů na symboly (0 → 01, 1 → 10), obrázek porovnávájící původní data a vysílané symboly
  2. způsoby synchronizace hodin: MM (nejčastější) zde ne!
  3. obrázek pro vizualizaci demodulace → synchronizace hodin → dekodovani symbolů → dekodování bitů → bajty
  4. ukázka z oktety jak vypadají data - charakteristické sekvence opakující se každých 240B
  5. obecná problematika vysílání: pakety fixní délky
    1. používají se skoro vždy a všude
    2. snadná synchronizace a nalezení začátku vysílání (začátku paketu)
    3. obrázek s bajty které jsou: a) fixní b) mění se jen mírně nebo systematicky c) mění se chaoticky
  6. odkaz na datasheet, nápověda v podobě: podrámců, CRC a RS
  7. obrázek vyzualizující kde by asi tak mohlo být to předchozí
  8. + obrázek vizualizující kde je délka subpaketů (2*L)
  9. pro jiné verze sond (nebo další typy senzorů) se nejspíš vysílají subpakety jiného typu/délky
  10. jak přijít na RS
    1. chce to trpělivost, cit a hrubou sílu
    2. co nevíme: z kterých dat se vlastně RS počítá, jaké používá koeficienty, jestli není invertovaný, jestli na začátku není magický bajt v jakém pořadí jdou byty na vstup …
    3. bez dalšího napínání, RS je “obyčejný”, data se tam ládují všechna kromě hlavičky, lezou tam pozpátku a RS je taky pozpátku

recording: http://nat.brmlab.cz/talks/2014-01-09-reverzni-inzenyrstvi-protokolu-sond.mkv video

TODO: interpretace dat v podrámcích

  1. hledání symetrie
  2. analýza MEAS rámce
event/codenight/radio.txt · Last modified: 2015/06/07 17:52 by ruza