Ostatnio znowu bawiłem się SDRem i człowieki z hackerspece’u chcieli żebym im poopowiadał, pomimo, iż nie czuję się za autorytet w tej kwestii. W linku macie moja prezentacją wraz ze zrobionymi post factum notatkami, które są zastępstwem mojego gadania.
Ogólnie GNU Radio ciekawe narzędzie. Z perspektywy czasu z jednej strony była to pewna przesada, żeby dawać GNU Radio do analizy prostego pilota (bardziej uczciwy tutaj byłby URH), ale z drugiej strony był to fajny cel ćwiczebny biorąc pod uwagę, że ciężko o jakąś realną pomoc z GNU Radio. Z jednego strony w internecie znajdziecie kilka prezentacji po polsku, gdzie program się przewija, ale znalezienie realnej pomocy jest ciężkie. Sporo rzeczy poznawałem metodą “rozpoznania w boju”. Nie jestem pewien na ile moje obecne rozwiązanie problemu jest optymalne, bo nie mam za bardzo z czym/z kim tego porównać. Wiem tylko, że ogólnie to działa z pilotem na oryginalnym scalaku. Muszę znaleźć jakiś sposób na ten scalak zamiennik.
Samo GNU Radio raczej średnio się nadaje, żeby zrobić swoją własną aplikację SDR i pociągnąć GNU Radio jako zależność. Na upartego niby można, ale nie wiem czy przypadkiem nie podlega to pod jakiś zakaz w konwencji Genewskiej. GNU Radio to bardziej taki Matlab/LabView, gdzie prototypujecie swoje rozwiązanie, ale jak potrzebujecie niezależną aplikację, to musicie go odłożyć na bok i wziąć inne libki do implementacji DSP. Pod tym kątem LuaRadio wydaje się bardziej obiecujące.
Chwilowo w wolnej chwili dłubię coś innego, ale wrócę do tematu tego drugiego pilota i algorytmu “Mueller and Muller Timing Synchronization”. Mam nawet przygotowaną nawet jakąś poezję na ten temat, tylko muszę znaleźć czas na ogarnięcie z tego. Z tego co szybko przejrzałem M&M do zrozumienia wymaga wcześniejszego poznania jakiś innych konceptów.
ASK to po prostu modulacja amplitudą. Rzecz jeszcze prostsza ;-)
Wykorzystanie PT2262 w tym celu jest raczej bez sensu. Zwróć uwagę, że ten układ nie produkuje ci nośnej, którą musisz sam “wyczarować” na PCB. W nocie katalogowej nawet podają, że układ równie dobrze może być wykorzystany w zwykłym pilocie na podczerwień. W takiej sytuacji zamiast PT2262 możesz po prostu umieścić dowolny mikrokontroler, który będzie generował sygnał jak sobie wymarzysz. Do takich pilotów dają go, bo jest pewnie tańszy i wystarczająco dobry.
Transmisje FSK / ASK wydawały mi sie bardziej złożone, bo trzeba by robić synchronizację zegara ze źródłem. Czyli odzyskiwanie symboli o którym piszesz w prezentacji.
Ja zrzucałem tylko strumień audio, nie dekodowałem transmisji cyfrowych.
Faktycznie, jak popatrzyłem na datasheet, to ten układ jest prostszy niż się spodziewałem. Myślałem, że wystawia gotowy, zmodulowany sygnał.
Jeśli nie odpowiadają ci gotowce ESP32/NRF24L01/CC1101, które robią wszystko za ciebie. To jest taka grupa prymitywnych modemów/nadajników/odbiorników na 433 MHz za kilka zł. Mają tylko cyfrowy sygnał “Data”. Sam musisz tam zadbać o wszystko po stronie cyfrowej i zmagać się z niedoskonałością którą dostarczy ci tor analogowy i zaszumione medium. Oczywiście są do tego gotowe biblioteki. Ale gdzie zabawa?!