Skip to main content

Your submission was sent successfully! Close

Thank you for signing up for our newsletter!
In these regular emails you will find the latest updates from Canonical and upcoming events where you can meet our team.Close

Thank you for contacting our team. We will be in touch shortly.Close

Blog posts tagged
"ROS"


Kyle Fazzari
28 August 2019

Canonical joins the ROS 2 Technical Steering Committee

Internet of Things Article

We at Canonical care deeply about robotics. We firmly believe that robots based on Linux are cheaper to develop, more flexible, more secure, and faster to market. One of the contributing factors to this being the case is the Robot Operating System (ROS). ROS is by far the most popular middleware for creating Linux-powered robots. ...


Ted Kern
21 August 2019

How to add a linter to ROS 2

Internet of Things Article

A well configured linter can catch common errors before code is even run or compiled. ROS 2 makes it easy to add linters of your choice and make them part of your package’s testing pipeline. We’ll step through the process, from start to finish, of adding a linter to ament so it can be used ...


Ted Kern
15 August 2019

Linting ROS 2 Packages with mypy

Internet of Things Article

One of the most common complaints from developers moving into large Python codebases is the difficulty in figuring out type information, and the ease by which type mismatch errors can appear at runtime. Python 3.5 added support for a type annotation system, described in PEP 484. Python 3.6+ expands this with individual variable annotation ...


alfonsosanchezbeato
18 June 2019

Your first robotic arm with Ubuntu Core, coming from Niryo

Ubuntu Article

Niryo has built a fantastic 6-axis robotic arm called ‘Niryo One’. It is a 3D-printed, affordable robotic arm focused mainly on educational purposes. Additionally, it is fully open source and based on ROS. On the hardware side, it is powered by a Raspberry Pi 3 and NiryoStepper motors, based on Arduino microcontrollers. When we found ...


Kyle Fazzari
9 April 2019

Speed up your ROS snap builds

Internet of Things Article

A while back I wrote a post about distributing a ROS system among multiple snaps. If you want to enable some sort of add-on story, you need to have multiple snaps, and that remains the way to do it today with ROS. That approach works, but I’ll be the first to admit that it’s not ...


Martin Wimpress
22 March 2019

Snapcraft Summit Montreal

Cloud and server Article

Following previous events in New York, Seattle, and London, the fourth Snapcraft Summit is taking place in Montreal, Canada from June 11th to 13th 2019. We have partnered with Travis CI this time and also expanded the scope of the event to three tracks. Snapcraft Summit Snapcraft is the universal app store for Linux that ...


Kyle Fazzari
11 March 2019

ROS 2 launch: required nodes

Cloud and server Article

When using the Robot Operating System (ROS), it’s fairly common to want to shut down a launched system if a specific node (or set of nodes) exits. This is pretty easy in ROS1, because launch files support the required attribute on each node. As a result, crafting a two-node system where one of the nodes ...


Kyle Fazzari
28 February 2019

Building ROS 2 snaps with Colcon

Internet of Things Article

The snapcraft CLI has supported building ROS1 snaps for a while via the catkin plugin. We supported the ROS2 betas via the ament plugin, but that was before Open Robotics had a ROS2 package repository setup, which meant that the ament plugin built the ROS2 underlay from source, and it was predictably dreadfully slow. However, ...


Eric Jensen
15 February 2019

The forecast is robots

Internet of Things Article

Robots are an increasingly important part of our lives, in more ways than we realise. I’m not talking just about Roombas, or the toy robots that inhabit the wish lists of the world’s children (and the young at heart). Robots are increasingly behind the scenes, powering the modern world we experience daily. From clothing to ...


Kyle Fazzari
16 March 2018

Your first robot: Sharing with others [5/5]

Desktop Article

This is the fifth (and final) blog post in this series about creating your first robot with ROS and Ubuntu Core. In the previous post we discussed methods of control, did a little math, and wrote the ROS driver for our robot. But it still required several nodes to be running at once, and sharing ...


Kyle Fazzari
9 March 2018

Your first robot: The driver [4/5]

Desktop Article

This is the fourth blog post in this series about creating your first robot with ROS and Ubuntu Core. In the previous post we worked on getting data out of the wireless controller and into ROS in a format meant for controlling differential drive robots like ours: the Twist message. Today we’re going to create ...


Kyle Fazzari
11 February 2018

Your first robot: The controller [3/5]

Desktop Article

This is the third blog post in this series about creating your first robot with ROS and Ubuntu Core. In the previous post you were introduced to the Robot Operating System (ROS), and got your robot moving by ROSifying one of the CamJam worksheets. Today we’re going to move beyond the CamJam worksheets, and work ...