micro-ROS / micro-ROS/micro_ros_zephyr_module

Long execution time rcl_publish function

Open
#140 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
92
Forks
56
PR merge metrics
No merged PRs in 30d

Description

Long response times rcl_publish

  • Hardware description:
    STM32H743ZI
  • RTOS:
    Zephyr
Steps to reproduce the issue / behaviour

When running the rcl_publish() micro-ROS function using the best-effort publisher I notice that the function alone takes about 2ms before it completes the function call. My expectation was that this time would be lower.

Expected behavior

When looking at older questions I noticed that the expected time for a rcl_publish function should be around 40us. i do however not see any options to achieve this timing.
https://github.com/micro-ROS/micro_ros_arduino/issues/20#issuecomment-723097131

Therefore, I wondered what I have to do in order to get better function completion times.

Thanks and kind regards,

Daniël

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the rcl_publish() call in the micro-ROS Zephyr setup and reproduce the roughly 2 ms completion time on the STM32H743ZI with a best-effort publisher. Compare the observed timing with the expected 40 us and determine which configuration or execution path accounts for the difference. Done means the cause and a concrete way to reduce or explain the timing are documented or fixed.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.