3DR is proud to announce that today we’re opening the source code for the Solo flight controller. Solo is a consumer product, aimed at simplifying the process of getting great aerial footage. As a development story, true to 3DR’s open spirit, Solo was developed not just by us at 3DR, but in concert with the ardupilot core development team and contributors around the world. Solo’s flight characteristics, performance and robustness are a testament to the power and adaptability of APM:Copter, which is why we’re so pleased today to officially open that source code to the world at large: The repository with full history is now available for download on GitHub, the first of many development doors that we’ll be opening on Solo.
In addition to opening Solo source, we are today publishing the set of guiding principles that went into developing all of Solo’s subsystems--3DR’s Open Source Policy. The policy, developed by the 3DR software engineering team in conjunction with the the community, addresses key questions: How do we do development? What do we choose to open? Why do we do it in the first place? For 3DR, the policy represents a set of guiding principles on how we plan on doing development, and we feel it important to, in turn, open to the broader community for clarity, accountability and, well, because we’re excited to share it!
Solo: Open for development
We placed open source hardware and software at the core of Solo and view it as essential to our development and platform strategy. But it doesn't stop with the source! We strive to put powerful tools in the hands of developers. In some cases this means source code, and we plan on opening other parts of Solo, including much of SoloLink. In all cases this means making Solo the number one development platform, which means great APIs and developer tools. We plan on deepening DroneKit integration into Solo, so that developers can easily add new shots in Python and apps on Android, with new language bindings for other platforms coming soon.
The word ‘platform’ is getting quite a bit of traction these days. However, we believe it’s not enough to call something a platform ahead of building it. A platform isn’t an over-engineered airframe, coincidentally exposed cables or slides in a presentation; it’s a bolt pattern, a pinout, an API and a source code that exists in the real world with engineers to support it. So rather than pay lip service to the term, we chose to place the world’s leading autopilot development platform--APM:Copter--at the heart of Solo, running on the new Pixhawk 2. Connected to the flight controller we have SoloLink, which brings the power and flexibility of Linux computing onboard a consumer vehicle for the first time and appeals to an even broader set of developers. We also added an accessory port, 3DRBUS, on the bottom so that kickstarter projects, academics and businesses can easily integrate their own hardware. We developed DroneKit for use on Solo so that web and mobile developers can build businesses on top of this hardware and software. Most important, we know a great platform gets better with time, and we plan on supporting Solo for years to come.
This is the Solo Developer road map. Let us know what you think. Help us build Solo into the premiere drone platform, and the best home for developers around the world.
Comments
@JB,
Someone already posted some tear down pictures on RCG a while back. The specific Freescale iMX6 model used is the MCIMX6S5DVM10AC.
Core Processor: ARM® Cortex®-A9
Number of Cores/Bus Width: 1 Core, 32-Bit
Speed: 1.0GHz
Co-Processors/DSP Multimedia: NEON™ SIMD
RAM Controllers: LPDDR2, LVDDR3, DDR3
Graphics Acceleration: Yes
Ethernet: 10/100/1000 Mbps (1)
USB: USB 2.0 + PHY (4)
Voltage - I/O: 1.8V, 2.5V, 2.8V, 3.3V
Operating Temperature: 0°C ~ 95°C
Security Features: ARM TZ, Boot Security, Cryptography, RTIC, Secure Fusebox, Secure JTAG, Secure Memory, Secure RTC, Tamper Detection
Additional Interfaces: CAN, I²C, I²S, MMC/SD/SDIO, SAI, SPI, SSI, UART
Detailed information available here: http://www.freescale.com/files/32bit/doc/data_sheet/IMX6SDLCEC.pdf
opensourcing the ardu code was actually required by the GPL since it's being distributed and under the GPL...
Excellent !!!
Thanks Brandon, really great to see this!
I'd also like to thank 3DR for going beyond the minimum required for releasing this code. The git tree also includes some of the upcoming work which has been happening in collaboration with the ArduPilot dev team. A good example of this is the work Sid has been doing on remote logging of DataFlash messages:
https://github.com/3drobotics/ardupilot-solo/pull/79
that is a very nice piece of work and it's great to see the development happening in public!
Cheers, Tridge
From what I can tell from the BOM and other documents they do not include the specification on the 1GHz CPU used on the Solo platform. Will this 1GHz CPU board be available as a separate PXH 2 companion board for DIY or will it remain proprietary to the Solo platform? Is there any detailed information on this non-AP component as to ascertain if it has the capacity to run custom software (like recognition, 4G modem, Mavproxy), beyond it's wifi, camera control, and telemetry streaming abilities? Also will the Solo hand remote be available to open source developers as well and become available to purchase individually, maybe in conjunction with a PXH2?
Regards
JB
Does that mean that there is potential for support of other cameras?
there is a Solo specific MOD group on Facebook
SOLO MOD CLUB
Where you leave your warrantee at the door when you enter!
EPIC! Thanks so much!
I'm so excited. i have vagrant instances and python scripts ready to go!
Very cool!