:py:mod:`phoenix6.controls.modulate_v_bat_out` ============================================== .. py:module:: phoenix6.controls.modulate_v_bat_out Module Contents --------------- .. py:class:: ModulateVBatOut(output: float) Modulates the CANdle VBat output to the specified duty cycle. This can be used to control a single-color LED strip. Note that CANdleFeaturesConfigs.VBatOutputMode must be set to VBatOutputModeValue.Modulated. :param output: Proportion of VBat to output in fractional units between 0.0 and 1.0. :type output: float .. py:property:: name :type: str Gets the name of this control request. :returns: Name of the control request :rtype: str .. py:property:: control_info :type: dict Gets information about this control request. :returns: Dictonary of control parameter names and corresponding applied values :rtype: dict .. py:attribute:: update_freq_hz :type: phoenix6.units.hertz :value: '50' The frequency at which this control will update. This is designated in Hertz, with a minimum of 20 Hz (every 50 ms) and a maximum of 1000 Hz (every 1 ms). Some update frequencies are not supported and will be promoted up to the next highest supported frequency. If this field is set to 0 Hz, the control request will be sent immediately as a one-shot frame. This may be useful for advanced applications that require outputs to be synchronized with data acquisition. In this case, we recommend not exceeding 50 ms between control calls. .. py:attribute:: output Proportion of VBat to output in fractional units between 0.0 and 1.0. - Units: fractional .. py:method:: with_output(new_output: float) -> Self Modifies this Control Request's output parameter and returns itself for method-chaining and easier to use request API. Proportion of VBat to output in fractional units between 0.0 and 1.0. - Units: fractional :param new_output: Parameter to modify :type new_output: float :returns: Itself :rtype: ModulateVBatOut .. py:method:: with_update_freq_hz(new_update_freq_hz: phoenix6.units.hertz) -> Self Sets the frequency at which this control will update. This is designated in Hertz, with a minimum of 20 Hz (every 50 ms) and a maximum of 1000 Hz (every 1 ms). Some update frequencies are not supported and will be promoted up to the next highest supported frequency. If this field is set to 0 Hz, the control request will be sent immediately as a one-shot frame. This may be useful for advanced applications that require outputs to be synchronized with data acquisition. In this case, we recommend not exceeding 50 ms between control calls. :param new_update_freq_hz: Parameter to modify :type new_update_freq_hz: hertz :returns: Itself :rtype: ModulateVBatOut