WitMotion UART driver library and ROS driver

WitMotion is a Chinese manufacturer issuing IMUs and motion estimation sensor modules dedicated to mobile embedded devices. These modules are very interesting for being used in ROS because most of them support TTL interface compatible with Arduino, Raspberry PI and other embedded platforms, USB-serial converter etc. I tried to investigate the existing library connecting Witmotion sensor equipped with USB to ROS. But this library seems to be very poorly documented and it depends on ECL which is not used in our projects. As ROS includes very well known and documented Qt dependency, I decided to create my own library based on QSerialPort interface implementing the classic QThread worker class approach. After the tests on different IMUs, my organization decided to allow me to publish the source code here under the official account:

I want to introduce the library (undocumented pre-alpha at a time) and dedicated ROS wrapper to the community. Please feel free to leave issues, pull requests, test reports, make forks etc. The code will be improved further. The ROS wiki page is witmotion_ros - ROS Wiki

2 Likes

In the last commit I added the untested code for GPS message decoding functional. Please, guys who own Witmotion sensors with GPS support, feel free to test the code and to report any issues.

1 Like

Awesome initiative. Do you plan to add a ROS2 compatibility at some point ?

@Luczia the migration is already done in ros2 branch of the repository, but now I cannot find time to release for ROS 2, there is community assistance needed

GPS decoder routines are tested, fixed and released in the last noetic version 1.3.1. Thanks to @joewong00!

1 Like