Canonical is today bringing Snappy Ubuntu Core out of the cloud and into physical devices with the reveal of Snappy Core for smart devices.
First announced in December 2014, Snappy Core is a new lightweight Ubuntu distribution designed for the cloud and Internet of Things (IoT) specifically. Before today, only the cloud image had been revealed, but now the company is showing off its work on real connected devices.
Among the first wave to use Snappy Ubuntu Core on devices will be “pioneers in robotics, drones and open hubs for connected things,”the company said.
With this launch, Ubuntu is looking to draw on its wide-ranging developer support to get underway with its machine-to-machine ambitions. There are, apparently, big name deals to come, but right now the focus is on the hardcore inventors, makers and creators; the “crazies”, as Canonical and Ubuntu’s founder Mark Shuttleworth told TNW.
“We didn’t want to crowd out this launch with those [big name] kinds of brands, because we’re very specifically focused at the crazies, the innovators, the guys that are building lawnmower robots and telco base stations.”
What is Snappy?
At the heart of Ubuntu’s IoT plan is Snappy, its new package distribution system – and while that might not sound overly exciting, it enables a whole range of new scenarios for Ubuntu as a platform.
In a nutshell, Snappy provides a guaranteed upgrade or installation of a software package – else it won’t install at all. This means that you can’t brick a device with a software upgrade, it either succeeds or makes no changes.
“Snappy is Ubuntu. You can log into it and it looks just like Ubuntu and it’s completely familiar until you try and install a piece of software. You’ll be told that the old package management system doesn’t work here and that the new one is called Snappy.
Snappy has some really nice properties… Every change to the system either succeeds or doesn’t happen – we call that a transactional systems management approach. The way we lay the files down on the image is very different and allows us to essentially guarantee that upgrades either succeed or never happen.
We launched that in the cloud market because that’s where our developers are strongest – it costs developers very, very little put up one of those images and play with it.”
Where the company thinks Snappy is strongest, though, is in devices, and that’s pretty obvious when it’s strongest point is this transactional upgrade mechanism. Cloud-based software is relatively easily upgraded by growing a new virtual machine alongside your existing one, and then removing the original once you’re happy. In low-cost connected devices, however, things are a bit different.
As Shuttleworth points out, if you make hardware that’s distributed around the world and roll out a dodgy software update, things aren’t so easy to fix.
“Imagine you have a Wi-Fi access point in a building on the other side of the world, you can’t just grow a new version of the software. In the device environment that transactionality, that crispness of the update mechanism is really, really attractive.”
What Snappy Ubuntu Core hardware will arrive first – and when?
Shuttleworth says that it’s the people working in robotics, consumer drones, intelligent security sensors and cameras, and a whole lot more who are most excited about Snappy – essentially anyone looking to build a physical, connected products in their millions; when working at that scale, you really want to reduce the chance of failure during an upgrade to zero, or as close as possible.
Organisations like the Open Source Robotics Foundation (OSRF) and Erle Robotics are already integrating the platform into their workflows, and the Erle-Copter is the world’s first Ubuntu Core-powered drone.
Alongside gaining bullet-proof software updates, devices that use the platform also get the option to deliver their own apps for users via Ubuntu’s white-label app store and the benefit of enhanced security.
Other companies, like Ninja Blocks, are building smart home control and automation systems based on Ubuntu Core and Snappy applications.
While Shuttleworth has always professed his vision for Ubuntu as one core OS tweaked to run across a multitude of different devices, the actual delivery of the promised devices is something that often fails to live up to its promise – Ubuntu on phones and tablets would be one example that have yet to really materialize – at least not in a retail setting. When was the last time you saw an Ubuntu phone on shelves?
However, Shuttleworth explained to me that rather than the Snappy Core IoT work being a distraction from delivering on these earlier goals, most of it grew out of the mobile development, which is still very much ongoing with an imminent announcement teased for early next month.
“The software update mechanism that we built here is entirely a product of the mobile development… All of that R&D has happened as part of the mobile effort; what we’ve done here is generalize this to devices that you control through the Web rather than a touchscreen on it.
Working with operators and working with phone manufacturers, we didn’t want to go out with the Snappy system until it really was incredible. We’re at that point now. The timing isn’t coincidental, we’re about to launch a production phone, so that makes the update mechanism production [standard], so here’s the device version of it.”
The actual hardware that Snappy Ubuntu Core needs to run is fittingly minimal. On the list of requirements is a 600MHz processor, 128MB RAM (of which, the system uses 40MB – the rest is for apps) and 4GB of flash memory for factory reset and system rollback settings. Boards like the Beaglebone Black are being recommended for dev work.
Canonical added that for x86 systems, pretty much any spare laptop, PC or virtual machine will be able to be used as a development platform.
“There will be a stable release of Ubuntu Core shortly, so that becomes a viable target for people who ship systems,” Shuttleworth explained.
Right now, it’s a “roving development release” that changes virtually every day. As such, the company hasn’t been advising device makers to build products on this code. Now, it’s almost ready to let those first devices loose.
“We’re not ready to announce a date just yet, but it won’t be long. We’ve lined things up,” Shuttleworth said.
He added specifically that the company isn’t waiting for its next long-term release to launch Ubuntu Snappy Core for devices, which means it’ll arrive before version 15.04 in April.
If you want to get started before that with prototyping, you can get going with the beta version of Snappy Ubuntu Core for devices released today.