Robotics

Whether you’re starting in the lab or already in production, Canonical can help manage the complexity of the open-source software underpinning your robot’s brains and personality.

The State of Robotics – September 2019

The Ubuntu robotics team presents, The State of Robotics. A monthly blog series that will round up exciting news in robotics, discuss projects using ROS, and...

Robotics security: What is SROS 2?

We at Canonical have been hard at work on the security features of version 2 of the Robot Operating System (ROS 2). However, if we lift our collective heads...

ROSCon Japan 2019!

ROSCon Japan 2019 was a resounding success. We took in the keynote speech from Ryan Gariepy, Co-founder and CTO of Clearpath Robotics. We demoed the first...

The teleop_tools arrive in ROS 2 Dashing!

After exploring some ROS 2 subtleties and implementing some CLI tools we felt were missing, the time has come to get our hands even more dirty. What better...

Building a better TurtleBot3

TurtleBot3 was released in 2017 and is positioned as a low-cost, open-source robot kit. For new owners of the TurtleBot3, there are various resources online...

Canonical joins the ROS 2 Technical Steering Committee

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...

Components vs. Plugins in ROS 2

After our series of post about ROS 2 CLI tools (1, 2), we continue exploring the ROS 2 realm taking a look at ROS 2 components and more specifically, how they...

How to add a linter to ROS 2

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...

Linting ROS 2 Packages with mypy

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...

Creating a ROS 2 CLI command and verb

Following our previous post on ROS 2 CLI (Command Line Interface), we will see here how one can extend the set of existing CLI tools by introducing a new...

ROS 2 Command Line Interface

Disclosure: read the post until the end, a surprise awaits you! Moving from ROS 1 to ROS 2 can be a little overwhelming.It is a lot of (new) concepts, tools...

Your first robotic arm with Ubuntu Core, coming from Niryo

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....

Customisable for the enterprise: the next-generation of drones

Drones, and their wide-ranging uses, have been a constant topic of conversation for some years now, but we’re only just beginning to move away from the...

Small Robot Company sows the seeds for autonomous and more profitable farming

In Europe, the cost of running a cereal farm – cultivating wheat, rice, and other grains – has risen by 85% in the last 25 years, yet crop yields and revenues...

Speed up your ROS snap builds

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...

ROS 2 launch: required nodes

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...