Skip to content

Add minimal rclpy timer example demonstrating create_timer() usage#437

Open
yadnyeshwar wants to merge 3 commits into
ros2:rollingfrom
yadnyeshwar:add-rclpy-minimal-timer-example
Open

Add minimal rclpy timer example demonstrating create_timer() usage#437
yadnyeshwar wants to merge 3 commits into
ros2:rollingfrom
yadnyeshwar:add-rclpy-minimal-timer-example

Conversation

@yadnyeshwar

Copy link
Copy Markdown
Contributor

This PR adds a minimal example demonstrating how to use
create_timer() in rclpy.

While the minimal publisher example already uses a timer internally,
this example focuses specifically on timer usage without publishing.

This provides a simple reference for beginners learning
periodic execution in ROS 2.

Closes #436

Signed-off-by: yadnyeshwar <yadnyeshwarasakhare@gmail.com>
Comment thread rclpy/timers/minimal_timer/README.md
…amples

Signed-off-by: yadnyeshwar <yadnyeshwarasakhare@gmail.com>
@yadnyeshwar
yadnyeshwar force-pushed the add-rclpy-minimal-timer-example branch from 927fffe to 4ca020b Compare March 9, 2026 17:11

@alsora alsora left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adding the python file is not sufficient.

you should create a package so that the script can be "built" and installed, and then run via ros2 run

@fujitatomoya

Copy link
Copy Markdown
Collaborator

@yadnyeshwar this is requested changes, friendly ping.

Signed-off-by: yadnyeshwar <yadnyeshwarasakhare@gmail.com>
@yadnyeshwar

Copy link
Copy Markdown
Contributor Author

@yadnyeshwar this is requested changes, friendly ping.

Thank you for the reminder and apologies for the delayed response. I was away for a short period due to personal reasons.

I have now addressed the requested changes by converting the example into an installable ROS 2 Python package so that it can be built and executed via ros2 run. I am currently verifying the CI results and will follow up with any additional fixes if needed.

Please let me know if there are any other adjustments you would like me to make.

@alsora

alsora commented Apr 8, 2026

Copy link
Copy Markdown

this still requires work.

  • there are two identical copies of the script (one under timers and one under topics)
  • the new files (setup, package, etc) were added to the topics folder rather than to the timers folder, where they should be.

@dlanov

dlanov commented Jul 16, 2026

Copy link
Copy Markdown

This PR appears to have been inactive since April, and the remaining review feedback looks narrowly scoped: remove the duplicate timer script and keep the complete installable package under rclpy/timers/minimal_timer. Are you still planning to update it? If not, I would be happy to prepare a clean rolling PR that preserves the example and addresses those points.

@yadnyeshwar

Copy link
Copy Markdown
Contributor Author

This PR appears to have been inactive since April, and the remaining review feedback looks narrowly scoped: remove the duplicate timer script and keep the complete installable package under rclpy/timers/minimal_timer. Are you still planning to update it? If not, I would be happy to prepare a clean rolling PR that preserves the example and addresses those points.

Hi @dlanov , thank you for following up. I'm still interested in completing this contribution and continuing to contribute to ROS 2. I've been reviewing the current state of this PR against the latest rolling branch and noticed that the repository structure has changed since the original review. Before updating the branch, I'd like to confirm whether you would still prefer the installable package to live under rclpy/timers/minimal_timer as mentioned in the earlier review, or if you'd prefer the PR to follow the current repository layout. I'm happy to update the PR accordingly. Thank you!

@dlanov

dlanov commented Jul 16, 2026

Copy link
Copy Markdown

@yadnyeshwar
Thanks for confirming. I'll step back and leave the layout decision and next update to you and the maintainers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add minimal_timer example for rclpy to demonstrate periodic execution using create_timer()

4 participants