Ask Your Question

Creating a throttle node

asked 2012-08-01 01:35:26 -0500

bgagnon gravatar image


I was only able to find documentation online for command line tools for throttling or the other topic_tools for that matter.

Is there a way to create a throttle node from a launch file? I want to go from 30hz to something less. Thanks,


edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2012-08-01 01:50:11 -0500

Lorenz gravatar image

Just use the command line tools in roslaunch:

  <node name="foo_throttler" type="throttle" pkg="topic_tools" args="messages /input_topic 30 /input_topic_throttled" />
edit flag offensive delete link more


Ha! So simple that I didn't even try that. Thanks!

bgagnon gravatar image bgagnon  ( 2012-08-01 02:35:23 -0500 )edit

This is the correct answer but I wish there were a way to inform a node that you don't need the data at the higher rate. Without this capability, a lot of processing is wasted on the publisher.

sedwards gravatar image sedwards  ( 2012-08-01 04:50:22 -0500 )edit

I have tried this but I can not get the rate I want. For example, my input_topic is 200Hz, but my input_topic_throttled is only 25Hz, even if I use 100 in the args.

ZiyangLI gravatar image ZiyangLI  ( 2015-01-27 21:30:59 -0500 )edit

Ik it's a very late reply to this post but replying if it can help someone else. for @ZiyangLl comment, you can write it like this:

<node name = "input_topic_throttler" type="drop" pkg="topic_tools" args= "/input_topic 7 8 /input_topic_throttled" />

This will drop every 7 frames of incoming 8 frames, So 200/8 = 25 Hz (taking only one frame from every 8 frames, from a 200 frame stack)

one gravatar image one  ( 2020-08-05 12:34:02 -0500 )edit

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: 2012-08-01 01:35:26 -0500

Seen: 3,557 times

Last updated: Aug 01 '12