Skip to content

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

Description

@yadnyeshwar

Description

The rclcpp examples repository contains minimal timer demonstrations (e.g., examples_rclcpp_minimal_timer), which help beginners understand how to execute periodic callbacks using ROS 2 timers.

However, the rclpy examples currently include:

  • minimal_publisher
  • minimal_subscriber
  • pointcloud_publisher

but there is no minimal example demonstrating the use of create_timer() in Python.

Since timers are a fundamental mechanism in ROS 2 for running periodic tasks (such as sensor polling, monitoring loops, or periodic logging), a minimal Python example could help beginners understand this concept more easily.

Proposed Addition

Add a simple example under:

rclpy/topics/minimal_timer/

Possible structure:

rclpy/timer/minimal_timer/
 ├── minimal_timer.py
 └── README.md

The example could demonstrate:

  • Creating a ROS 2 node
  • Creating a timer using create_timer()
  • Executing a periodic callback
  • Logging output at fixed intervals

Motivation

This would:

  • Improve parity between rclcpp and rclpy examples
  • Help beginners understand periodic execution in ROS 2
  • Provide a simple reference implementation for timers in Python

If this addition is considered useful, I would be happy to implement the example and submit a PR.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions