When: 12:30 Lunch, Day 2, Sept 30th Where: FLORENCIA (Lunch Room A) How to find us: Look for our table(s) where I’ll be wearing a green Ivy cap, and a tan brown SROS shirt. Agenda: Bring your ideas, concerns, question after having pondered over the security talks from Day 1! Side Node: IROS 2018 | Mo-TUT-4: Securing Robotics with SROS2 (PM)
Agenda:
(1) get update from upcoming events in Europe
(2) watch our ROS-I demo
(4) talk about advance manufacturing/industrial applications
(3) ask your questions
When: 12:30 at Lunch, Day 2, Sept 30th Where: FLORENCIA (Lunch Room A) How to find us: Look for a guy wearing a C-turtle t-shirt with a big scarf and the same guy from the ros_control meetup. Agenda: We are looking for a friendly chat with fellow AV developers and those interested. What is it you’d use ROS for (and which flavour) and what is it you think could be improved on? What do you find challenging with this field? Do you think the future of AV lies in proprietary software or should be similarly opened up like many of the related research topics are?
Everyone is welcome, we only ask to leave your competitive hats at the hotel for this meetup
When: On Sunday, 18:30 after the always funny closing remarks by @rgariepy
Where: At The Construct booth #17
How to find us: just go to the booth n.17
Agenda: we are going to discuss about how can we have an environment for reproducing robotics results and benchmark them. Questions to answer:
Is ROS a good framework for reproducibility of robotics results?
Should reproducibility be based on bags, simulations or real robots?
Should we concentrate on reproducibility for a very specific robotics problem first, and then attack all other problems, or should we generate a common framework for any type of robotics problems?
How can we learn about reproducibility in other domains of science?
Atention we will record the whole audio discussion and publish it on the ROS Developers Podcast. I will act as moderator to ensure that we deal with all the points.
How to find us: Use the booth map or find the TurtleBot3 at the exhibition area
Agenda:
(1) Modular H/W ecosystem using ROS 2
(2) In celebration of the XEL Network Project release, 100 sets will be distributed free of charge at ROSCon2018
(3) ROS2 demo using TurtleBot3 and XEL Network
(4) Open discussion (e.g. ros2arduino, new ideas, roadmap, any questions)
When: 12:30 lunch day 1 (or any other time, really)
Where: FLORENCIA (Lunch Room A)
How to find us: Look for folks wearing bright orange Ubuntu lanyards. I’m afraid I don’t quite have the distinctive beard I previously had. Don’t worry, it’ll come back.
Agenda: I’m one of the primary snapcraft maintainers, and other engineers from Canonical are here as well. We’d love to talk about your experience creating ROS snaps, answer any of your questions, and provide any assistance we can!
When: 30th Sept at 11:50 Where: Florence room How to fund us: Look for the “ARM” sign (probably hand written). Agenda:
Find out what are the main issues for people cross-compiling to Arm
Explain our proposal to move the CMake toolchain files into the official ROS2 repos and have it as a first citizen in the ROS project (instead of Arm trying to catch-up with broken builds).
Because the afternoon coffee break was cut short we’re going to have the meetup this evening at the reception.
When: At the start of the reception after the group photo (Scheduled 18:10)
Where: Near the registration desk.
How to find us: Look for Jihoon @jihoonl nearby.
Agenda: rosbridge, robot web tools in general, maintenance, and potentially ros2.
Is the CreateLink function working? (written by @jrivero, not sure who asked this)
Spawning models:
Race conditions if one needs to be spawned before the other (such as a free-floating robot on a granite table, want them to be spawned dynamically so they can be written in urdf)
There is a spawn_model service in gazebo_ros, but it returns too fast
Shane discussed a special xml tag to insert an SDF
The spawn_model service should use quaternions instead of roll-pitch-yaw
While running lots of simulations, sometimes the simulation fails with a GLX-related error
If it’s just gzserver and it doesn’t use rendering, these errors can be avoided by disabling rendering in gzserver (it will also speed it up slightly) by using a bad DISPLAY variable or running inside a docker container that doesn’t have nvidia-docker enabled
FBX support
There are lots of existing models on sketchfab, often in FBX format. Bosch is interested in being able to parse FBX models.
Ian has worked on this, but it’s proprietary and complicated. We may come back to it if there is sufficient interest and support.
Modeling sea-floor
Current workflow is to bake lots of textures into a single mesh, but it’s hard to export from blender.
Is the sea-floor like a DEM? There are some performance advantages to using DEM’s.
VisualPlugins
Underwater plumes are visualized in RVIZ with markers, but want to visualize in gzclient too. Is it possible?
It’s easier with markers. (I didn’t get all of Louise’s answer here)
Camera following
Some sequence of moving camera and then follow an object caused camera to go a bit crazy
Camera Z-up
Some people need to use Z-down, so it’s hard to make the camera point upside down. Andrew Symington would like to turn off the camera auto-flip
Domain randomization
Would like to make lots of different environments with variations in which models are present, where they are located, etc. Current approach is a script that prints out different versions of world files.
Embedded scripting inside a world file was pretty useful in the Space Robotics Challenge for randomizing the world. It uses embedded ruby with snippets
Enable sealing of secrets such as private key to protect PKI identity
Protecting run time session keys from other processes on the same host
Proposed
API for writing DDS-Security plugins leveraging ARM’s TrustZone
Performance overhead impacts of bifurcated trusted computation yet to be characterized
Securing parameters in ROS2
Context
Remote parameters access is conducted via service interlaces
Current mapping between ROS2 to DDS only facilitates node-level access control
However all or none read/write access to a node’s local parameters is too granular
I.e. individual parameters access permission can not be precisely enforced
Proposed
Securing individual parameters on a node by enforcing DDS key permissions
Leverage the upcoming (DDS Security v1.2) ability of specifying keys in DDS permission plugin
This will require ROS 2 to used keyed messages for parameters interfaces
Granular segmentation of ROS2 netwroks
Context
DDS domains IDs are used control discovery/crosswalk between DDS systems
Possible domain IDs are derived from a finite range of integers
Domain collisions may be unavoidable in public or populated LANs
Proposed
Next revision of the RTPS specification will introduce domain tags (arbitrary string)
Enabling isolation between ROS2 systems using the same DDS domain ID
Expected behavior with locally insufficient permissions
Context
DDS implementations preform sanity checks when creating data readers/writers
Creation of reader/writer will fail if local permission are insufficient
Is it expected that failing to create services when permissions are insufficient should crash a node?
Proposed
RMW bubbles up warning
ROS2 node process continues along
Pro: Downstream users may restrict a third-party node’s access to remaining system without modifying released nodes
Con: Indeterminate program behavior for nodes that do not actually connect with interfaces requested
RMW bubbles up error
ROS2 node may crash due to insufficient permissions
Pro: clearer defined behavior for downstream users
Pro: burden of permission handling is on informed upstream developer
Con: Extra profiling of necessary permission is required to prevent node from crashing at runtime, e.g from dynamic topic name creation
Conclusion
Yes, downstream users cannot block node interfaces without coordinating with the upstream node, such as through constructor arguments enabling or disabling functionality
Awesome summary, I wish I could have been there. I was looking around at ROSCon but was never able to find you. I’m an engineer at Amazon and we’re also doing some work on security-related items for ROS2. I’d really like to get your input and find out what other folks are working on.
I’ve organized an ROS2 Security Online Meetup on Monday Oct 15th @ 17:00 PDT. Please feel free to join and give your input.