In the mean time I worked for a while on the LibrePilot project, which is one of the offshoots of the OpenPilot project. Mostly I improved the firmware for the OPLink modem. Recently the LibrePilot project has died down, and there's not a great deal of activity developing it, although I still believe it's a great platform for UAV research and development.
For many years I've been interested in combining a Linux-based CPU with flight hardware to make it easier to experiment with advanced flight controls and navigation. My ideal platform would contain a CPU running some form of Linux with a micro-controller that performs the low-level stabilization.
That's not such a big deal anymore, since it's been done many times, but over the years I've experimented with building a nano-copter based on the now-defunct Intel Edison. I've also designed carrier boards for the NanoPi Neo Air (and family) and the NanoPi Duo.
More recently I've been experimenting with the Raspberry Pi family.The Raspberry Pi Zero W is a nice board, but not quite as advanced as some of the other boards. Fortunately the Raspberry Pi family has a great deal of support by the community, so it's relatively easy to find solutions for pretty much everything you could want to do with them.
One aspect that they excel in (compared with other boards) is support for hardware acceleration, especially in video encoding/decoding.This makes them ideal for digital video for FPV, which is my most recent project.
Digital FPV video on the Raspberry Pi is not new, and there are multiple projects that support it, but I have been working on similar project for low-latency audio decoding/encoding, so I wanted to tackle it myself. What I currently have working is low-latency encoding of the camera on a Raspberry Pi Zero W to H.264, which transmission over UDP to a decoder that also will run on a Raspberry Pi (or Windows/Linux) and display the video either in a window or via the Raspberry Pi composite video or HDMI (untested) port. I also support Mavlink telemetry to add a full-color OSD to the video.
After working on this for a while, I found out about the Sky Viper quadcopters, which are a line of "toy" quadcopters that support all the way up to fully autonomous flight. At least the higher end models run ArduPilot, with all the capabilities that that entails! I purchased a Journey for less than $60, and they sell on Amazon for less than $100, which is an amazing price for such a capable quad-copter!
This is a picture of mine:
This is the guts:
Most recently I've been adapting my FPV/OSD softare to support the Journey, which turns out to be fairly simple. I currently support low-latency video from the Journey along with Mavlink telemetry, both over WiFi, with and integrated OSD, all decoded and displayed on a Raspberry Pi.
The current version of the code (along with other stuff) can be found on github.
Well, that's enough for now. More updates to come.