Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(autoware_overlay_rviz_plugin)!: removed the blinking function of turn_signal #10319

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

yhisaki
Copy link
Contributor

@yhisaki yhisaki commented Mar 21, 2025

Description

Currently, the display of turn_signal is blinking. However the blinking feature makes difficult to debug planning modules. This PR removes the blinking feature.

before (x3)

blinker_before.mp4

after (x3)

blinker_after.mp4

Related links

Parent Issue:

  • Link

How was this PR tested?

Notes for reviewers

None.

Interface changes

None.

Effects on system behavior

None.

… turn_signal

Signed-off-by: Y.Hisaki <yhisaki31@gmail.com>
@yhisaki yhisaki added the run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Mar 21, 2025
@yhisaki yhisaki changed the title feat!(autoware_overlay_rviz_plugin): removed the blinking function of turn_signal feat(autoware_overlay_rviz_plugin)!: removed the blinking function of turn_signal Mar 21, 2025
Copy link

Thank you for contributing to the Autoware project!

🚧 If your pull request is in progress, switch it to draft mode.

Please ensure:

@yhisaki yhisaki requested a review from satoshi-ota March 21, 2025 07:03
Copy link

codecov bot commented Mar 21, 2025

Codecov Report

Attention: Patch coverage is 0% with 4 lines in your changes missing coverage. Please review.

Project coverage is 25.93%. Comparing base (98ea837) to head (6dd0758).
Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
...e_overlay_rviz_plugin/src/turn_signals_display.cpp 0.00% 4 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff           @@
##             main   #10319   +/-   ##
=======================================
  Coverage   25.93%   25.93%           
=======================================
  Files        1383     1383           
  Lines      106829   106823    -6     
  Branches    40907    40905    -2     
=======================================
  Hits        27705    27705           
+ Misses      76416    76410    -6     
  Partials     2708     2708           
Flag Coverage Δ *Carryforward flag
differential 0.00% <0.00%> (?)
total 25.93% <ø> (+<0.01%) ⬆️ Carriedforward from 98ea837

*This pull request uses carry forward flags. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@yhisaki yhisaki requested a review from xmfcx March 21, 2025 09:08
@yhisaki
Copy link
Contributor Author

yhisaki commented Mar 21, 2025

@xmfcx
I think the blinking function was introduced by you.
I think the visualization is nice, but it makes it difficult to debug turn signals.
Do you think it is OK?

@mojomex
Copy link
Contributor

mojomex commented Mar 21, 2025

@xmfcx @yhisaki A compromise might be to let it blink, but have the OFF color be a darker shade of green - so even when the blinker is in its OFF-phase the user can tell that the blinker is active.

@xmfcx
Copy link
Contributor

xmfcx commented Mar 21, 2025

@yhisaki could you make it as an option in the rviz panel?

image

Here, add a new option like this:

  • Turn Signal Mode
    • Static
    • Blinking

You can achieve this with an rviz_common::properties::EnumProperty:

@xmfcx
Copy link
Contributor

xmfcx commented Mar 21, 2025

A compromise might be to let it blink, but have the OFF color be a darker shade of green - so even when the blinker is in its OFF-phase the user can tell that the blinker is active.

This could work too but 2 bad things could come out of it as well:

  • if too dark, the off color could be hard to see
  • if too vibrant, the off color could make it look ugly

So just an option would help debuggers debug and let actual users get experience they would expect from a real vehicle.


std::chrono::steady_clock::time_point last_toggle_time_;
bool blink_on_ = false;
const std::chrono::milliseconds blink_interval_{500}; // Blink interval in milliseconds
Copy link
Contributor

@xmfcx xmfcx Mar 21, 2025

Choose a reason for hiding this comment

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

Also when you make the update, please also make this blink interval 250.
500 means it will blink at 1 Hz.
But it can be up to 2 Hz for most vehicles.
https://www.youtube.com/watch?v=iK2K9e_tcdI
At least in this video, I calculated it to be 180 clicks per minute https://www.beatsperminuteonline.com/ with this site.
Which makes 3 ticks per second, so we can set this blink_interval_ to 333 to make it 1.5Hz

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci)
Projects
Status: To Triage
Development

Successfully merging this pull request may close these issues.

3 participants