Skip to content

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

@yadnyeshwar

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.

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