ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

ROS on ARM Cortex-M microcontrollers?

asked 2014-02-20 10:52:10 -0500

asperion gravatar image

updated 2016-10-24 09:02:44 -0500

ngrennan gravatar image

Is it possible to run ROS, or some cut-down part of it, on ARM Cortex-M processors? There's some pretty nice chips out there, like the STM32F429ZIT6, a Cortex-M4F with up to 2MB Flash, 256k RAM and 100+ I/O lines. These sorts of uC's also include lots of ADC, DAC, timer/counter etc hardware that seems to be less common on the faster Cortex-A SoC's but that would be pretty handy on a lot of robots.

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted

answered 2014-02-20 15:37:21 -0500

There are various in-progress projects to implement the ROS communication stack in a way that has no dependencies and could work with, for example, LWIP. The most complete at this point is probably rosc.

That said, my preferred solution is to use rosserial—you run a lightweight server node on your Linux/ROS machine, which proxies topics and services from the "real" ROS network over a serial or socket connection to the microcontroller. There are several examples of rosserial client libs; unfortunately none for a Cortex at this point, but it wouldn't take much to port the Arduino example to it.

Disclosure: I'm the author of the performance- and reliability-oriented C++ rosserial_server implementation.

edit flag offensive delete link more



Thanks, that's a pretty comprehensive answer.

asperion gravatar image asperion  ( 2014-03-04 10:01:49 -0500 )edit

Is there any news about the ROS support for ARM-based boards?

Marcus Barnet gravatar image Marcus Barnet  ( 2017-04-18 03:17:16 -0500 )edit

There are official armhf packages from OSRF for Ubuntu Xenial (ROS Kinetic). Is that what you mean?


mikepurvis gravatar image mikepurvis  ( 2017-04-24 10:14:32 -0500 )edit

Thank you for your answer! I mean if ROS has now full support and if it is possible to use all the ROS packages like robot_localization and move_base.

Marcus Barnet gravatar image Marcus Barnet  ( 2017-04-24 10:23:12 -0500 )edit

Question Tools

1 follower


Asked: 2014-02-20 10:52:10 -0500

Seen: 1,928 times

Last updated: Feb 20 '14