Package com.ctre.phoenix6.controls
Class MusicTone
java.lang.Object
com.ctre.phoenix6.controls.ControlRequest
com.ctre.phoenix6.controls.MusicTone
public class MusicTone extends ControlRequest
Plays a single tone at the user specified frequency.
-
Field Summary
Fields Modifier and Type Field Description doubleAudioFrequencySound frequency to play.doubleconfigTimeoutThe timeout when sending configs associated with this controldoubleUpdateFreqHzThe period at which this control will update at. -
Constructor Summary
Constructors Constructor Description MusicTone(double AudioFrequency)Plays a single tone at the user specified frequency. -
Method Summary
Modifier and Type Method Description voidforceApplyConfigs()Forces configs to be applied the next time this is used in a setControl.Map<String,String>getControlInfo()Gets information about this control request.StatusCodesendRequest(String network, int deviceHash, boolean cancelOtherRequests)StringtoString()MusicTonewithAudioFrequency(double newAudioFrequency)Modifies this Control Request's AudioFrequency parameter and returns itself for method-chaining and easier to use request API.MusicTonewithUpdateFreqHz(double newUpdateFreqHz)Sets the period at which this control will update at.
-
Field Details
-
AudioFrequency
Sound frequency to play. A value of zero will silence the device. The effective frequency range is 10-10000Hz. Any nonzero frequency less than 10 Hz will be capped to 10Hz. Any frequency above 10Khz will be capped to 10KHz. -
UpdateFreqHz
The period at which this control will update at. This is designated in Hertz, with a minimum of 20 Hz (every 50 ms) and a maximum of 1000 Hz (every 1 ms).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.
-
configTimeout
The timeout when sending configs associated with this control
-
-
Constructor Details
-
MusicTone
Plays a single tone at the user specified frequency.- Parameters:
AudioFrequency- Sound frequency to play. A value of zero will silence the device. The effective frequency range is 10-10000Hz. Any nonzero frequency less than 10 Hz will be capped to 10Hz. Any frequency above 10Khz will be capped to 10KHz.
-
-
Method Details
-
toString
-
sendRequest
- Specified by:
sendRequestin classControlRequest
-
getControlInfo
Gets information about this control request.- Specified by:
getControlInfoin classControlRequest- Returns:
- Map of control parameter names and corresponding applied values
-
withAudioFrequency
Modifies this Control Request's AudioFrequency parameter and returns itself for method-chaining and easier to use request API.- Parameters:
newAudioFrequency- Parameter to modify- Returns:
- Itself
-
withUpdateFreqHz
Sets the period at which this control will update at. This is designated in Hertz, with a minimum of 20 Hz (every 50 ms) and a maximum of 1000 Hz (every 1 ms).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.
- Parameters:
newUpdateFreqHz- Parameter to modify- Returns:
- Itself
-
forceApplyConfigs
Forces configs to be applied the next time this is used in a setControl.This is not necessary in the majority of cases, because Phoenix will make sure configs are properly set when they are not already set
-