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.
lPLATFORM_D_FLAG_DISABLE_STATUS_LEDS
sPLATFORM_D_FLAG_DISABLE_SPEAKER
wPLATFORM_D_FLAG_DISABLE_WHEEL_CONTROL
oPLATFORM_D_FLAG_DISABLE_OPTO
pPLATFORM_D_FLAG_DISABLE_SERVO_POWER
fPLATFORM_D_FLAG_DISABLE_I2C_FAIL_WARN
rPLATFORM_D_FLAG_DISABLE_CLIFF_REFLEX
kPLATFORM_D_FLAG_DISABLE_KIN_IDLE
tPLATFORM_D_FLAG_DISABLE_TRANSLATION
!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.