3D Robotics


From Signal magazine:

The Defense Advanced Research Projects Agency (DARPA) program is known as High-Assurance Cyber Military Systems, or HACMS. Kathleen Fisher, HACMS program manager, says the program is aiming to produce software that is “functionally correct and satisfying safety and security policies.

“It’s not just that you’re proving the absence of a particular bad property from the security perspective,” she explains. “You’re actually positively proving that the software has the correct behavior.”

Fisher points out that with unmanned systems, an attacker can reach the relevant software remotely. Until a few years ago, cyber-physical systems such as automobiles had their own built-in security because they were not networked. But, automobiles increasingly are likely to have network connections, especially those that automatically provide for emergency response in the event of an accident. “The fact that pretty much all of these systems are networked means that the kind of vulnerabilities we’ve seen on desktop and traditional computing systems for the past 20 to 30 years now carry over directly to these kinds of cyber-physical systems, such as vehicles,” she says.


One target platform is an ArduCopter, which Fisher describes as a hobbyist unmanned aerial vehicle. The code in this relatively small system is readily available, so developers should be able to replace the code completely. Developers already have built a domain-specific language called Ivory that would generate flight control types of code. Half of the original control system code has been replaced by the new high-assurance version—enough that the helicopter can be flown using this new code, she posits.

This effort is paired with a helicopter being produced by Boeing that can be manned or unmanned, so the ArduCopter’s architecture is being adjusted to match that of the Boeing helicopter. This will allow for easy transfer of the software developed for the ArduCopter to the Boeing craft. Fisher points out that the Boeing helicopter effort does have specific software replacement goals for each phase, unlike the other vehicles.

Galois, including APM dev team member Pat Hickey, is leading the effort to create high-assurance flight control software for the APM:Copter (ArduCopter) platform. This project, called SMACCMPilot, uses the PX4 hardware platform, parts of the APM software stack, and new Ivory language software components. SMACCMPilot currently implements the basics of ArduCopter's stabilize mode, including MAVLink telemetry, and plans to expand autonomous functionality soon.
As a by-product of this effort, Galois developed the APM Hardware Abstraction Layer (AP_HAL) and contributed it to the APM community.
The Ivory language and SMACCMPilot project are open source. More information is available at smaccmpilot.org.
E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones


  • Sorry to be the nay Sayer here but reality is darpa is not your friend.

    The only thing DARPA is interested in is how to take over these systems if they are threat or create no fly zones that these system can be hacked into and assume control. I would bet my last dollar that's the true intention.

    Don't believe me look at the latest version of NAZA software it has a 15km no fly zone around tenement square.

    Btw great article.

  • Developer

    Military founded research, and open source. The world is indeed changing..

  • Developer

    As the article and Robert said, we've submitted enhancements back to the APM codebase, spending lots of time working with Tridge and other maintainers to get the AP_HAL code into the APM trunk. We're proud to be an active part of the APM developer community.

    Additionally, all of the software we've produced for SMACCMPilot - a new programming language, concurrency framework, PX4 board support packages, MAVLink implementation, and the flight control software itself - is all open source software, available on github today. Here's the root repository: https://github.com/galoisinc/smaccmpilot-build and a guide to the software: http://smaccmpilot.org/software/

    An umbrella repository including all of the dependencies to build the smaccmpilot project - GaloisInc/smaccmpilot-build
  • Any details on this Boeing Helicopter?  Is it a TradHeli?  Or a Multirotor?

    Actually, it says it can be manned or unmanned, so it must be a conventional helicopter.  But are they really going to fly something that big with Arducopter?  I must be missing something here.

    Darrell, to some degree they already have.  For example, AP_Hal has all be shared back, and that was kind of a big deal for us.

  • The Defense Advanced Research Projects Agency (DARPA) is an agency of the United States Department of Defense responsible for the development of new technologies for use by the military.

    Military Intelligence.... Ques up some Black Sabbath War Pigs on the 8 track...

  • Actually, the GPL only requires publishing the source if you publish the binary. If you adapt GPL'ed code for "internal use" and don't publish any binary, you are not required to publish any source modifications.

    IANAL, but in terms of the military, that could be seen as a flaw in the GPL, because if some DoD project takes GPL'ed software, modifies it and then distributes it "internally" to Army, Air Force and Navy, it probably does not count as publishing because Army, Air Force and Navy could be seen like departments of one big company (DoD).

  • Smack'emPilot!  Someone has a sense of humour!

  • Pretty sweet! Can't wait to see how far it goes and how much the community will benefit from these types of developments!

This reply was deleted.