Would you say what you have so far is mostly the first part (learning ROS2 workflow, etc.)?
I’ve gotten to where I can be productive building basic systems involving image processing, topics, services, parameters and user i/o without much slowing down to figure out basics, and haven’t encountered anything insurmountable that would result in deferring adopting ros2 until the next release or spending a lot of time diving into the underlying ros2 libraries.
Do you have an idea regarding what you’d like to do in order to take advantage of ROS2 features?
The composition of nodes into processes and minimization of copies would come first. After that the communication profiles. I expect to run into performance issues with my current minimal functionality approach that will drive those, though it’s possible performance issues that could be solved with unused ros2 features will cause odd behavior and inexplicable failures- and the tools to determine that either don’t exist yet or aren’t sufficiently disseminated.