Project Drohnen: Difference between revisions

From JoBaPedia
Jump to navigation Jump to search
Line 43: Line 43:
  docker run -v "$PWD:/opentx" -e "OPENTX_VERSION_SUFFIX=$tag" -w "/opentx/build-$pcb" "opentx-$tag" make companion23
  docker run -v "$PWD:/opentx" -e "OPENTX_VERSION_SUFFIX=$tag" -w "/opentx/build-$pcb" "opentx-$tag" make companion23


Run companion within docker (test)
Run companion within docker (for testing, no usb access)


  xopts="-e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix"
  xopts="-e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix"
  docker run -v "$PWD:/opentx" -e "OPENTX_VERSION_SUFFIX=$tag" -w "/opentx/build-$pcb" $xopts "opentx-$tag" ./companion23
  docker run -v "$PWD:/opentx" -e "OPENTX_VERSION_SUFFIX=$tag" -w "/opentx/build-$pcb" $xopts "opentx-$tag" ./companion23


Companion runs fine in the opensuse host OS (for talking with radio via usb)
Companion runs fine in the opensuse host OS (for normal use, including talking with radio via usb)


  "build-$pcb/companion23"
  "build-$pcb/companion23"

Revision as of 22:43, 14 September 2019

Drohnen

Taranis Q X7

Docker Build Environment

A build is only fully supported with some debian environments (see OpenTX 2.2 Linux Build Instructions). Using docker to solve this for opensuse:

sudo zypper in docker
sudo systemctl start docker
sudo usermod "$USER" -a -G docker

Create docker image

Roughly following OpenTX-2.3-Docker-Build-Instructions

Opened issue https://github.com/opentx/opentx/issues/6773 to get rid of the sed requirement below

tag="2.3"
pcb="X7"
opts="-DGVARS=YES -DLUA=YES -DLUA_COMPILER=YES -DHELI=NO -DDEBUG=NO -DCMAKE_BUILD_TYPE=Release"

git clone --recursive https://github.com/opentx/opentx.git
cd opentx
git checkout "$tag"
cd radio/util
sed -i 's@/debian/pool@/debian-archive/debian/pool@' Dockerfile
docker build -t "opentx-$tag" .
cd -
mkdir "build-$pcb"
docker run -v "$PWD:/opentx" -e "OPENTX_VERSION_SUFFIX=$tag" -w "/opentx/build-$pcb" "opentx-$tag" cmake -DPCB="$pcb" $opts ../
docker run -v "$PWD:/opentx" -e "OPENTX_VERSION_SUFFIX=$tag" -w "/opentx/build-$pcb" "opentx-$tag" make firmware

Other build options (e.g PCB, TRANSLATIONS, ...) can be looked up with

docker run -v "$PWD:/opentx" -e "OPENTX_VERSION_SUFFIX=$tag" -w "/opentx/build-$pcb" "opentx-$tag" cmake -LH

Companion

Companion can be built with

docker run -v "$PWD:/opentx" -e "OPENTX_VERSION_SUFFIX=$tag" -w "/opentx/build-$pcb" "opentx-$tag" make companion23

Run companion within docker (for testing, no usb access)

xopts="-e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix"
docker run -v "$PWD:/opentx" -e "OPENTX_VERSION_SUFFIX=$tag" -w "/opentx/build-$pcb" $xopts "opentx-$tag" ./companion23

Companion runs fine in the opensuse host OS (for normal use, including talking with radio via usb)

"build-$pcb/companion23"

Flash Firmware

  • Copy "build-$pcb"/firmware.bin to the SD cards Firmware directory
  • Insert SD card into the sender
  • Start sender in bootloader mode (press left and right trim to the inside while powering on)
  • Select firmware in menu and start update