ROS 2 TSC Meeting Agenda
2020-03-19
-
Attendees
- Aaron Blasdel (Amazon)
- Joe Speed (ADLINK)
- Lokesh Kumar Goel (LG Electronics)
- Dejan Pangercic (Apex.AI) - participation pending a sleeping baby:baby:
- Jaime Martin Losa (eProsima)
- Steve Macenski (Samsung Research)
- Geoffrey Biggs (Tier IV)
- Thomas Moulard (Amazon)
- Sean Yen (Microsoft)
- Kyle Fazzari (Canonical)
- Karsten Knese (Bosch)
- Brian Gerkey, Dirk Thomas, Louise Poubel, Tully Foote (Open Robotics)
- Toffee Albina (TRI)
- Jerry Towler (SwRI, representing GVSC)
- Will Son (ROBOTIS)
- Harold Yang (Intel)
-
Preliminaries
-
Old business
- [DThomas] Update on REP 2005: ROS 2 Standard Library (née ROS 2 Essentials)
- Goal of having this be a way to scope what the TSC is responsible for and expected to contribute to.
- Open question with connection to REP 2004, discussion in the thread.
- We should sort out REP 2005 open questions over one call with a subset of TSC, to be scheduled by Gerkey. Goal is to merge before the next TSC meeting.
- DThomas
- Gerkey
- Biggs
- Kyle
- Steve
- Aaron B
- Lokesh Kumar Goel
- [Knese] ROS2 introduction material for various stakeholders.
- Feedback from Bosch was provided to Open Robotics to inform the forthcoming ros.org refresh
- [Gerkey] ROSCon 2020: proceeding as planned and monitoring the situation.
- [Biggs] Same for ROSCon JP
- [Gerkey] Default RMW for Foxy
- Not changing for Foxy (May 2020) because of risk resulting from such a late change.
- Working on defining a process to follow.
- [DThomas] Update on REP 2005: ROS 2 Standard Library (née ROS 2 Essentials)
-
New business
- [Joe] CI topic was raised in ROS Tooling WG
- Eager to help improve, some notes:
- ~2/3 of Dan Rose @rotu’s recent tickets & PRs are for CI
- some tests pass local but fail intermittently on CI infrastructure. These are thought to be issues with CI:
- ros2node: multiple RMWs issue, maybe ros2cli#465
- ros2service: affects multiple RMWs ros2cli#466
- rclcpp: suspected timer issue rclcpp#1008
- rcl timer issue: flaky behavior rclpy#513 rclpy#520
- Tooling WG mentioned liking GitHub Actions for CI
- Github pipeline is free for OS, works well e.g. DDS C++ API
- Thomas mentioned github action for coverity code analysis (ros example), is free. Joe checking if C++ support improved.
- Separable infrastructure vs code issues improvements on both sides possible.
- [Dejan] Similar triage process at Apex, can give some guidance. Smaller scope than entire ROS buildfarm.
- [Blasdel] There might be (Jenkins) plugins that can track flakey tests.
- [Thomas M] Smaller isolated systems are easier for community contributions, only useful for CI though.
- [Gerkey] Open Robotics now staffing a rotating full-time build farmer who manages the running systems and when possible makes improvements to them.
- Eager to help improve, some notes:
- [Fazzari] A TSC GitHub team would be useful
- Which org? Best candidate is osrf. Tully to investigate.
- [Fazzari] Working Group template is ready for review by TSC
- Similar to Tooling and Security working groups, not required to be the same, but could give a good baseline for other working groups.
- Asking for TSC review and approval. Fazzari and Thomas M to do via Discourse poll in tsc category or GitHub review (using aforementioned TSC team).
- [Gerkey] Discussion on TSC structure and membership criteria
- Consensus: some improvements can be made but overall the present approach is working well and is preferred over making significant changes.
- [Joe] CI topic was raised in ROS Tooling WG
-
Recurring business
- Next ROS 2 distro release
- [DThomas] [10 mins] Update on schedule and status
- build.ros2.org is using Ubuntu Focal for Foxy for a while
- ci.ros2.org is switching all Foxy jobs from Ubuntu Bionic to Focal very soon
- Merging post-Foxy release schedule PR soon
- Yearly release
- LTS - even years
- Merging Foxy details PR soon
- The C++ minimum version is still set at C++17 (even though until now we don’t have C++17 specific code, usage of
std::pmr::polymorphic_allocator
might land if we have time for it)- Option: possibility to reimplement using C++14
- Option: ifdef if polymorphic allocator isn’t available keep existing (broken) behavior
- Consider changing to “C++14 plus polymorphic allocator”
- Eclipse Cyclone DDS has been bumped to tier-1
- Connext likely to stay at version 5.3.1 due to lack of contribution (from RTI or others)
- Waiting for a clarification on OpenEmbedded since it is the only platform which changes the targeted OS version during a ROS distro cycle
- Possibly resolved as https://github.com/ros-infrastructure/rep/pull/234 was just merged.
- Cent OS 7 support seems to be not feasible since it only ships with Python 3.6 and we have settled on the minimum version to be Python 3.7 for quite some time
- The C++ minimum version is still set at C++17 (even though until now we don’t have C++17 specific code, usage of
- Participant 2 node mapping: ongoing
- RMW FastRTPS up-to-date; RMW CycloneDDS works “as-is”, doing further refinement; Connext likely to keep current behavior
- Improvements to executor: ongoing work with Bosch
- [DThomas] [10 mins] Update on schedule and status
- Working groups [5 mins each]
- [Speed] Edge AI
- Strong interest and participation
- OpenCV is where ML is used the most
- Get Foxy to OpenCV 4.2 to facilitate use of ML
- Not much ML in ros core yet besides OpenCV
- good contribution by Intel, mostly OpenVINO
- Note: most ML in ros is private repos, prototypes or orphaned
- [Macenski] Navigation
- Finished documentation sprint
- Cross-WG effort for Navigation2 stability testing had great results
- Charging forward towards the V1 release. Targeting Foxy but may take til end of 2020 with current participation rates.
- Reducing meetings to every other week
- Question on “official” drivers and “official” packages
- [Pangercic] Real-time
- Many new people joined the working group => Increased interest and participation
- We are currently in touch with the ros_control working group. => https://github.com/ros-controls/ros2_control/issues/48#issuecomment-599695888
- They are interested in feedback for their controller manager, new features for executors and how to measure the executor real-time performance.
- We expect to have feedback in both directions.
- Feedback for the ROS community and possible improvements
- microROS and ROS2 was shown at the ERF in Malaga => lots of interest, participation: 70% academia, 30% industry (based on a poll in one workshop, that took place in the larger conference room)
- General feedback (AI for OSRF): major packages (navigation2, MoveIt2, drivers for sensors) not supported && documentation missing on the ros2 website
- General feedback (AI for OSRF): Can we have 1pager for ROS 2 (for decision makers who are not fully technical) to explain what is ROS 2 and how can it be used in products => broader topic is to have more marketing material
- 2-pager exists: https://index.ros.org/doc/ros2/Marketing/
- how to accelerate porting to ROS 2
- Peer pressure on developers
- Table/page with the status of ROS 2 packages (compared to ROS 1)
- Improve this https://index.ros.org/doc/ros2/Features/#features
- [Gerkey] This information was also included in the detailed feedback from Bosch on improvements for ros.org.
- ROS 2 on QNX
- There is interest on this topic: https://discourse.ros.org/t/who-is-using-ros-on-qnx/12978
- Apex.AI contributed providing instructions: https://gitlab.apex.ai/snippets/97
- Andrei: list of RTOSes on which ROS 2 runs (VXWorks, QNX, eSol)
- AI Dejan: create a list with the associated Tier level: https://www.ros.org/reps/rep-2000.html
- rclcpp executor refactoring
- A PR (making executors optional, adding a wait-set) is forthcoming from William
- rclc executor
- PR merged https://github.com/ros2/rclc/pull/13
- 2nd PR: design doc and plan for the architecture
- SLX ROS Performance Testing Platform
- We are looking into possibilities to setup the testing without realtime constraints at first as a real-time capable HW is not available on AWS (at least to our knowledge).
- [Biggs] Safety
- No progress. Need to review usefulness of this WG.
- Decision: Put on hiatus pending discussion of a productive way forward
- No progress. Need to review usefulness of this WG.
- [Fazzari] Security
- WG has taken over maintenance of SROS2 utilities
- Completed design doc for switching from nodes to contexts, had excellent discussion there
- Draft PR in place to switch to contexts in SROS2 utilities
- PR up to enable Tooling WG’s GitHub actions in SROS2 utilities
- Designing/reviewing RMW integration necessary to enable security logging (tying in with Canonical’s work adding a logging plugin to Fast RTPS)
- Leadership created WG template with Tooling WG
- Nearly done enabling security in rmw_cyclonedds
- [Blasdel] Tooling
- More WG activity this cycle from TSC members, such as Bosch and Microsoft.
- Cross Compile: New release with lots of usability improvements
- Rosbag2: work begun to support QoS handling (record offered QoS profiles and automatically use correct ones for recording and playback)
- System Metrics: Work ongoing to implement Topic Statistics utilities and integrate into rclcpp Subscriptions
- Github Action CI: Improving stability of Windows support
- [jaime] Embedded
- Micro-ROS: updated docs and tutorials
- Zephyr is now integrated in the build system along with NuttX and FreeRTOS
- [Karsten] ROS-control
- First Kick-off meeting last week Wednesday
- Broad Audience (roughly 10 people) to get up to speed and iterate over design docs
- [Speed] Edge AI
- Next ROS 2 distro release