APM 3.3-rc9 beta testing

I just worked this out from @george.staroselskiy’s extremely useful post here (regarding missing GCLIB 2.15+):

  1. Follow @george.staroselskiy’s instructions to edit the debian sources and switch from wheezy to testing, run apt-get update then install the newer GCLIB. (“sudo nano /etc/apt/sources.list” then change “wheezy” to “testing” in the first line, followed by “sudo apt-get update” and “sudo apt-get install libc6”).
  2. Optional (but you’ll probably do it later anyway) - Run a full upgrade with “sudo apt-get upgrade”, respond to a load of prompts with default answers. According to a warning at the end of the upgrade you should run dpkg to purge unused locales.
  3. Create the script below to help you download and run APM direct from DIY drones latest APM build (the first supporting Navio):

~/APM/Download.sh

#!/bin/bash
# Navio APM Download and Install Script
# =====================================
cd ~

# Remove Emlid build
sudo dpkg --remove apm

# Download DIY Drones build
# Optional: comment all "wget" download and "ln" link lines for all other APM variants (e.g. when using a quadcopter comment everything except "navio-quad").
sudo rm /opt/apm --recursive --force
sudo mkdir /opt/apm
sudo mkdir /opt/apm/bin
cd /opt/apm/bin
sudo wget http://firmware.diydrones.com/Plane/stable/navio/ArduPlane.elf --output-document=ArduPlane
sudo wget http://firmware.diydrones.com/Copter/stable/navio-heli/ArduCopter.elf --output-document=ArduCopter-heli
sudo wget http://firmware.diydrones.com/Copter/stable/navio-hexa/ArduCopter.elf --output-document=ArduCopter-hexa
sudo wget http://firmware.diydrones.com/Copter/stable/navio-octa-quad/ArduCopter.elf --output-document=ArduCopter-octa
sudo wget http://firmware.diydrones.com/Copter/stable/navio-octa/ArduCopter.elf --output-document=ArduCopter-octa-quad
sudo wget http://firmware.diydrones.com/Copter/stable/navio-quad/ArduCopter.elf --output-document=ArduCopter-quad
sudo wget http://firmware.diydrones.com/Copter/stable/navio-tri/ArduCopter.elf --output-document=ArduCopter-tri
sudo wget http://firmware.diydrones.com/Copter/stable/navio-y6/ArduCopter.elf --output-document=ArduCopter-y6
sudo wget http://firmware.diydrones.com/Rover/stable/navio/APMrover2.elf --output-document=APMrover2
cd ~
sudo chmod +x /opt/apm/bin/*
sudo rm /usr/bin/ArduPlane* --force
sudo rm /usr/bin/ArduCopter* --force
sudo rm /usr/bin/APMrover* --force
sudo ln --symbolic /opt/apm/bin/ArduPlane /usr/bin/ArduPlane
sudo ln --symbolic /opt/apm/bin/ArduCopter-heli /usr/bin/ArduCopter-heli
sudo ln --symbolic /opt/apm/bin/ArduCopter-hexa /usr/bin/ArduCopter-hexa
sudo ln --symbolic /opt/apm/bin/ArduCopter-octa /usr/bin/ArduCopter-octa
sudo ln --symbolic /opt/apm/bin/ArduCopter-octa-quad /usr/bin/ArduCopter-octa-quad
sudo ln --symbolic /opt/apm/bin/ArduCopter-quad /usr/bin/ArduCopter-quad
sudo ln --symbolic /opt/apm/bin/ArduCopter-tri /usr/bin/ArduCopter-tri
sudo ln --symbolic /opt/apm/bin/ArduCopter-y6 /usr/bin/ArduCopter-y6
sudo ln --symbolic /opt/apm/bin/APMrover2 /usr/bin/APMrover2

I think what we need is:

  1. An updated RasPi image with the necessary GCLIB version patched-in properly (without having to switch to an unstable release). Rebuilding the source each time with older libraries may over-complicate support.
  2. A nice little ANSI download text GUI from Emlid (like raspi-config) which prompts for firmware type, configures auto-start of APM and also does a few of the other necessary tweaks to the standard RasPi image. That could be set to auto-start the first time, so Emlid have something like a plug-and-play image for newbies.
  3. The GUI could perhaps have an option to try latest and specific beta builds, effectively replacing all the functionality of the “firmware download” part of the GCS software.
1 Like