phoenix6.configs.pigeon2_configs
#
Module Contents#
- class phoenix6.configs.pigeon2_configs.Pigeon2Configuration#
Class description for the Pigeon 2 IMU sensor that measures orientation.
This handles the configurations for Pigeon2
- future_proof_configs: bool = True#
True if we should factory default newer unsupported configs, false to leave newer unsupported configs alone.
This flag addresses a corner case where the device may have firmware with newer configs that didn’t exist when this version of the API was built. If this occurs and this flag is true, unsupported new configs will be factory defaulted to avoid unexpected behavior.
This is also the behavior in Phoenix 5, so this flag is defaulted to true to match.
- mount_pose: MountPoseConfigs#
Configs for Pigeon 2’s Mount Pose configuration.
These configs allow the Pigeon2 to be mounted in whatever orientation that’s desired and ensure the reported Yaw/Pitch/Roll is from the robot’s reference.
- gyro_trim: GyroTrimConfigs#
Configs to trim the Pigeon2’s gyroscope.
Pigeon2 allows the user to trim the gyroscope’s sensitivity. While this isn’t necessary for the Pigeon2, as it comes calibrated out-of-the-box, users can make use of this to make the Pigeon2 even more accurate for their application.
- pigeon2_features: Pigeon2FeaturesConfigs#
Configs to enable/disable various features of the Pigeon2.
These configs allow the user to enable or disable various aspects of the Pigeon2.
- with_mount_pose(new_mount_pose: MountPoseConfigs) Pigeon2Configuration #
Modifies this configuration’s mount_pose parameter and returns itself for method-chaining and easier to use config API.
Configs for Pigeon 2’s Mount Pose configuration.
These configs allow the Pigeon2 to be mounted in whatever orientation that’s desired and ensure the reported Yaw/Pitch/Roll is from the robot’s reference.
- Parameters:
new_mount_pose (MountPoseConfigs) – Parameter to modify
- Returns:
Itself
- Return type:
- with_gyro_trim(new_gyro_trim: GyroTrimConfigs) Pigeon2Configuration #
Modifies this configuration’s gyro_trim parameter and returns itself for method-chaining and easier to use config API.
Configs to trim the Pigeon2’s gyroscope.
Pigeon2 allows the user to trim the gyroscope’s sensitivity. While this isn’t necessary for the Pigeon2, as it comes calibrated out-of-the-box, users can make use of this to make the Pigeon2 even more accurate for their application.
- Parameters:
new_gyro_trim (GyroTrimConfigs) – Parameter to modify
- Returns:
Itself
- Return type:
- with_pigeon2_features(new_pigeon2_features: Pigeon2FeaturesConfigs) Pigeon2Configuration #
Modifies this configuration’s pigeon2_features parameter and returns itself for method-chaining and easier to use config API.
Configs to enable/disable various features of the Pigeon2.
These configs allow the user to enable or disable various aspects of the Pigeon2.
- Parameters:
new_pigeon2_features (Pigeon2FeaturesConfigs) – Parameter to modify
- Returns:
Itself
- Return type:
- serialize() str #
Get the serialized form of this configuration
- Returns:
Serialized form of this config group
- Return type:
str
- deserialize(to_deserialize: str) phoenix6.status_code.StatusCode #
Take a string and deserialize it to this configuration
- Returns:
Return code of the deserialize method
- Return type:
str
- class phoenix6.configs.pigeon2_configs.Pigeon2Configurator(id: phoenix6.hardware.device_identifier.DeviceIdentifier)#
Bases:
phoenix6.configs.parent_configurator.ParentConfigurator
Class description for the Pigeon 2 IMU sensor that measures orientation.
This handles the configurations for Pigeon2
- refresh(configs: SupportsSerialization, timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Refreshes the values of the specified config group.
Call to refresh the selected configs from the device.
- Parameters:
configs (name) – The configs to refresh
timeout_seconds (second) – Maximum amount of time to wait when performing configuration
- Returns:
StatusCode of refreshing the configs
- Return type:
- apply(configs: SupportsSerialization, timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Applies the contents of the specified config to the device.
Call to apply the selected configs.
- Parameters:
configs (SupportsSerialization) – Configs to apply
timeout_seconds (second) – Maximum amount of time to wait when performing configuration
- Returns:
StatusCode of the apply method
- Return type:
- set_yaw(new_value: phoenix6.units.degree, timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
The yaw to set the Pigeon2 to right now.
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
new_value (degree) – Value to set to. Units are in deg.
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_faults(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear the sticky faults in the device.
This typically has no impact on the device functionality. Instead, it just clears telemetry faults that are accessible via API and Tuner Self-Test.
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_fault_hardware(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear sticky fault: Hardware fault occurred
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_fault_undervoltage(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear sticky fault: Device supply voltage dropped to near brownout levels
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_fault_boot_during_enable(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear sticky fault: Device boot while detecting the enable signal
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_fault_bootup_accelerometer(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear sticky fault: Bootup checks failed: Accelerometer
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_fault_bootup_gyroscope(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear sticky fault: Bootup checks failed: Gyroscope
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_fault_bootup_magnetometer(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear sticky fault: Bootup checks failed: Magnetometer
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_fault_boot_into_motion(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear sticky fault: Motion Detected during bootup.
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_fault_data_acquired_late(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear sticky fault: Motion stack data acquisition was slower than expected
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_fault_loop_time_slow(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear sticky fault: Motion stack loop time was slower than expected.
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_fault_saturated_magnetometer(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear sticky fault: Magnetometer values are saturated
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_fault_saturated_accelerometer(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear sticky fault: Accelerometer values are saturated
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type:
- clear_sticky_fault_saturated_gyroscope(timeout_seconds: phoenix6.units.second = 0.05) phoenix6.status_code.StatusCode #
Clear sticky fault: Gyroscope values are saturated
This is available in the configurator in case the user wants to initialize their device entirely without passing a device reference down to the code that performs the initialization. In this case, the user passes down the configurator object and performs all the initialization code on the object.
- Parameters:
timeout_seconds (second) – Maximum time to wait up to in seconds.
- Returns:
StatusCode of the set command
- Return type: