Discussion on how to support hardware changes to the PR2.
Analyzers have support for:
- discarding certain diagnostic messages
- ignoring a configuration block on the parameter server (because the parameter server does not support deleting parameters)
- when you want to add/remove an item to an analyzer block, you need to re-write the entire list of items, which forces you to duplicate information in different places. E.g. to remove the 'Wifi Status (ddwrt)' from the computers block, you need to re-write the 'expected' list from /etc/ros/robot.launch, which duplicates the information stored in pr2_bringup.
computers: type: diagnostic_aggregator/GenericAnalyzer path: Computers expected: [ 'Wifi Status (ddwrt)', 'c1 CPU Temperature', 'c1 CPU Usage', 'c1 HD Temperature', 'c1 HD Usage', 'c2 CPU Temperature', 'c2 CPU Usage', 'c2 HD Temperature', 'NTP offset from c1 to 10.68.255.1', 'NTP offset from c2 to c1', 'NTP self-offset for c1', 'NTP self-offset for c2']
- All the analyzer information is now stored in one central place. It would be much cleaner if this information is stored in different places, together with the nodes that publish the diagnostics.