Robot Operating System (ROS) on Windows through Windows Subsystem for Linux (WSL)

Use ROS on Windows through WSL

Reflect Robotics
3 min readAug 28, 2021
HIWIN robots use ROS on Windows
HIWIN robots use ROS on Windows

The cost of running Robot Operating System (ROS) on Ubuntu OS has always been a pain in the ass for Windows users. Most roboticists use some proprietary software, like SolidWorks, which runs natively on Windows OS but not on the Linux GNU OS.

Since the advent of ROS, robot developers are compelled to use Linux machines because ROS was primarily targeted at Ubuntu OS. The pragmatic knowledge of ROS is now becoming essential for every roboticist. This has posed a great challenge to them as they have to manage at least two operating systems.

No one will love to move around with two computers all the time because they have to use some software that will not run natively on a single operating system. There has to be a solution.

Well, it turns out that there is more than one solution which all come with their own drawbacks. Some of these solutions are:

1. Dual boot your computer to run on Windows and Ubuntu. The major disadvantage of this method is that you have to shutdown your computer every time you need to access software not on the other OS. What a stress! Also, because both OS run on a different filesystem, you sometimes have problems accessing files.

2. Run either of the Operating Systems on a Virtual Machine (VM). The drawback here is sharing your Random Access Memory (RAM) with the Operating System on the VM. It makes your computer slow. This could be frustrating especially when you need a real-time operation. Life shouldn’t be this difficult.

3. Install ROS on Windows. While this method appears better than the previous ones because it overcomes their negative sides, it lacks full support and availability of some packages. ROS works fine directly on Windows until you need some packages that have not yet been developed for ROS on Windows. You don’t want to be stalk in the middle of robot development or learning.

4. Use ROS on Docker. This is a very good option but not what we want to discuss now.

The last option which is the aim of this post is to use ROS on WSL.

With the recent release of Windows 10, version 2004, Build 19041 and Windows Subsystems for Linux (WSL 2), you can now install Ubuntu on your Windows computer through the WSL 2, and then install ROS on the Ubuntu OS. Follow Jack Kawell's instructions to set up WSL and ROS on your Windows computer.

While WSL may be part of the Embrace, Extend, and Extinguish strategy of Microsoft, it is also one of the best methods to use ROS on Windows without having to sacrifice ease and accessibility compared to other previously mentioned methods.

With that, you can have ROS working fine on your Windows computer without much compromise.

--

--