Unity-Technologies / ROS-TCP-Endpoint

ROS package used to create an endpoint to accept ROS messages sent from a Unity scene using the ROS TCP Connector scripts
Apache License 2.0
177 stars 118 forks source link

AIRO-1707 Implement latching in Publisher #135

Closed DLu closed 2 years ago

DLu commented 2 years ago

Proposed change(s)

Resolves TODO in code, by reading latch parameter and setting QoS accordingly.

Types of change(s)

Testing and Verification

I created a publisher in Unity with latch=true

        ros.RegisterPublisher<OccupancyGridMsg>("static_map", 1, true); // queue_size=1, latch=true
        static_map = getOccupancyGrid();
        static_map.header.stamp = new TimeStamp(Clock.time);
        ros.Publish("static_map", static_map);

Without the fix, a latched subscriber will not recieve the message if it joins after the message is first published.

Test Configuration:

Checklist

Other comments

unity-cla-assistant commented 2 years ago

CLA assistant check
All committers have signed the CLA.

at669 commented 2 years ago

Hi, thanks for the submission! I've created an internal ticket to follow this contribution, and the team will get back to you with updates.

As an FYI, I'm updating the name of this PR to match our internal ticket number to pass the jira-link Github Action.

DLu commented 2 years ago

Is there anything I can do to assist in the review process?

LaurieCheers-unity commented 2 years ago

Is there anything I can do to assist in the review process?

Hi, sorry for the delay, I will be reviewing this today.

LaurieCheers-unity commented 2 years ago

Even with this fix, I'm not receiving the latched message. How are you testing it?

LaurieCheers-unity commented 2 years ago

Let's just implement custom QoS settings per publisher, instead of trying to translate ROS1 concepts.

DLu commented 2 years ago
DLu commented 1 year ago

Is this project still active within Unity?