Ask Your Question

Qt Application with ROS

asked 2018-09-19 04:43:55 -0600

lvaroqui gravatar image

Good morning,

Platform : Ubuntu 16.04, ROS Kinetic

I'm building a robot and would like to integrate pretty QT GUI to it, the rqt architecture doesn't really suit my need cause I don't have enough control on the window and application itself.
Therefore I followed this tutorial :
Which uses :

Everything seems to work and I like having a node for QT, my concern is that I want to be sure that the QT application won't overload my micro-controller and that ROS is managing the QT process and able to restrict its performance to let more important stuff in the background happen. Is it the case with such a architecture ?

Thanks for your help,


edit retag flag offensive close merge delete


By micro-controller, I assume you mean processor? It would probably help to say what hardware you are running, e.g. a normal PC should handle a Qt GUI just fine, but a Raspberry Pi 1 might find it taxing.

john.j.oneill gravatar image john.j.oneill  ( 2018-09-19 06:26:13 -0600 )edit

I'm going to use a Raspberry 3B+ :)

lvaroqui gravatar image lvaroqui  ( 2018-09-19 07:17:34 -0600 )edit

Well, in that case it certainly could slow down the system. Which of course begs the question, why do you need it to be "fancy" at all? That said, ros_qt should by default have the gui in a separate thread (if I recall correctly) and so it shouldn't impact ROS until it's slowing the whole system.

john.j.oneill gravatar image john.j.oneill  ( 2018-09-19 07:21:16 -0600 )edit

I need it to be fancy because a lot of different people with zero ubuntu, ros or computers in general knowledge, I'd like it to be the more straight forward and user friendly as possible :) Yeah I'm worried about the GUI slowing down the whole system and have bad impact on ROS thread...

lvaroqui gravatar image lvaroqui  ( 2018-09-19 07:25:51 -0600 )edit

That being said I'm going to try things and see if the raspberry has enough juice to make this happen, I'll figure something else over-wise

lvaroqui gravatar image lvaroqui  ( 2018-09-19 07:26:47 -0600 )edit

Specifically re: the RPi, it's a quad core, so your GUI thread should only use 25% of the CPU worst case, so your other ROS nodes should run just fine even if the GUI is laggy.

john.j.oneill gravatar image john.j.oneill  ( 2018-09-19 07:28:31 -0600 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2018-09-19 07:26:47 -0600

john.j.oneill gravatar image

This will very much depend on how "fancy" the Qt code is, as to whether it will impact anything at all. If it's just buttons and text boxes, this should be of no concern, but of course Qt apps can get very complex. If you want to try to keep the Qt process low priority, and you're running linux, that's a standard linux question, of which there's lot's of documentation out there, like this which should help you out.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools


Asked: 2018-09-19 04:43:55 -0600

Seen: 537 times

Last updated: Sep 19 '18