Announcing alpha support for the PX4 flight stack in a path towards drones that speak ROS natively. The drones field is an interesting one to analyze from a robotics perspective. While capable flying robots are reasonably new, RC-hobbyists have been around for a much longer time building flying machines developing communities around the so called or . flight stacks software autopilots autopilot daughter-board for the Raspberry Pi PXFmini Among these, there’re popular options such as the Paparazzi, the (commonly known as ) or the PX4. These autopilots matured to the point of acquiring autonomous capabilities and turning these flying machines into actual . Many of these open source flight stacks provide a general for building basic drone behaviors however such as navigation, mapping, obstacle avoidance and so on. These modifications are not straightforward when performed directly in the autopilot code thereby, in an attempt to enhance (or sometimes just simplify) the capabilities of autopilots, abstraction layers such as started appearing. APM ardupilot drones codebase modifications are generally needed when one has the intention of tackling traditional problems in robotics DroneKit For a roboticist however, the is the Robot Operating System (ROS). Getting ROS to talk to these flight stacks natively would require a decent amount of resources and effort thereby, generally, roboticists use a bridge such as the ROS package to talk to the flight stacks. common language mavros We at Erle Robotics have been offering with flying robots using such architecture but we’ve always wondered what would be the path towards a ROS-native drone. In order to explore this possibility we’ve added support for the PX4 Pro flight stack. services Supporting the PX4 Pro flight stack PX4 pro autopilot official logo from http://px4.io/ The drone autopilot is an open source flight control solution for drones that can “ ”. PX4 has been built with a philosophy similar to ROS, composed by different software blocks where each one of these modules communicates using a publish/subscribe architecture (currently, a simplified pub/sub middleware called ). PX4 Pro fly anything from a racing to a cargo drone — be it a multi copter, plane or VTOL uORB Linux brain for robots and drones Erle-Brain 2 In an internal attempt to research the path of getting ROS-native flight stacks and to open up this work to the community I’m happy to announce such as the , or . Our team has put together a new set of for our products that will help you switch between flight stacks easily. official support for the PX4 Pro in all our products meant for developers alpha PXFmini Erle-Brain 2 Erle-Copter Operating System images To install PX4 Pro, just type the following: apt-get purge -y apm-* # e.g.: apm-copter-erlebrain apt-get update apt-get install px4-erle-robotics sudo sudo sudo ROS-native flight stacks Using the PX4 Pro flight stack as a starting point, our team will be dedicating resources to prototype the concept of a drone autopilot that speaks ROS natively, that is, that uses ROS nodes to abstract each submodule within the autopilot’s logic (attitude estimator, position control, navigator, …) and ROS topics/services to communicate with the rest of the blocks within the autopilot. Ultimately, this initiative should deliver a software autopilot capable of creating a variety of drones that merges nicely with all the traditional ROS interfaces that roboticists have been building for over a decade now. If you’re interested in participating with this initiative, . reach us out