Překlad OpenTx ze zdrojových souborů

Z OpenTx
Přejít na: navigace, hledání

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.

Windows

Postup pro Windows je popsán ve vývojářské wiki projektu OpenTx.

Linux

Námi osobně odzkoušený postup

Chyba při vytváření náhledu: sh: 1: /usr/bin/convert: not found Error code: 127

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.
Chyba při vytváření náhledu: sh: 1: /usr/bin/convert: not found Error code: 127
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



Ovládání simulátoru simu

  1. Uložení snímku obrazovky - s
  2. 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
  3. Trimy
    • F1 -
    • F2 -
    • F3 -
    • F4 -
    • F5 -
    • F6 -
    • F7 -
    • F8 -
  4. [EXIT] - <- (Backspace)
  5. [MENU] - Enter