Bridge flags

Various configuration options are available through the bridge flags. Multiple mechanisms are available to set these flags.

The ROS topic control/flags provides for temporarily changing the flags, either just whilst a controller is running, or until the next reboot.

For more persistent changes, find the setting MIRO_BRIDGE_FLAGS in user_setup.bash, and set its value using the table below. For example, disable the status LEDs, the cliff reflex, and the automatic idling of kinematic servos by setting MIRO_BRIDGE_FLAGS=lrk. Reboot for the setting to take effect.

Your own, or provided, controllers may change the flags using the control/flags mechanism, which may then override the flags you have chosen in MIRO_BRIDGE_FLAGS. If you wish to prevent this, insert the token ! after any flags you want to enforce remain set. For example, to enforce the flags lr, and initialise the flag k but allow it to be changed by controllers, use MIRO_BRIDGE_FLAGS=lr!k.

The default setting is MIRO_BRIDGE_FLAGS=l!—you should retain the l flag, or the status LEDs will light up across MiRos PCBs, which is usually unhelpful.
A common scenario is that a robot is being used constantly in an area where there are no cliff hazards, but on a surface that renders the cliff sensors inoperable—in this case, you may choose MIRO_BRIDGE_FLAGS=lr! to disable the cliff sensors completely, but be aware of the increased hazard now that the robot will not try to avoid falling off edges.
!Any flags appearing before this marker (the exclamation mark) will be locked—that is, clients will be unable to release them through the ROS topic control/flags.