Tato stránka obsahuje popis zastaralých revizí stanice RMDS02, popis nové stanice najdete na Radiová Meteorická Detekční Stanice RMDS02
ODROID má přímou HW podporu sběrnice I²C. Proto můžeme přijímač ladit bez použití modulu usbi2c. Je ale potřeba mít v jádře nahraný modul i2c-dev.
sudo modprobe i2c-dev
Tímto způsobem se modul do jádra nahraje jenom dočasně a po rebootu bude opět chybět. Pro opakované nahrání modulu při nabootování počítače je potřeba do souboru /etc/modules přidat řádek:
i2c-dev
Pro správnou funkci stanice je potřeba, aby GPS měla fix. Což znamená, že musí být známá pozice a musí být trackovány alespoň tři družice.
Tento stav můžeme zkontrolovat z výstupu GPS. Na modulu GPS01A je USB konektor, který po připojení k počítači vytvoří virtuální modemovou linku /dev/ttyACM0 na kterou jsou periodicky posílány informace o stavu GPS. Správné označení cesty k souboru /dev/ttyACMX lze zkontrolovat z výpisu dmesg. V linuxu můžeme tento výstup trvale monitorovat pomocí programu gpsd.
sudo apt-get install gpsd gpsd-clients
Po instalaci program spustíme jako daemon a přiřadíme mu port s výstupem GPS. V našem případě /dev/ttyACM0
sudo gpsd /dev/ttyACM0
Program běží v pozadí a čte data z GPS. Na jeho výstup se podíváme některým klientem.
cgps gpsmon
Bez grafického prostředí z příkazové řádky. Nebo
xgps
V grafickém prostředí X.
Ve všech případech by jsme měli při správné funkci GPS vidět, že z GPS padají nějaká data. Dobře je to vidět např v gpsmon, který NMEA výpisy přímo zobrazuje v textové podobě. Dále by pak GPS měla mít 3D fix a používat některé družice, což je také vidět ve výstupu klientů.
Pokud se stane, že GPS nemá fix nebo nevidí žádné družice. Tak je pravděpodobně problém s připojením GPS antény, nebo jejím umístěním. Je potřeba si uvědomit, že GPS signál je velice slabý (GPS družice jsou více než 20000 km nad povrchem Země), takže je potřeba aby GPS anténa měla přímý výhled na oblohu. Anténa umístěná v místnosti bez oken pravděpodobně nebude fungovat, a nebo její funkce bude velmi omezená.
Lokální oscilátor stanice se ovládá jako I²C zařízení přímo počítače. Je proto potřeba mít zprovozněný balík knihoven pro ovládání I²C zařízení. Na téže stránce je i návod na jeho instalaci. Zařízení používá pro ovládání I²C modul USBI2C01A, takže je potřeba nainstalovat jeho podporu. Pro detekční stanici stačí použít připojení modulu přes HID pomocí HIDAPI. není proto potřeba kompilovat kernel.
Nejdříve nainstalujeme potřebné softwarové nástroje:
sudo apt-get install subversion python-setuptools python-smbus cython
Dále nainstalujeme programový balík pro komunikaci na I2C
sudo easy_install pymlab
Do /etc/modules přidáme řádek
i2c-dev
přidáme uživatele „Username“, pod kterým budeme stanici provozovat, do skupiny i2c a audio
sudo useradd -G i2c Username sudo adduser Username audio
a restartujeme počítač.
sudo reboot
Následně potřebujeme program pro nastavení frekvence lokálního oscilátoru.
git clone https://github.com/MLAB-project/station-supervisor.git git clone https://github.com/MLAB-project/python-mlab-utils.git cd python-mlab-utils/ sudo python setup.py develop cd ../station-supervisor
Nyní máme staženy zdrojové soubory utility pro ladění lokálního oscilátoru a je potřeba upravit soubory frequency_config.py a případně bus_config.py podle konfigurace stanice.
Pokud je modul USBI2C01A připojen k počítači (stačí použít způsob připojení přes rozhrani HID).
sudo /frequency-guard.py
Pokud terminál se spuštěným ladícím skriptem chceme zavřít, tak je možnost jej spustit v prostředí screen.
sudo screen /frequency-guard.py Current Freq.: 286.0787998 MHz, Req. Freq.: 286.078800 MHz, Freq diff.: -0.2 Hz, Time: 58 s
Ten musí běžet po celou dobu provozu stanice. Je proto ideální jej spustit v terminálovém okně otevřeném vedle běžícího waterfallu na stanici. Protože jeho výpis může částečně sloužit k diagnostice správného chodu lokálního oscilátoru stanice.
Ještě taky existuje skript pro ladění Si570 bez GPS: setSi570
Aby se skript nemusel spouštět s právy roota, je třeba vytvořit v adresáři /etc/udev/rules.d soubor SiliconLabs.rules s obsahem:
SUBSYSTEM=="usb", ATTRS{idVendor}=="10c4", MODE="0666" SUBSYSTEM=="usb_device", ATTRS{idVendor}=="10c4", MODE="0666"
Aby se toto nastavení projevilo, tak se musí znovu zavolat udev. To se stane pri nové enumeraci USB zařízení.
Pro servis stanic je nutné stanici zaregistrovat a nastavit jí SSH tunnel.
V některých případech je potřeba pro opravu chyby nahrát novou verzi firmware do modulu PIC16F87xTQ4401B. Při této operaci se postupuje podle návodu na programování PIC. Nahrání kódu provedeme připojením programátoru picprogusb dále je potřeba pouze stáhnout aktuální verzi hex souboru a tu nahrát do MCU, což provedeme následovně:
svn co svn://svn.mlab.cz/MLAB/Designs/Measuring_instruments/RMDS02C/SW/PIC16F887/ cd PIC16F887 pk2cmd -PPIC16F887 -M -Y -W -F./main.hex
Po úspěšném zápisu a kontrole by měl v PIC být nový firmware.
Jedná se o stanici typu RMDS01 vylepšenou o synchronizaci LO.
Tato verze detekční stanice, kromě časových značek poskytuje i informaci o aktuální frekvenci lokálního oscilátoru.
Pro nejstabilnější jack server je výhodné použít přímo aktuální master větev z githubu. Ta má opravené některé pro ARM počítače významné chyby.
sudo apt-get install libsamplerate0-dev libasound2-dev libsndfile1-dev git clone https://github.com/jackaudio/jack2.git cd jack2 ./waf configure --alsa --autostart=none ./waf build sudo ./waf install sudo ldconfig
Spustíme JACK server; interní zvukový adapter pro Playback, externí zvukový adapter připojený přes USB pro Capture.
jackd -r -d alsa -p 2048 -n 3 -r 48000 -P hw:0,0 -C hw:1,0
Pro kontrolu propojení aplikací spustíme
qjackctl
Ten zkompilujeme podle navodu instalace_qjackctl
Software pro zobrazení waterfall nainstalujeme podle návodu na stránce PySDR. Funkci přijímače pak můžeme zkontrolovat pomocí pysdr a programu Whistle, který generuje zvukový výstup. Celý systém lokálně přímo na odroidu spustíme těmito příkazy:
~/Bolidozor/pysdr/pysdr-waterfall -d ./detectors/meteor_echo.py -b 8192 jack_connect system:capture_1 pysdr:input_i jack_connect system:capture_2 pysdr:input_q
~/Bolidozor/pysdr/whistle/whistle -p freqx,-10400:kbfir,41,0,400,100:freqx,400:amplify,200 jack_connect system:capture_1 whistle:input_i jack_connect system:capture_2 whistle:input_q jack_connect whistle:output_i system:playback_1 jack_connect whistle:output_q system:playback_2
Přeložíme radio-observer podle postupu na wiki stránce, nebo v README. A překopírujeme výslednou binárku radio-observer do adresáře ~/Bolidozor/. Následně překopírujeme i vzorový konfigurační soubor Bolidozor.json do složky ~/Bolidozor/nazev_stanice/ a přejmenujeme ho na nazev_stanice.json a upravíme v něm název stanice a cesty k výstupním souborům.
Dále spustíme radio-observer s námi upraveným konfiguračním souborem:
./radio-observer -c nazev_stanice.json
V okně qjackctl pak uvidíme běžící klient připojený na vstup zvukové karty. Protože radio-observer poskytuje informace o detekovaných meteorech v podobě MIDI zprávy, kterou může zobrazit program PySDR, tak ještě propojíme tyto dva programy.
jack_connect radio-observer:midi_out pysdr:input_events
Při běhu programů se občas stává, že některý spadne. Vzhledem k tomu, že jde o experimentální zařízení, tak je důležité z takového pádu mít coredump soubor, který pak lze použít k nalezení chyby. V Ubuntu je implicitně nastaven limit velikosti takového souboru na 0. To způsobuje, že soubor s obrazem paměti nevznikne, je proto potřeba limit navýšit:
ulimit -c unlimited
Pokud máme k počítači připojeno více zvukových adaptérů, můžeme další adaptér připojit k jasku napŕíklad pomocí příkazu
jack_load -i "-d hw:0 -i0 -o2" xxx audioadapter
Tento příkaz přípojí zvukový adaptér č. 0 k jacku pod jménem xxx a bude mít dva kanály pro přehrávání. Další možnost je použít příkazy alsa_in nebo alsa_out. Je také možné spustit jack bez zvukového adaptéru, pokud vybereme zařízení dummy.
Skripty pro odesílání dat na space.astro.cz jsou vyvíjeny jako Data uploader. Instalaci provedeme podle návodu na wiki Bolidozoru.
Skripty pak roztřídí data vytvořená radio-observerem. A uploadují je na centrální server space.astro.cz.
Jak je vidět, tak spuštění stanice po startu systému je poměrně komplikovaný proces. Který je potřeba opakovat při každém restartu systému. Z části lze tento proces zautomatizovat následujícím skriptem. Pauzy vytvořené příkazem sleep jsou důležité pro to, aby všechny operace byly spuštěny až po dokončení inicializace v předcházejícím kroku.
ulimit -c unlimited ~/Bolidozor/frequency_log.py& jackd -r -d netone -i0 -I0 -o2 -O1 2>/dev/null& sleep 3 qjackctl& sleep 4 alsa_in -d hw:1,0 -r 48000& sleep 3 ~/Bolidozor/ZEBRAK-R1/ZEBRAK-R1& sleep 3 jack_connect alsa_in:capture_1 system:playback_1 jack_connect alsa_in:capture_2 system:playback_2 jack_connect ZEBRAK-R1:midi_out system:playback_3
žlutá/černá
SDRX01B/+12V ⇒ SDRX01B/LNA Power
červená/černá
BATPOWER04/5V POWER OUT ⇒ SDRX01B/Power +5V ⇒ CLKGEN01B/Power 5V ⇒ GPS01A/POWER IN EXT
Pokud přivedeme +5V na I2CHUB, musime osadit jumper POWER SELECT - SLAVE - ON
Žlutá/černá
BATPOWER04 +5V ⇒ SDRX01B/+12V,GND
Modrá/černá
UNIPOWER02A 5V ⇒ SDRX01B/-12V,GND
Oranžová/černá
CLKGEN01B/Vcore 3,3V → CLKDIV01A/POVER 3,3V → TTLPECL01A/POWER → PIC16F87x/POWER
SATA kabely
10cm
CLKGEN01B/CLKOUT → CLKDIV01A/CLK IN
10cm
CLKDIV01A/QB → TTLPECL01A/PECL0
20cm
CLKDIV01A/QA → SDRX01B/LO INPUT
bílá
TTLPECL01A/TTL0 → PIC16F87x/RC0
Modul předděličky CLKDIV01A snižuje vstupní frekvenci digitálního signálu z lokálního oscilátoru přijímače. Výstupem předděličky je frekvence, která je již přímo měřitelná čítačem v PIC. Aby nedošlo při dělení ke ztrátě některých impulzů lokálního oscilátoru, tak jsou z předděličky po každém měření vyčítány i její interní stavy.
šedá
CLKDIV01A/MR# → PIC16F87x/RE2
CLKDIV01A/SEL B0 → PIC16F87x/RE1
CLKDIV01A/SEL B1 → PIC16F87x/RE0
Signál PPS je v přijímači využit pro přenos přesného času.
GPS01A/TIMEPULSE → CLKDIV01A/EN# → PIC16F87x/RB0
I²C je digitální sběrnice, která se v přijímači používá na shromažďování servisních dat a ladění přijímače.
USBI2C01A/SDA → CLKGEN01B/SDA → PIC16F87x/RC4
USBI2C01A/SCL → CLKGEN01B/SCL → PIC16F87x/RC3
Tento signál se používá na počáteční nastavení GPS při startu napájení. Konfigurace je do GPS nahrána přibližně 1s po zapnutí napájení modulu s MCU PIC.
GPS01A/RXD → PIC16F87x/RC6
Pro servisní účely je možné zapojit jumpery i jinak než je zobrazeno na následujících obrázcích.
Jumper LED ON na GPS01A je možné připojit kablíkem k PIC. Potom bude LED sloužit k indikaci stavu firmware v modulu s PIC (tato vlastnost je implementována ve firmware pro PIC od verze 3741).
PIC16F87x/RB3 → GPS01A/LED ON (vývod blíž k LED)
Pokud v takovém případě funguje správně ladění stanice, bliká zelená LED na GPS01A přijímači s periodou 0,5 Hz a střídou 1:1, přičemž každý šestý puls má jinou střídu (blikání indikuje správnou funkci FW a změna střídy indikuje, že od GPS přichází signál PPS).
Pokud na GPS přijímači ponecháme jumper LED ON, bliká zelená LED s periodou 10 s. Délka svitu je 10 ms. Pokud zelená led v tomto případě bliká s periodou 1 Hz, je nutné stisknout tlačítko RESET na desce PIC16F87x, aby došlo k inicializaci GPS přijímače.
Tato stanice vznikne z verze RMDS01B přidáním modulu CLKDIV01A a výměnou firmwaru v modulu pic16f87xtq44
Nový firmware stáhneme pomocí
svn checkout svn://svn.mlab.cz/MLAB/Designs/Measuring_instruments/RMDS02C/SW/PIC16F887
Ve vzniklé složce najdeme .hex soubor a do PICu ho nahrajeme postupem pic_programming.
Verze stanice s nízkospotřebovým staničním počítačem založeným na architektuře ARM.
Žlutá/černá
SDRX01B/+12V,GND ⇒ UNIPOWER02A
Modrá/černá
SDRX01B/-12V,GND ⇒ UNIPOWER02A
žlutá/Černá
SDRX01B/+12V ⇒ SDRX01B/LNA Power (libovolný jeden ze čtyř vnitřních pinů)
červená/černá
UNIPOWER02A/5V POWER OUT ⇒ SDRX01B/Power +5V ⇒ CLKGEN01B/Power 5V ⇒ GPS01A/POWER IN EXT
Oranžová/černá
CLKGEN01B/Vcore 3,3V → CLKDIV01A/POVER 3,3V → TTLPECL01A/POWER → PIC16F87x/POWER
SATA kabely
10cm
CLKGEN01B/CLKOUT → CLKDIV01A/CLK IN
10cm
CLKDIV01A/QB → TTLPECL01A/PECL0
20cm
CLKDIV01A/QA → SDRX01B/LO INPUT
bílá (10cm)
TTLPECL01A/TTL0 → PIC16F87x/RC0
šedá (10cm)
CLKDIV01A/MR# → PIC16F87x/RE2
CLKDIV01A/SEL B0 → PIC16F87x/RE1
CLKDIV01A/SEL B1 → PIC16F87x/RE0
zelená (10cm)
GPS01A/TIMEPULSE → CLKDIV01A/EN# → PIC16F87x/RB0
bílá (10cm)
GPS01A/RXD → PIC16F87x/RC6
Viz Pripojeni I2C
ODROID-U3/SCL → I2CHUB02A/MASTER I2C/SCL
ODROID-U3/SDA → I2CHUB02A/MASTER I2C/SDA
I2CHUB02A/3/SDA → PIC16F87x/RC4
I2CHUB02A/3/SCL → PIC16F87x/RC3
I2CHUB02A/5/SDA → CLKGEN01B/SDA
I2CHUB02A/5/SCL → CLKGEN01B/SCL
ODROID-U3/1.8V → I2CHUB02A/POWER SELECTMASTER/prostřední pin
Po zapojení stanice je potřeba zkontrolovat funkci všech subsystémů. Nejčastější problém bývá se zapojením I²C.
Pokud máme nějaké potíže s I2C, použijeme I²C diagnostické nástroje podle MLAB návodu.
Správné obsazení I²C sběrnice po zapojení stanice má vypadat takto:
odroid@odroid:~/Bolidozor$ sudo i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- 51 -- -- -- 55 -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: 70 -- -- -- -- -- -- --
0x70 je modul I2Chub, 0x51 je měřící PIC, 0x55 je modul CLKGEN.
Nejdříve se ale musí namapovat I2CHUB tak, aby byly přístupné všechny zařízení na sběrnici. To se stane při alespoň jednom spuštění frequency_log.py nebo postupem zapis.
CLKGEN nebývá vidět společně s dalšími zařízeními. Je potřeba I2CHUB proroutovat přímo na port, kam je připojen.
Pokud je připojen na port 3 proroutuje se to příkazem.
sudo i2cset -y 1 0x72 0x08
Následně by se v i2cdetect zobrazí zařízení 0x55
Tato stanice vznikne z verze RMDS02C přidáním AD převodníku sdr-widget, výměnou odroidu za verzi odroid-u3 a úpravou napájení přidáním měniče 12V/5V.
Žlutá/černá (10cm)
UNIPOWER02A OUT ⇒ BATPOWER04C/INPUT
žlutá/Černá (10cm)
UNIPOWER02A OUT ⇒ SDRX01B/LNA Power (libovolný jeden ze čtyř vnitřních pinů)
červená/černá
BATPOWER04/5V POWER OUT ⇒(15cm) SDRX01B/Power, BATPOWER04/5V POWER OUT ⇒(10cm) CLKGEN01B/Power 5V
Použít 4 pinový plastovy konektor na BATPOWER a napájení na něm rozdělit.
BATPOWER04/5V POWER OUT ⇒(20cm) I2CHUB02B
I2CHUB02B POWER IN ⇒(10cm) ODROID-U3 +5V Breakout frame power
AT32TQ14401A/POWER +5V → (15cm) ADCaudio01A/POWER +5V
SDRX01B/Power +5V ⇒ (10cm) SDRX01B/Analog Power +12V
modrá/černá
(10cm) UNIPOWER02A -5V ⇒ SDRX01B/Analog Power -12V
Oranžová/černá (10cm)
CLKGEN01B/Vcore 3,3V → CLKDIV01A/POVER 3,3V
CLKDIV01A/POVER 3,3V → TTLPECL01A/POWER
Oranžová/černá (20cm)
CLKGEN01B/Vcore 3,3V → PIC16F87x/POWER
10cm.
ODROID-U3/1.8V → I2CHUB02A/POWER SELECTMASTER/prostřední pin
SATA kabely
10cm
CLKGEN01B/CLKOUT → CLKDIV01A/CLK IN
10cm
CLKDIV01A/QB → TTLPECL01A/PECL0
20cm
CLKDIV01A/QA → SDRX01B/LO INPUT
bílá (10cm)
TTLPECL01A/TTL0 → PIC16F87x/RC0
šedá(10cm)
CLKDIV01A/MR# → PIC16F87x/RE2
CLKDIV01A/SEL B0 → PIC16F87x/RE1
CLKDIV01A/SEL B1 → PIC16F87x/RE0
zelená (10cm)
GPS01A/TIMEPULSE → CLKDIV01A/EN#
GPS01A/TIMEPULSE → PIC16F87x/RB0
bílá(10cm)
GPS01A/RXD → PIC16F87x/RC6
Bílá(SDA), černá(GND), SCL(hnědá) 10cm
Viz Pripojeni I2C
ODROID-U3/SCL GPIO199 → I2CHUB02B/MASTER I2C/SCL
ODROID-U3/SDA GPIO200→ I2CHUB02B/MASTER I2C/SDA
Bílá(SDA), černá(GND), SCL(hnědá) 20cm
I2CHUB02B/6/SDA → PIC16F87x/RC4
I2CHUB02B/6/SCL → PIC16F87x/RC3
I2CHUB02B/5/SDA → CLKGEN01B/SDA
I2CHUB02B/5/SCL → CLKGEN01B/SCL
Žlutá 10cm
ADCaudio01B/MCLK → AT32TQ14401A/PC04
Fialová 10cm
ADCaudio01B/BCLK → AT32TQ14401A/PX28 → AT32TQ14401A/PX34
ADCaudio01B/DOUT → AT32TQ14401A/PX25
ADCaudio01B/LRCLK → AT32TQ14401A/PX26 → AT32TQ14401A/PX36
Hnědá 15cm
ADCaudio01A/OSR0(k nápisu) → AT32TQ14401A/PB00
Šedá 15cm
ADCaudio01A/OSR1(k nápisu) → AT32TQ14401A/PB01
jumper na AUDIOF0
Modrá 10cm
AT32TQ14401A/JTAG2 → AT32TQ14401A/PB06
Tato stanice vznikne z verze RMDS02D přidáním filtru napájecího napětí a nábojové pumpy na symetrické napětí, výměnou odroidu za verzi odroid-C2. Stanice tak nyní obsahuje pouze jeden výkonnější napájecí zdroj +12V.
Na některých stanicích (kde to vyžaduje výskyt lokálního rušení) jsou taktéž v RF části přidány moduly Gain-block a pásmová propust.
RF signál je z antény přiveden přes držák konektorů koaxiálním kabelem nejdříve na modul pásmového filtru poté na modul linkového zesilovače a nakonec na vstup přijímače SDRX.
RF IN ⇒ BP01A ⇒ GB01A ⇒ SDRX01B
Žlutá/černá (10cm)
UNIPOWER02A OUT ⇒ BATPOWER04C/INPUT
žlutá/Černá (10cm)
UNIPOWER02A OUT ⇒ SDRX01B/LNA Power (libovolný jeden ze čtyř vnitřních pinů)
červená/černá
BATPOWER04/5V POWER OUT ⇒(15cm) SDRX01B/Power, BATPOWER04/5V POWER OUT ⇒(10cm) CLKGEN01B/Power 5V
Použít 4 pinový plastovy konektor na BATPOWER a napájení na něm rozdělit.
BATPOWER04/5V POWER OUT ⇒(20cm) I2CHUB02B
I2CHUB02B POWER IN ⇒(10cm) ODROID-U3 +5V Breakout frame power
AT32TQ14401A/POWER +5V → (15cm) ADCaudio01A/POWER +5V
SDRX01B/Power +5V ⇒ (10cm) SDRX01B/Analog Power +12V
U napájecího modulu BATPOWER je nutné zkontrolovat nastavení jumperu na hodnotu +5V.
modrá/černá
(10cm) UNIPOWER02A -5V ⇒ SDRX01B/Analog Power -12V
Oranžová/černá (10cm)
CLKGEN01B/Vcore 3,3V → CLKDIV01A/POVER 3,3V
CLKDIV01A/POVER 3,3V → TTLPECL01A/POWER
Oranžová/černá (20cm)
CLKGEN01B/Vcore 3,3V → PIC16F87x/POWER
SATA kabely
10cm
CLKGEN01B/CLKOUT → CLKDIV01A/CLK IN
10cm
CLKDIV01A/QB → TTLPECL01A/PECL0
20cm
CLKDIV01A/QA → SDRX01B/LO INPUT
bílá (10cm)
TTLPECL01A/TTL0 → PIC16F87x/RC0
šedá(10cm)
CLKDIV01A/MR# → PIC16F87x/RE2
CLKDIV01A/SEL B0 → PIC16F87x/RE1
CLKDIV01A/SEL B1 → PIC16F87x/RE0
zelená (10cm)
GPS01A/TIMEPULSE → CLKDIV01A/EN#
GPS01A/TIMEPULSE → PIC16F87x/RB0
fialová(10cm)
GPS01A/RXD → PIC16F87x/RC6
PIC16F87x/RB3 → GPS01A/LED ON (vývod blíž k LED)
Bílá(SDA), černá(GND), SCL(hnědá) 10cm
ODROID-C2/SCL 5 → I2CHUB02B/MASTER I2C/SCL
ODROID-C2/SDA 3 → I2CHUB02B/MASTER I2C/SDA
ODROID-C2/GND → I2CHUB02B/GND
Bílá(SDA), černá(GND), SCL(hnědá) 20cm
I2CHUB02B/6/SDA → PIC16F87x/RC4
I2CHUB02B/6/SCL → PIC16F87x/RC3
I2CHUB02B/3/SDA → CLKGEN01B/SDA
I2CHUB02B/3/SCL → CLKGEN01B/SCL
I2CHUB02B/5/SDA → SHT31V01A/SDA
I2CHUB02B/5/SCL → SHT31V01A/SCL
Žlutá 10cm
ADCaudio01B/MCLK → AT32TQ14401A/PC04
Fialová 10cm
ADCaudio01B/BCLK → AT32TQ14401A/PX28 → AT32TQ14401A/PX34
ADCaudio01B/DOUT → AT32TQ14401A/PX25
ADCaudio01B/LRCLK → AT32TQ14401A/PX26 → AT32TQ14401A/PX36
Hnědá 15cm
ADCaudio01A/OSR0(k nápisu) → AT32TQ14401A/PB00
Šedá 15cm
ADCaudio01A/OSR1(k nápisu) → AT32TQ14401A/PB01
jumper na AUDIOF0
Modrá 10cm
AT32TQ14401A/JTAG2 → AT32TQ14401A/PB06
Pro nahrání firmware potřebujeme upravený dfu-programmer, který stáhneme následujícím postupem:
sudo apt-get install autotools-dev automake libusb-dev checkinstall git clone https://github.com/MLAB-project/dfu-programmer-sdr-widget.git cd dfu-programmer-sdr-widget/ ./bootstrap.sh ./configure make sudo checkinstall --pkgversion 1.0
Tím dosáhneme instalace balíku dfu-programmer-sdr, který lze kdykoliv odebrat ze systému standardními odninstalačními nástroji.
Předkompilovanou verzi Bolidozor firmware lze stáhnout z webu:
wget https://github.com/MLAB-project/sdr-widget/releases/download/bolidozor-v01/widget.elf
Před spuštěním nahrávacího sktiptu stiskneme na desce AT32TQ14401A tlačítko RESET a opět ho pustíme. Následně stiskneme tlačítko BOOT (nepopsané tlačítko, držíme do opětovného stisku a uvolnění tlačítka RESET). Tím aktivujeme interní bootloader MCU a samotné nahrání firmware pak spustíme následujícím příkazem ze složky dfu-programmer-sdr-widget.
sudo ./program-widget widget.elf
Po správném nahrání firmware bude sdr-widget hardware vidět na USB a VID a PID bude nastavené na fffe:0007
.
Taktéž po spuštění konfiguračního nástroje uvidíme toto nastavení (nelze jej měnit je pevně nastavené v Bolidozor verzi firmware)