​The open-source Dronecode dog fight

The open-source drone software group Dronecode has forked, with some developers leaving for their own project.
Written by Steven Vaughan-Nichols, Senior Contributing Editor

Dronecode, the non-profit organization developing a common, shared open-source platform for unmanned aerial vehicles (UAVs), aka drones, has recently made management decisions that has led to some programmers picking up their code and flying away.

ArduPilot Drone

ArduPilot is taking its code and forking from Dronecode.

Andrew "Tridge" Tridgell, one of the Samba file server creators and a founder of ArduPilot, an open-source drone platform, claims that Dronecode's "Platinum members staged what can only be called a coup." According to Tridgell, the Platinum members "removed all top level open-source projects from Dronecode, leaving only their own nominees in the Technical Steering Committee. They passed a resolution requiring that all projects hand over control of all trademarks, accounts, and domains to their control."

Dronecode's Platinum members are 3DR, Intel, and Qualcomm. Dronecode, which uses Linux as its base, is sponsored by The Linux Foundation. Dronecode's governance, however, is completely independent of the Foundation.

This fork happened because of the Platinum's members' "overwhelming desire to be able to make a proprietary autopilot stack." They were able to do this, wrote Tridgell, because "the structure and bylaws of Dronecode are built around exceptional power for the Platinum members, giving them extraordinary control over the future of Dronecode. This is a fundamental flaw in a project meant to promote free and open-source software as it means that the business interests of a very small number of members can override the interests of the rest of the members and the community."

The PX4 open-source autopilot project leadership has accepted this. But, Tridgell explained, "The ArduPilot project won't be doing this, as we firmly believe that community-directed development is the best way to create a long-term sustainable free-software autopilot stack ... We believe that giving the Platinum members that degree of control over the future of ArduPilot would be irresponsible. ArduPilot is a community project, and its future direction must be set by the community."

Chris Anderson, the chair of the Dronecode board of directors, 3DR CEO, and former editor-in-chief of Wired, has a different take. In a letter to Dronecode members, Anderson wrote:

"The main request we heard from the members (and prospective members) is the desire for Dronecode to have a 'distro', a full-stack code base with a regular release cadence and roadmap, so that the members can align their own products around it. One of the main confusions about Dronecode to date is that it has been a relatively loose alliance of related projects, but not a 'thing'. 'How can I download and use Dronecode?' is a common question, and one that we haven't had a good answer to due to the 'basket of projects' composition of the organization.

Therefore, the leadership are restructuring Dronecode to create just that: a proper world-class distro, built for commercial use, with a regular release cadence and roadmap."

Clearly there was disagreement about this. And some programmers and designers have decided to fork Dronecode. Anderson thinks "that is a good thing. The truth of the matter is that these things happen when there is a real misalignment about the technical direction of the project. The majority of participants in the ecosystem, not just current Dronecode members but also commercial adopters who would like to become Dronecode members in the future, want a simple-to-install-and-use Dronecode distribution based on PX4. Tridge, Philip, and Tom, who have done great work in ArduPilot/APM, disagreed. Thus the fork."

Anderson disagrees that the core issue is software freedom. Instead it's about serving the interests of the majority of drone users, developers, and vendors.

Further Anderson promises, "Dronecode is committed to provide a unified code base on a regular release cadence that will be easy to implement with clear API's that will support the development of a rich UAV ecosystem. The Dronecode distribution will be released on a regular 6 month cadence and implementors can be confident using it in a commercial product or a hobby project. As always, technical governance will be open, the technical steering committee will be charged with decisions about the code and everything will be under an open-source license."

The PX4-based distro roadmap will be out within the next few weeks.

Which will win out in the end? Only time, and the quality of each group's code, will tell.

Related Stories:

Editorial standards