Překlad OpenTx ze zdrojových souborů
Z Wiki OpenTX
Pokud potřebujete jinou verzi nebo kombinaci voleb, než je k dispozici připravená ke stažení pomocí Companion9X, je nutné vytvořit si soubor pro nahrání firmware překladem a sestavením ze zdrojových kódů.
Není to sice nijak složité, ale předpokládá se jistá základní úroveň znalostí a dovedností pro práci s příkazovým řádkem a programátorským textovým editorem..
Mnoho užitečných a aktuálních informací naleznete ve vývojářské wiki projektu OpenTx.
Obsah
Windows
Postup pro Windows je popsán ve vývojářské wiki projektu OpenTx.
Linux
Námi osobně odzkoušený postup
Tento postup je pro Ubuntu, ale obdobně bude jistě fungovat i na ostatních distribucích linuxu.
- V Ubuntu je třeba mít povolené repozitáře "universe"
- Pro instalaci balíčků použiji příkazový řádek, ale lze použít i některý z grafických instalátorů.
- Aktualizujeme zdroje softwaru
sudo apt-get update
- Nainstalujeme balíčky potřebné pro kompilaci firmware
sudo apt-get install git gcc-avr avr-libc python-qt4 g++
- Tyto balíčky nám dovolí kompilovat firmware pro AVR platformu, to znamená pro klasickou 9X a 9XR. Pokud budeme chtít kompilovat pro ARM platformu (Taranis, Sky9X) bude třeba ještě balíček gcc-arm-none-eabi , ten ale není v běžných repozitářích a je třeba stáhnout z https://launchpad.net/gcc-arm-embedded/+download , rozbalit do složky /usr/local/gcc-arm-none-eabi-4_7-2014q2 a nalinkovat binárky
ln -s /usr/local/gcc-arm-none-eabi-4_7-2014q2/bin/* /usr/local/bin/
- !! Nepoužívejte verzi 4.8 a vyšší, výsledný kód nefunguje správně !!
- Použijte verzi 4.7-2014q2
- Pokud budeme používat simulátor firmware, je třeba doinstalovat i následující.
sudo apt-get install libfox-1.6-0 libfox-1.6-dev
- Vytvoříme si v domovském adresáři složku pro zdrojové kódy firmware
mkdir ~/kompilace cd ~/kompilace
- Stáhneme zdrojové soubory z github
git clone https://github.com/opentx/opentx.git cd ~/kompilace/opentx/radio/src
Nyní máme kopii zdrojových souborů OpenTX, systém git obsahuje všechny dostupné verze.
Seznam verzí, takzvaných tagů zobrazíte pomocí
git tag -l
Mimo těchto tagů jsou ještě pracovní větve firmware, nejzajímavější jsou zejména
master - to je poslední vydaná verze plus případné ještě nevydané bugfixy
next - toto je pracovní verze příští větší aktualizace
Mezi vybranými tagy/větvemi git přechází pomocí
git checkout tags/2.0.11 - připraví zdrojové soubory verze 2.0.11 git checkout next - připraví zdrojové soubory poslední vývojové verze
- Nyní je třeba konfigurovat volby firmware tak jak to dělá companion9x, lze to provést pomocí parametrů na příkazové řádce
make PCB=9X EXT=FRSKY TRANSLATIONS=CZ
- nebo editací souboru Makefile ve složce ~/kompilace/radio/src , potom už parametry nemusíme uvádět na příkazovou řádku a použijeme jen
make all
- Nyní by již měla být ve složce ~/kompilace/radio/src vaše vlastní binárka opentx.hex pro AVR(9X, 9XR), nebo opentx.bin pro ARM(Taranis, Sky9X)
- Zdrojový kód openTx obsahuje i simulátor, pomocí něhož lze spustit a testovat konkrétní verzi firmware přímo na PC.
- Jeho kompilaci provedeme pomocí
make simu
- Spuštění simulátoru potom
./simu
Původní návod na zprovoznění překladu na RCManii
Další návody na překlad
- https://code.google.com/p/opentx/wiki/LinuxBuildInstructions - na webu OpenTx (anglicky)
- https://github.com/opentx/opentx/wiki/OpenTX-Linux-Build-Instructions
Ovládání simulátoru simu
- Uložení snímku obrazovky - s
- Přepínání přepínačů
- 1 - THR
- 2 - RUD
- 3 - ELE
- 4 - ID0->ID1->ID2
- 5 - ID2->ID1->ID0
- 6 - AIL
- 7 - GEA
- 7 - TRN
- Trimy
- F1 -
- F2 -
- F3 -
- F4 -
- F5 -
- F6 -
- F7 -
- F8 -
- [EXIT] - <- (Backspace)
- [MENU] - Enter