15#if __has_include("ctre/phoenix/export.h")
35 static constexpr int OK = 0;
842 constexpr operator int()
const {
return value; }
846 return value == other;
850 return value <=> other;
856 constexpr bool IsError()
const {
return value < 0; }
864 constexpr bool IsOK()
const {
return value ==
OK; }
875 case -100:
return "TaskIsBusy";
876 case -101:
return "InvalidDeviceSpec";
877 case -102:
return "EcuIsNotPresent";
878 case -103:
return "CouldNotEnterBl";
879 case -104:
return "CouldNotConfirmBl";
880 case -105:
return "CouldNotErase";
881 case -106:
return "CouldNotSendFlash";
882 case -107:
return "CouldNotValidate";
883 case -108:
return "CouldNotRunApp";
884 case -109:
return "CouldNotReqSetId";
885 case -110:
return "CouldNotConfirmId";
886 case -111:
return "FlashWasGood";
887 case -112:
return "AppTooOld";
888 case -113:
return "CouldNotReqSetDesc";
889 case -114:
return "CompileSzIsWrong";
890 case -115:
return "GadgeteerDeviceNoSetId";
891 case -116:
return "InvalidTask";
892 case -117:
return "NotImplemented";
893 case -118:
return "NoDevicesOnBus";
894 case -119:
return "MoreThanOneFile";
895 case -120:
return "NodeIsInvalid";
896 case -121:
return "InvalidDeviceDescriptor";
897 case -123:
return "CouldNotSendCanFrame";
898 case -124:
return "NormalModeMsgNotPresent";
899 case -125:
return "FeatureNotSupported";
900 case -126:
return "NotUpdating";
901 case -127:
return "CorruptedPOST";
902 case -128:
return "NoConfigs";
903 case -129:
return "ConfigFailed";
904 case -130:
return "CouldNotReqFactoryDefault";
905 case -131:
return "CustomNameNotSupported";
906 case -132:
return "ConfigReadWriteMismatch";
907 case -133:
return "CouldNotReqSetConfigs";
908 case -134:
return "InsufficientSz";
909 case -135:
return "InvalidModel";
910 case -140:
return "CouldNotReqDevInfo";
911 case -141:
return "NoControls";
912 case -142:
return "DeviceIsNull";
913 case -143:
return "DeviceDidNotRespondToDiagReq";
914 case -144:
return "OnlySupportedInTunerX";
915 case -145:
return "CanivCliError";
916 case -200:
return "InvalidCrfBadHeader";
917 case -201:
return "InvalidCrfFileSzInvald";
918 case -202:
return "InvalidCrfWrongProduct";
919 case -203:
return "InvalidCrfNoSects";
920 case -204:
return "InvalidCrfBadSectHeader";
921 case -205:
return "InvalidCrfBadSectSize";
922 case -206:
return "NoCrfFile";
923 case -300:
return "CouldNotFindDynamicId";
924 case -301:
return "DidNotGetDhcp";
925 case -302:
return "DidNotGetFullDhcp";
926 case -350:
return "InvalidLicenseResp";
927 case -351:
return "InvalidCanivCache";
928 case -500:
return "CannotOpenSerialPort";
929 case -501:
return "CannotWriteSerialPort";
930 case -502:
return "CannotReadSerialPort";
931 case -503:
return "CannotSerialToDevice";
932 case -504:
return "NoSerialControlFrameResp";
933 case -600:
return "CannotOpenUdpPort";
934 case -601:
return "CannotWriteUdpPort";
935 case -602:
return "CannotReadUdpPort";
936 case -603:
return "CannotUdpToDevice";
937 case -604:
return "NoUdpControlFrameResp";
938 case -605:
return "TimeoutIso15Response";
939 case -700:
return "InvalidJson";
940 case -800:
return "AppIsTerminating";
941 case 1000:
return "CanMessageStale";
942 case 1006:
return "BufferFull";
943 case 1010:
return "PulseWidthSensorNotPresent";
944 case 1100:
return "GeneralWarning";
945 case 1103:
return "FirmVersionCouldNotBeRetrieved";
946 case 1104:
return "FeaturesNotAvailableYet";
947 case 1105:
return "ControlModeNotValid";
948 case 1106:
return "ControlModeNotSupportedYet";
949 case 1109:
return "MotProfFirmThreshold";
950 case 1110:
return "MotProfFirmThreshold2";
951 case 1200:
return "SimDeviceNotFound";
952 case 1201:
return "SimPhysicsTypeNotSupported";
953 case 1202:
return "SimDeviceAlreadyExists";
954 case -1001:
return "TxFailed";
955 case -1002:
return "InvalidParamValue";
956 case -1003:
return "RxTimeout";
957 case -1004:
return "TxTimeout";
958 case -1005:
return "UnexpectedArbId";
959 case -1006:
return "CanOverflowed";
960 case -1007:
return "SensorNotPresent";
961 case -1008:
return "FirmwareTooOld";
962 case -1009:
return "CouldNotChangePeriod";
963 case -1010:
return "BufferFailure";
964 case -1011:
return "FirmwareNonFRC";
965 case -1100:
return "GeneralError";
966 case -1200:
return "SigNotUpdated";
967 case -1201:
return "NotAllPIDValuesUpdated";
968 case -1300:
return "GEN_PORT_ERROR";
969 case -1301:
return "PORT_MODULE_TYPE_MISMATCH";
970 case -1400:
return "GEN_MODULE_ERROR";
971 case -1401:
return "MODULE_NOT_INIT_SET_ERROR";
972 case -1402:
return "MODULE_NOT_INIT_GET_ERROR";
973 case -1500:
return "WheelRadiusTooSmall";
974 case -1501:
return "TicksPerRevZero";
975 case -1502:
return "DistanceBetweenWheelsTooSmall";
976 case -1503:
return "GainsAreNotSet";
977 case -1504:
return "WrongRemoteLimitSwitchSource";
978 case -1505:
return "DoubleVoltageCompensatingWPI";
979 case -1506:
return "CANdleAnimSlotOutOfBounds";
980 case -1600:
return "IncompatibleMode";
981 case -1601:
return "InvalidHandle";
982 case -1700:
return "FeatureRequiresHigherFirm";
983 case -1702:
return "ConfigFactoryDefaultRequiresHigherFirm";
984 case -1703:
return "ConfigMotionSCurveRequiresHigherFirm";
985 case -1704:
return "TalonFXFirmwarePreVBatDetect";
986 case -1705:
return "CANdleAnimationsRequireHigherFirm";
987 case -1800:
return "LibraryCouldNotBeLoaded";
988 case -1801:
return "MissingRoutineInLibrary";
989 case -1802:
return "ResourceNotAvailable";
990 case -1900:
return "MusicFileNotFound";
991 case -1901:
return "MusicFileWrongSize";
992 case -1902:
return "MusicFileTooNew";
993 case -1903:
return "MusicFileInvalid";
994 case -1904:
return "InvalidOrchestraAction";
995 case -1905:
return "MusicFileTooOld";
996 case -1906:
return "MusicInterrupted";
997 case -1907:
return "MusicNotSupported";
998 case -2000:
return "kInvalidInterface";
999 case -2001:
return "kInvalidGuid";
1000 case -2002:
return "kInvalidClass";
1001 case -2003:
return "kInvalidProtocol";
1002 case -2004:
return "kInvalidPath";
1003 case -2005:
return "kGeneralWinUsbError";
1004 case -2006:
return "kFailedSetup";
1005 case -2007:
return "kListenFailed";
1006 case -2008:
return "kSendFailed";
1007 case -2009:
return "kReceiveFailed";
1008 case -2010:
return "kInvalidRespFormat";
1009 case -2011:
return "kWinUsbInitFailed";
1010 case -2012:
return "kWinUsbQueryFailed";
1011 case -2013:
return "kWinUsbGeneralError";
1012 case -2014:
return "kAccessDenied";
1013 case -2015:
return "kFirmwareInvalidResponse";
1014 case -10000:
return "StatusCodeNotInitialized";
1015 case 10000:
return "WarningNotInitialized";
1016 case 10001:
return "HwTimestampOutOfSync";
1017 case 10002:
return "FrequentConfigCalls";
1018 case -10001:
return "InvalidNetwork";
1019 case -10002:
return "MultiSignalNotSupported";
1020 case -10003:
return "CouldNotCast";
1021 case -10004:
return "NotFound";
1022 case -10005:
return "NotSupported";
1023 case -10006:
return "MissingContext";
1024 case -10007:
return "ModelMismatch";
1025 case -10008:
return "SerialMismatch";
1026 case -10009:
return "NoFile";
1027 case -10010:
return "LicenseDownloadFailed";
1028 case -10011:
return "SelfTestIsEmpty";
1029 case -10012:
return "SignalLookupFailed";
1030 case -10013:
return "InvalidModeToGetSignal";
1031 case -10014:
return "UnlicensedDevice";
1032 case -10015:
return "InvalidSize";
1033 case -10016:
return "InvalidLicenseResponse";
1034 case -10017:
return "InvalidContext";
1035 case -10018:
return "InternalError";
1036 case -10019:
return "kDeviceResponseIncorrect";
1037 case -10020:
return "kErrorPollingForDevices";
1038 case -10021:
return "CouldNotRetrieveV6Firmware";
1039 case -10022:
return "CouldNotDecodeDeviceFirmware";
1040 case -10023:
return "InvalidIDToFollow";
1041 case -10024:
return "UsingProFeatureOnUnlicensedDevice";
1042 case -10025:
return "FirmwareTooNew";
1043 case -10026:
return "CouldNotSerialize";
1044 case -10027:
return "MechanismFaulted";
1045 case -10028:
return "FirmwareVersNotCompatible";
1046 case -10029:
return "DirectoryMissing";
1047 case -10030:
return "ApiTooOld";
1048 case -10031:
return "LoggerNotRunning";
1049 case -10032:
return "TimeoutCannotBeZero";
1050 case -10033:
return "CannotLicenseWhileEnabled";
1051 case -10034:
return "InvalidFile";
1052 case -10035:
return "HootLogTooOld";
1053 case -10036:
return "HootLogTooNew";
1054 case -10037:
return "UnlicensedHootLog";
1055 case -10038:
return "CannotStepWhileUnpaused";
1056 case -10039:
return "MultipleReplayNotSupported";
1057 case -10040:
return "UserSignalLimitExceeded";
1058 case -10041:
return "InvalidDeviceModel";
1059 case -10042:
return "SignalNotSupportedOrMissing";
1060 case -10043:
return "MissingSchema";
1061 case -10044:
return "InvalidDeviceId";
1065 return "Could not find name for StatusCode";
1076 case 0:
return "No Error";
1077 case -100:
return "Diagnostic Server is busy with another command.";
1078 case -101:
return "InvalidDeviceSpec";
1079 case -102:
return "Device is not present. Verify the device is connected and powered, and that the CAN bus is terminated.";
1080 case -103:
return "Could not put the device into bootloader mode.";
1081 case -104:
return "Could not confirm the device has entered the bootloader.";
1082 case -105:
return "Could not erase flash.";
1083 case -106:
return "Could not field upgrade the device.";
1084 case -107:
return "Bootloader could not verify integrity of the flashed application.";
1085 case -108:
return "Could not run the device firmware application.";
1086 case -109:
return "Unable to set ID to this device. Confirm that this action is valid for this device and the ID is valid (0-62).";
1087 case -110:
return "Could not verify that the changed ID took effect.";
1088 case -111:
return "Device field upgrade was successful.";
1089 case -112:
return "Device firmware application is too old.";
1090 case -113:
return "Unable to set name to this device.";
1091 case -114:
return "CompileSzIsWrong";
1092 case -115:
return "Cannot set the ID of a gadgeteer device.";
1093 case -116:
return "This diagnostic action is not supported.";
1094 case -117:
return "Not Implemented, check latest installer.";
1095 case -118:
return "NoDevicesOnBus";
1096 case -119:
return "MoreThanOneFile";
1097 case -120:
return "Specified device was not found. Verify the device is connected and powered, and that the CAN bus is terminated.";
1098 case -121:
return "InvalidDeviceDescriptor";
1099 case -123:
return "CouldNotSendCanFrame";
1100 case -124:
return "NormalModeMsgNotPresent";
1101 case -125:
return "This feature is not supported.";
1102 case -126:
return "The diagnostic server is not field upgrading any devices.";
1103 case -127:
return "CorruptedPOST";
1104 case -128:
return "This device did not report any available configs. Verify firmware and diagnostics are up-to-date.";
1105 case -129:
return "ConfigFailed";
1106 case -130:
return "Unable to factory default this device.";
1107 case -131:
return "CustomNameNotSupported";
1108 case -132:
return "The configs read from the device do not match the configs that were written.";
1109 case -133:
return "Could not apply the device configs.";
1110 case -134:
return "InsufficientSz";
1111 case -135:
return "This feature is not supported for this device model.";
1112 case -140:
return "CouldNotReqDevInfo";
1113 case -141:
return "This device does not support new controls.";
1114 case -142:
return "DeviceIsNull";
1115 case -143:
return "DeviceDidNotRespondToDiagReq";
1116 case -144:
return "This feature requires Tuner X.";
1117 case -145:
return "Command-line issue with caniv.";
1118 case -200:
return "InvalidCrfBadHeader";
1119 case -201:
return "InvalidCrfFileSzInvald";
1120 case -202:
return "Specified CRF is for the wrong product.";
1121 case -203:
return "InvalidCrfNoSects";
1122 case -204:
return "InvalidCrfBadSectHeader";
1123 case -205:
return "InvalidCrfBadSectSize";
1124 case -206:
return "Specified CRF file could not be found.";
1125 case -300:
return "CouldNotFindDynamicId";
1126 case -301:
return "DidNotGetDhcp";
1127 case -302:
return "DidNotGetFullDhcp";
1128 case -350:
return "InvalidLicenseResp";
1129 case -351:
return "InvalidCanivCache";
1130 case -500:
return "CannotOpenSerialPort";
1131 case -501:
return "CannotWriteSerialPort";
1132 case -502:
return "CannotReadSerialPort";
1133 case -503:
return "CannotSerialToDevice";
1134 case -504:
return "NoSerialControlFrameResp";
1135 case -600:
return "CannotOpenUdpPort";
1136 case -601:
return "CannotWriteUdpPort";
1137 case -602:
return "CannotReadUdpPort";
1138 case -603:
return "CannotUdpToDevice";
1139 case -604:
return "NoUdpControlFrameResp";
1140 case -605:
return "TimeoutIso15Response";
1141 case -700:
return "InvalidJson";
1142 case -800:
return "The user application is shutting down.";
1143 case 1000:
return "CAN message is stale, data is valid but old. Check the CAN bus wiring, CAN bus utilization, and power to the device.";
1144 case 1006:
return "Buffer is full, cannot insert more data.";
1145 case 1010:
return "PulseWidthSensorNotPresent";
1146 case 1100:
return "General Warning Occurred.";
1147 case 1103:
return "Firm Vers could not be retrieved. Use Phoenix Tuner X to check ID and firmware(CRF) version.";
1148 case 1104:
return "This feature will be supported in a future update.";
1149 case 1105:
return "The control mode is not valid for this function.";
1150 case 1106:
return "This control mode is not supported yet. A future release will supported this soon.";
1151 case 1109:
return "Motor Controller must have >= 3.2 firmware for motion profile control mode.";
1152 case 1110:
return "Motor Controller must have >= 3.4 firmware for advanced PID0/PID1 features.";
1153 case 1200:
return "SimDeviceNotFound";
1154 case 1201:
return "SimPhysicsTypeNotSupported";
1155 case 1202:
return "SimDeviceAlreadyExists";
1156 case -1001:
return "Could not transmit CAN Frame.";
1157 case -1002:
return "An invalid argument was passed into the function/VI, such as a null pointer.";
1158 case -1003:
return "CAN frame not received/too-stale. Check the CAN bus wiring, CAN bus utilization, and power to the device.";
1159 case -1004:
return "CAN Transmit timed out.";
1160 case -1005:
return "ArbID is incorrect.";
1161 case -1006:
return "CanOverflowed";
1162 case -1007:
return "Sensor Not Present.";
1163 case -1008:
return "Firmware Too Old. Use Phoenix Tuner X to field upgrade your CTRE CAN device firmware(CRF). Then restart your robot application to clear this error.";
1164 case -1009:
return "Control Frame Period could not be changed. Most likely it is not being transmitted.";
1165 case -1010:
return "BufferFailure";
1166 case -1011:
return "Firmware is legacy non-FRC version. Use Phoenix Tuner X to field upgrade your CTRE CAN device firmware(CRF). Firmware greater than 20.0 required.";
1167 case -1100:
return "General Error Occurred.";
1168 case -1200:
return "No new response to update signal.";
1169 case -1201:
return "NotAllPIDValuesUpdated";
1170 case -1300:
return "GEN_PORT_ERROR";
1171 case -1301:
return "PORT_MODULE_TYPE_MISMATCH";
1172 case -1400:
return "GEN_MODULE_ERROR";
1173 case -1401:
return "MODULE_NOT_INIT_SET_ERROR";
1174 case -1402:
return "MODULE_NOT_INIT_GET_ERROR";
1175 case -1500:
return "Wheel Radius is too small, cannot get distance traveled.";
1176 case -1501:
return "Ticks per revolution is 0, cannot get heading.";
1177 case -1502:
return "Distance between wheels is too small, cannot get heading.";
1178 case -1503:
return "GainsAreNotSet";
1179 case -1504:
return "Use RemoteLimitSwitchSource instead of LimitSwitchSource.";
1180 case -1505:
return "Motor Controller Voltage Compensation should not be used with setVoltage(). This causes compensation to happen twice. Disable Voltage Compensation by calling enableVoltageCompensation(false) in order to use setVoltage().";
1181 case -1506:
return "CANdleAnimSlotOutOfBounds";
1182 case -1600:
return "IncompatibleMode";
1183 case -1601:
return "Handle passed into function is incorrect.";
1184 case -1700:
return "Features requires newer firmware version.";
1185 case -1702:
return "Config factory default features require firmware >=3.10.";
1186 case -1703:
return "Config Motion S Curve Strength features require firmware >=4.16.";
1187 case -1704:
return "Talon FX(Falcon 500) Firmware Too Old. Use Phoenix Tuner to field upgrade your CTRE CAN device firmware(CRF) to >=20.3. Then restart your robot application to clear this error.";
1188 case -1705:
return "CANdleAnimationsRequireHigherFirm";
1189 case -1800:
return "LibraryCouldNotBeLoaded";
1190 case -1801:
return "MissingRoutineInLibrary";
1191 case -1802:
return "ResourceNotAvailable";
1192 case -1900:
return "Could not find music file specified, try specifying an absolute path.";
1193 case -1901:
return "Music file size is incorrect, could not parse correctly. Ensure you're using Tuner to generate file.";
1194 case -1902:
return "Music file version is too new, update Phoenix to utilize this file.";
1195 case -1903:
return "Music file is invalid. Ensure you're using Tuner to generate file.";
1196 case -1904:
return "An invalid orchestra action occurred. Ensure a music file is loaded.";
1197 case -1905:
return "This music file version is too old. Regenerate file using Tuner.";
1198 case -1906:
return "Music interrupted due to one of the instruments being commanded a different control mode. Press Play to resume music.";
1199 case -1907:
return "This device doesn't support MusicTone control mode.";
1200 case -2000:
return "kInvalidInterface";
1201 case -2001:
return "kInvalidGuid";
1202 case -2002:
return "kInvalidClass";
1203 case -2003:
return "kInvalidProtocol";
1204 case -2004:
return "kInvalidPath";
1205 case -2005:
return "kGeneralWinUsbError";
1206 case -2006:
return "kFailedSetup";
1207 case -2007:
return "kListenFailed";
1208 case -2008:
return "kSendFailed";
1209 case -2009:
return "kReceiveFailed";
1210 case -2010:
return "kInvalidRespFormat";
1211 case -2011:
return "kWinUsbInitFailed";
1212 case -2012:
return "kWinUsbQueryFailed";
1213 case -2013:
return "kWinUsbGeneralError";
1214 case -2014:
return "kAccessDenied";
1215 case -2015:
return "kFirmwareInvalidResponse";
1216 case -10000:
return "This StatusCode has not been initialized. Make sure the StatusCode is getting assigned to the return of a method.";
1217 case 10000:
return "WarningNotInitialized";
1218 case 10001:
return "The timestamp reported by CANivore is at least 10ms older than the timestamp reported by the system, indicating it's fallen out of sync. This does not impact the data of this message, only the timing.";
1219 case 10002:
return "Do not apply or refresh configs periodically, as configs are blocking.";
1220 case -10001:
return "The given network/CAN bus is invalid. Verify that any status signals provided are on the same network and that the network is present.";
1221 case -10002:
return "The CAN bus does not support multi-signal synchronization.";
1222 case -10003:
return "Could not cast from base value to this particular signal's type";
1223 case -10004:
return "Could not find this value when searching for it";
1224 case -10005:
return "This is not supported";
1225 case -10006:
return "Could not determine context from this device hash";
1226 case -10007:
return "Model name in license file does not match model name of selected device.";
1227 case -10008:
return "Serial Number in license file does not match model name of selected device.";
1228 case -10009:
return "Could not find specified file.";
1229 case -10010:
return "License did not successfully download to Device.";
1230 case -10011:
return "Self Test report does not have any values, is the firmware up to date?";
1231 case -10012:
return "Failed to lookup signal properties. This can happen if the fimware is too new and supports signals that older APIs do not support.";
1232 case -10013:
return "The current mode of the device is invalid for getting this signal.";
1233 case -10014:
return "Device is not licensed. Cannot get any data from it.";
1234 case -10015:
return "Size is invalid.";
1235 case -10016:
return "InvalidLicenseResponse";
1236 case -10017:
return "InvalidContext";
1237 case -10018:
return "InternalError";
1238 case -10019:
return "kDeviceResponseIncorrect";
1239 case -10020:
return "kErrorPollingForDevices";
1240 case -10021:
return "Device firmware could not be retrieved. Check that the device is running v6 firmware, the device ID is correct, the specified CAN bus is correct, and the device is powered.";
1241 case -10022:
return "Device firmware could not be decoded. Check that the device is running v6 firmware, the device ID is correct, the specified CAN bus is correct, and the device is powered.";
1242 case -10023:
return "The values specified for master are in valid. Make sure the Device ID of master are correct.";
1243 case -10024:
return "Using a Pro only feature on an unlicensed device. The device may not behave as expected if it continues to operate while unlicensed.";
1244 case -10025:
return "Firmware Too New. Use Phoenix Tuner X to field upgrade your CTRE CAN device firmware(CRF) to a compatible version. Then restart your robot application to clear this error.";
1245 case -10026:
return "The data frame could not be serialized for transmit.";
1246 case -10027:
return "The mechanism is disabled due to a fault in one of the devices.";
1247 case -10028:
return "Firmware version is not compatible with this version of Phoenix. Make sure your firmware and API major versions match.";
1248 case -10029:
return "Could not find specified directory.";
1249 case -10030:
return "This API version is too old for the firmware on the device. Either upgrade the API to a newer version or downgrade the device firmware to an older version for correct behavior.";
1250 case -10031:
return "The signal logger is not running. Start the signal logger before writing any signals.";
1251 case -10032:
return "Blocking operations, such as configs, cannot have a timeout of 0. Pass in a non-zero timeout (typically 0.050+ seconds) for normal operation.";
1252 case -10033:
return "Device cannot be licensed while it is control enabled. Disable and neutral the device to apply the licenses.";
1253 case -10034:
return "Could not open or read the given file.";
1254 case -10035:
return "The given hoot log requires an older version of Phoenix API.";
1255 case -10036:
return "The given hoot log requires a newer version of Phoenix API.";
1256 case -10037:
return "Hoot log is not licensed. Cannot get any data from it.";
1257 case -10038:
return "The simulation timing cannot be advanced by a time step while unpaused. Pause the simulator before advancing time.";
1258 case -10039:
return "Hoot replay does not support replaying multiple files. Ensure that only one file is loaded at a time.";
1259 case -10040:
return "The maximum number of loggable user signals has been exceeded. Additional user signals will not be logged.";
1260 case -10041:
return "The provided model was not a valid device type.";
1261 case -10042:
return "The requested signal is missing or not supported. Verify that the device firmware is up-to-date.";
1262 case -10043:
return "The schema for the logged user signal is invalid or missing. Ensure that the schema is written before the user signal.";
1263 case -10044:
return "The device ID is invalid. Ensure the device is constructed with a valid ID (0-62).";
1267 return "Could not find description for StatusCode";
1287typedef enum _StatusCode_t
1300 InvalidDeviceSpec = -101,
1305 EcuIsNotPresent = -102,
1309 CouldNotEnterBl = -103,
1313 CouldNotConfirmBl = -104,
1317 CouldNotErase = -105,
1321 CouldNotSendFlash = -106,
1325 CouldNotValidate = -107,
1329 CouldNotRunApp = -108,
1334 CouldNotReqSetId = -109,
1338 CouldNotConfirmId = -110,
1342 FlashWasGood = -111,
1350 CouldNotReqSetDesc = -113,
1354 CompileSzIsWrong = -114,
1358 GadgeteerDeviceNoSetId = -115,
1366 NotImplemented = -117,
1370 NoDevicesOnBus = -118,
1374 MoreThanOneFile = -119,
1379 NodeIsInvalid = -120,
1383 InvalidDeviceDescriptor = -121,
1387 CouldNotSendCanFrame = -123,
1391 NormalModeMsgNotPresent = -124,
1395 FeatureNotSupported = -125,
1403 CorruptedPOST = -127,
1412 ConfigFailed = -129,
1416 CouldNotReqFactoryDefault = -130,
1420 CustomNameNotSupported = -131,
1425 ConfigReadWriteMismatch = -132,
1429 CouldNotReqSetConfigs = -133,
1433 InsufficientSz = -134,
1437 InvalidModel = -135,
1441 CouldNotReqDevInfo = -140,
1449 DeviceIsNull = -142,
1453 DeviceDidNotRespondToDiagReq = -143,
1457 OnlySupportedInTunerX = -144,
1461 CanivCliError = -145,
1465 InvalidCrfBadHeader = -200,
1469 InvalidCrfFileSzInvald = -201,
1473 InvalidCrfWrongProduct = -202,
1477 InvalidCrfNoSects = -203,
1481 InvalidCrfBadSectHeader = -204,
1485 InvalidCrfBadSectSize = -205,
1493 CouldNotFindDynamicId = -300,
1497 DidNotGetDhcp = -301,
1501 DidNotGetFullDhcp = -302,
1505 InvalidLicenseResp = -350,
1509 InvalidCanivCache = -351,
1513 CannotOpenSerialPort = -500,
1517 CannotWriteSerialPort = -501,
1521 CannotReadSerialPort = -502,
1525 CannotSerialToDevice = -503,
1529 NoSerialControlFrameResp = -504,
1533 CannotOpenUdpPort = -600,
1537 CannotWriteUdpPort = -601,
1541 CannotReadUdpPort = -602,
1545 CannotUdpToDevice = -603,
1549 NoUdpControlFrameResp = -604,
1553 TimeoutIso15Response = -605,
1561 AppIsTerminating = -800,
1566 CanMessageStale = 1000,
1574 PulseWidthSensorNotPresent = 1010,
1578 GeneralWarning = 1100,
1583 FirmVersionCouldNotBeRetrieved = 1103,
1587 FeaturesNotAvailableYet = 1104,
1591 ControlModeNotValid = 1105,
1596 ControlModeNotSupportedYet = 1106,
1601 MotProfFirmThreshold = 1109,
1606 MotProfFirmThreshold2 = 1110,
1610 SimDeviceNotFound = 1200,
1614 SimPhysicsTypeNotSupported = 1201,
1618 SimDeviceAlreadyExists = 1202,
1627 InvalidParamValue = -1002,
1640 UnexpectedArbId = -1005,
1644 CanOverflowed = -1006,
1648 SensorNotPresent = -1007,
1654 FirmwareTooOld = -1008,
1659 CouldNotChangePeriod = -1009,
1663 BufferFailure = -1010,
1669 FirmwareNonFRC = -1011,
1673 GeneralError = -1100,
1677 SigNotUpdated = -1200,
1681 NotAllPIDValuesUpdated = -1201,
1685 GEN_PORT_ERROR = -1300,
1689 PORT_MODULE_TYPE_MISMATCH = -1301,
1693 GEN_MODULE_ERROR = -1400,
1697 MODULE_NOT_INIT_SET_ERROR = -1401,
1701 MODULE_NOT_INIT_GET_ERROR = -1402,
1705 WheelRadiusTooSmall = -1500,
1709 TicksPerRevZero = -1501,
1713 DistanceBetweenWheelsTooSmall = -1502,
1717 GainsAreNotSet = -1503,
1721 WrongRemoteLimitSwitchSource = -1504,
1728 DoubleVoltageCompensatingWPI = -1505,
1732 CANdleAnimSlotOutOfBounds = -1506,
1736 IncompatibleMode = -1600,
1740 InvalidHandle = -1601,
1744 FeatureRequiresHigherFirm = -1700,
1748 ConfigFactoryDefaultRequiresHigherFirm = -1702,
1752 ConfigMotionSCurveRequiresHigherFirm = -1703,
1758 TalonFXFirmwarePreVBatDetect = -1704,
1762 CANdleAnimationsRequireHigherFirm = -1705,
1766 LibraryCouldNotBeLoaded = -1800,
1770 MissingRoutineInLibrary = -1801,
1774 ResourceNotAvailable = -1802,
1778 MusicFileNotFound = -1900,
1783 MusicFileWrongSize = -1901,
1787 MusicFileTooNew = -1902,
1791 MusicFileInvalid = -1903,
1795 InvalidOrchestraAction = -1904,
1799 MusicFileTooOld = -1905,
1804 MusicInterrupted = -1906,
1808 MusicNotSupported = -1907,
1812 kInvalidInterface = -2000,
1816 kInvalidGuid = -2001,
1820 kInvalidClass = -2002,
1824 kInvalidProtocol = -2003,
1828 kInvalidPath = -2004,
1832 kGeneralWinUsbError = -2005,
1836 kFailedSetup = -2006,
1840 kListenFailed = -2007,
1844 kSendFailed = -2008,
1848 kReceiveFailed = -2009,
1852 kInvalidRespFormat = -2010,
1856 kWinUsbInitFailed = -2011,
1860 kWinUsbQueryFailed = -2012,
1864 kWinUsbGeneralError = -2013,
1868 kAccessDenied = -2014,
1872 kFirmwareInvalidResponse = -2015,
1877 StatusCodeNotInitialized = -10000,
1881 WarningNotInitialized = 10000,
1887 HwTimestampOutOfSync = 10001,
1891 FrequentConfigCalls = 10002,
1896 InvalidNetwork = -10001,
1900 MultiSignalNotSupported = -10002,
1904 CouldNotCast = -10003,
1912 NotSupported = -10005,
1916 MissingContext = -10006,
1921 ModelMismatch = -10007,
1926 SerialMismatch = -10008,
1934 LicenseDownloadFailed = -10010,
1938 SelfTestIsEmpty = -10011,
1943 SignalLookupFailed = -10012,
1947 InvalidModeToGetSignal = -10013,
1951 UnlicensedDevice = -10014,
1955 InvalidSize = -10015,
1959 InvalidLicenseResponse = -10016,
1963 InvalidContext = -10017,
1967 InternalError = -10018,
1971 kDeviceResponseIncorrect = -10019,
1975 kErrorPollingForDevices = -10020,
1981 CouldNotRetrieveV6Firmware = -10021,
1987 CouldNotDecodeDeviceFirmware = -10022,
1992 InvalidIDToFollow = -10023,
1997 UsingProFeatureOnUnlicensedDevice = -10024,
2003 FirmwareTooNew = -10025,
2007 CouldNotSerialize = -10026,
2011 MechanismFaulted = -10027,
2016 FirmwareVersNotCompatible = -10028,
2020 DirectoryMissing = -10029,
2031 LoggerNotRunning = -10031,
2036 TimeoutCannotBeZero = -10032,
2041 CannotLicenseWhileEnabled = -10033,
2045 InvalidFile = -10034,
2049 HootLogTooOld = -10035,
2053 HootLogTooNew = -10036,
2057 UnlicensedHootLog = -10037,
2062 CannotStepWhileUnpaused = -10038,
2067 MultipleReplayNotSupported = -10039,
2072 UserSignalLimitExceeded = -10040,
2076 InvalidDeviceModel = -10041,
2081 SignalNotSupportedOrMissing = -10042,
2086 MissingSchema = -10043,
2091 InvalidDeviceId = -10044,
2100const char *GetStatusCodeName(StatusCode_t value);
2107const char *GetStatusCodeDescription(StatusCode_t value);
Status codes reported by APIs, including OK, warnings, and errors.
Definition StatusCodes.h:28
static constexpr int CANdleAnimationsRequireHigherFirm
CANdleAnimationsRequireHigherFirm.
Definition StatusCodes.h:505
static constexpr int InvalidContext
InvalidContext.
Definition StatusCodes.h:706
static constexpr int PulseWidthSensorNotPresent
PulseWidthSensorNotPresent.
Definition StatusCodes.h:317
static constexpr int kAccessDenied
kAccessDenied
Definition StatusCodes.h:611
static constexpr int FirmVersionCouldNotBeRetrieved
Firm Vers could not be retrieved.
Definition StatusCodes.h:326
static constexpr int NoFile
Could not find specified file.
Definition StatusCodes.h:673
static constexpr int FeatureRequiresHigherFirm
Features requires newer firmware version.
Definition StatusCodes.h:487
static constexpr int FirmwareNonFRC
Firmware is legacy non-FRC version.
Definition StatusCodes.h:412
friend std::ostream & operator<<(std::ostream &os, StatusCode status)
static constexpr int MusicFileWrongSize
Music file size is incorrect, could not parse correctly.
Definition StatusCodes.h:526
static constexpr int kGeneralWinUsbError
kGeneralWinUsbError
Definition StatusCodes.h:575
static constexpr int kWinUsbGeneralError
kWinUsbGeneralError
Definition StatusCodes.h:607
static constexpr int PORT_MODULE_TYPE_MISMATCH
PORT_MODULE_TYPE_MISMATCH.
Definition StatusCodes.h:432
static constexpr int SensorNotPresent
Sensor Not Present.
Definition StatusCodes.h:391
static constexpr int kFirmwareInvalidResponse
kFirmwareInvalidResponse
Definition StatusCodes.h:615
static constexpr int NotUpdating
The diagnostic server is not field upgrading any devices.
Definition StatusCodes.h:142
static constexpr int InvalidIDToFollow
The values specified for master are in valid.
Definition StatusCodes.h:735
static constexpr int CannotStepWhileUnpaused
The simulation timing cannot be advanced by a time step while unpaused.
Definition StatusCodes.h:805
static constexpr int InternalError
InternalError.
Definition StatusCodes.h:710
static constexpr int CouldNotChangePeriod
Control Frame Period could not be changed.
Definition StatusCodes.h:402
static constexpr int IncompatibleMode
IncompatibleMode.
Definition StatusCodes.h:479
static constexpr int ControlModeNotSupportedYet
This control mode is not supported yet.
Definition StatusCodes.h:339
static constexpr int NormalModeMsgNotPresent
NormalModeMsgNotPresent.
Definition StatusCodes.h:134
static constexpr int CouldNotReqDevInfo
CouldNotReqDevInfo.
Definition StatusCodes.h:184
static constexpr int SimPhysicsTypeNotSupported
SimPhysicsTypeNotSupported.
Definition StatusCodes.h:357
static constexpr int HootLogTooNew
The given hoot log requires a newer version of Phoenix API.
Definition StatusCodes.h:796
constexpr const char * GetDescription() const
Gets the description of this StatusCode.
Definition StatusCodes.h:1073
static constexpr int OK
No Error.
Definition StatusCodes.h:35
static constexpr int StatusCodeNotInitialized
This StatusCode has not been initialized.
Definition StatusCodes.h:620
static constexpr int AppIsTerminating
The user application is shutting down.
Definition StatusCodes.h:304
static constexpr int DoubleVoltageCompensatingWPI
Motor Controller Voltage Compensation should not be used with setVoltage().
Definition StatusCodes.h:471
static constexpr int GEN_MODULE_ERROR
GEN_MODULE_ERROR.
Definition StatusCodes.h:436
static constexpr int NotImplemented
Not Implemented, check latest installer.
Definition StatusCodes.h:109
static constexpr int SignalLookupFailed
Failed to lookup signal properties.
Definition StatusCodes.h:686
static constexpr int UnlicensedDevice
Device is not licensed.
Definition StatusCodes.h:694
static constexpr int kInvalidGuid
kInvalidGuid
Definition StatusCodes.h:559
static constexpr int CouldNotCast
Could not cast from base value to this particular signal's type.
Definition StatusCodes.h:647
constexpr friend auto operator<=>(StatusCode, StatusCode)=default
static constexpr int SimDeviceNotFound
SimDeviceNotFound.
Definition StatusCodes.h:353
static constexpr int CouldNotValidate
Bootloader could not verify integrity of the flashed application.
Definition StatusCodes.h:68
static constexpr int InvalidCrfNoSects
InvalidCrfNoSects.
Definition StatusCodes.h:220
static constexpr int CouldNotReqSetDesc
Unable to set name to this device.
Definition StatusCodes.h:93
static constexpr int CannotUdpToDevice
CannotUdpToDevice.
Definition StatusCodes.h:288
static constexpr int MusicFileTooOld
This music file version is too old.
Definition StatusCodes.h:542
static constexpr int InvalidHandle
Handle passed into function is incorrect.
Definition StatusCodes.h:483
static constexpr int CannotOpenSerialPort
CannotOpenSerialPort.
Definition StatusCodes.h:256
static constexpr int kInvalidInterface
kInvalidInterface
Definition StatusCodes.h:555
static constexpr int ConfigReadWriteMismatch
The configs read from the device do not match the configs that were written.
Definition StatusCodes.h:168
static constexpr int NotAllPIDValuesUpdated
NotAllPIDValuesUpdated.
Definition StatusCodes.h:424
static constexpr int TaskIsBusy
Diagnostic Server is busy with another command.
Definition StatusCodes.h:39
constexpr const char * GetName() const
Gets the name of this StatusCode.
Definition StatusCodes.h:871
static constexpr int kInvalidProtocol
kInvalidProtocol
Definition StatusCodes.h:567
static constexpr int CouldNotSendFlash
Could not field upgrade the device.
Definition StatusCodes.h:64
static constexpr int CannotOpenUdpPort
CannotOpenUdpPort.
Definition StatusCodes.h:276
static constexpr int CanivCliError
Command-line issue with caniv.
Definition StatusCodes.h:204
static constexpr int InsufficientSz
InsufficientSz.
Definition StatusCodes.h:176
static constexpr int AppTooOld
Device firmware application is too old.
Definition StatusCodes.h:89
static constexpr int MultipleReplayNotSupported
Hoot replay does not support replaying multiple files.
Definition StatusCodes.h:810
static constexpr int WarningNotInitialized
WarningNotInitialized.
Definition StatusCodes.h:624
static constexpr int MODULE_NOT_INIT_SET_ERROR
MODULE_NOT_INIT_SET_ERROR.
Definition StatusCodes.h:440
static constexpr int InvalidJson
InvalidJson.
Definition StatusCodes.h:300
static constexpr int BufferFull
Buffer is full, cannot insert more data.
Definition StatusCodes.h:313
static constexpr int MusicFileInvalid
Music file is invalid.
Definition StatusCodes.h:534
static constexpr int DidNotGetFullDhcp
DidNotGetFullDhcp.
Definition StatusCodes.h:244
static constexpr int CanOverflowed
CanOverflowed.
Definition StatusCodes.h:387
static constexpr int MotProfFirmThreshold2
Motor Controller must have >= 3.4 firmware for advanced PID0/PID1 features.
Definition StatusCodes.h:349
static constexpr int FlashWasGood
Device field upgrade was successful.
Definition StatusCodes.h:85
static constexpr int CouldNotRunApp
Could not run the device firmware application.
Definition StatusCodes.h:72
static constexpr int CouldNotConfirmBl
Could not confirm the device has entered the bootloader.
Definition StatusCodes.h:56
static constexpr int GeneralError
General Error Occurred.
Definition StatusCodes.h:416
static constexpr int GeneralWarning
General Warning Occurred.
Definition StatusCodes.h:321
static constexpr int HootLogTooOld
The given hoot log requires an older version of Phoenix API.
Definition StatusCodes.h:792
static constexpr int CouldNotErase
Could not erase flash.
Definition StatusCodes.h:60
static constexpr int HwTimestampOutOfSync
The timestamp reported by CANivore is at least 10ms older than the timestamp reported by the system,...
Definition StatusCodes.h:630
static constexpr int CouldNotEnterBl
Could not put the device into bootloader mode.
Definition StatusCodes.h:52
static constexpr int ModelMismatch
Model name in license file does not match model name of selected device.
Definition StatusCodes.h:664
static constexpr int NoConfigs
This device did not report any available configs.
Definition StatusCodes.h:151
constexpr bool IsWarning() const
Definition StatusCodes.h:860
static constexpr int SerialMismatch
Serial Number in license file does not match model name of selected device.
Definition StatusCodes.h:669
static constexpr int InvalidLicenseResp
InvalidLicenseResp.
Definition StatusCodes.h:248
static constexpr int ConfigFailed
ConfigFailed.
Definition StatusCodes.h:155
static constexpr int InvalidCrfBadHeader
InvalidCrfBadHeader.
Definition StatusCodes.h:208
static constexpr int CouldNotFindDynamicId
CouldNotFindDynamicId.
Definition StatusCodes.h:236
static constexpr int GainsAreNotSet
GainsAreNotSet.
Definition StatusCodes.h:460
static constexpr int BufferFailure
BufferFailure.
Definition StatusCodes.h:406
static constexpr int OnlySupportedInTunerX
This feature requires Tuner X.
Definition StatusCodes.h:200
static constexpr int InvalidModel
This feature is not supported for this device model.
Definition StatusCodes.h:180
static constexpr int CannotWriteSerialPort
CannotWriteSerialPort.
Definition StatusCodes.h:260
static constexpr int InvalidParamValue
An invalid argument was passed into the function/VI, such as a null pointer.
Definition StatusCodes.h:370
constexpr StatusCode()
Definition StatusCodes.h:837
static constexpr int DirectoryMissing
Could not find specified directory.
Definition StatusCodes.h:763
static constexpr int CanMessageStale
CAN message is stale, data is valid but old.
Definition StatusCodes.h:309
static constexpr int InvalidCrfBadSectHeader
InvalidCrfBadSectHeader.
Definition StatusCodes.h:224
static constexpr int kSendFailed
kSendFailed
Definition StatusCodes.h:587
static constexpr int NoSerialControlFrameResp
NoSerialControlFrameResp.
Definition StatusCodes.h:272
static constexpr int kInvalidRespFormat
kInvalidRespFormat
Definition StatusCodes.h:595
static constexpr int TalonFXFirmwarePreVBatDetect
Talon FX(Falcon 500) Firmware Too Old.
Definition StatusCodes.h:501
static constexpr int ControlModeNotValid
The control mode is not valid for this function.
Definition StatusCodes.h:334
static constexpr int InvalidOrchestraAction
An invalid orchestra action occurred.
Definition StatusCodes.h:538
static constexpr int InvalidCrfFileSzInvald
InvalidCrfFileSzInvald.
Definition StatusCodes.h:212
static constexpr int InvalidModeToGetSignal
The current mode of the device is invalid for getting this signal.
Definition StatusCodes.h:690
static constexpr int InvalidCrfWrongProduct
Specified CRF is for the wrong product.
Definition StatusCodes.h:216
static constexpr int kWinUsbQueryFailed
kWinUsbQueryFailed
Definition StatusCodes.h:603
static constexpr int SelfTestIsEmpty
Self Test report does not have any values, is the firmware up to date?
Definition StatusCodes.h:681
static constexpr int NoUdpControlFrameResp
NoUdpControlFrameResp.
Definition StatusCodes.h:292
static constexpr int DeviceDidNotRespondToDiagReq
DeviceDidNotRespondToDiagReq.
Definition StatusCodes.h:196
static constexpr int EcuIsNotPresent
Device is not present.
Definition StatusCodes.h:48
static constexpr int InvalidCrfBadSectSize
InvalidCrfBadSectSize.
Definition StatusCodes.h:228
static constexpr int CannotReadUdpPort
CannotReadUdpPort.
Definition StatusCodes.h:284
static constexpr int LoggerNotRunning
The signal logger is not running.
Definition StatusCodes.h:774
static constexpr int kListenFailed
kListenFailed
Definition StatusCodes.h:583
static constexpr int InvalidDeviceId
The device ID is invalid.
Definition StatusCodes.h:834
constexpr StatusCode(int val)
Definition StatusCodes.h:836
static constexpr int MotProfFirmThreshold
Motor Controller must have >= 3.2 firmware for motion profile control mode.
Definition StatusCodes.h:344
static constexpr int FeaturesNotAvailableYet
This feature will be supported in a future update.
Definition StatusCodes.h:330
static constexpr int TxFailed
Could not transmit CAN Frame.
Definition StatusCodes.h:365
static constexpr int InvalidTask
This diagnostic action is not supported.
Definition StatusCodes.h:105
static constexpr int FirmwareVersNotCompatible
Firmware version is not compatible with this version of Phoenix.
Definition StatusCodes.h:759
static constexpr int UserSignalLimitExceeded
The maximum number of loggable user signals has been exceeded.
Definition StatusCodes.h:815
static constexpr int InvalidLicenseResponse
InvalidLicenseResponse.
Definition StatusCodes.h:702
static constexpr int CompileSzIsWrong
CompileSzIsWrong.
Definition StatusCodes.h:97
static constexpr int CustomNameNotSupported
CustomNameNotSupported.
Definition StatusCodes.h:163
static constexpr int CouldNotDecodeDeviceFirmware
Device firmware could not be decoded.
Definition StatusCodes.h:730
constexpr bool operator==(int other) const
Definition StatusCodes.h:844
static constexpr int InvalidCanivCache
InvalidCanivCache.
Definition StatusCodes.h:252
static constexpr int FirmwareTooNew
Firmware Too New.
Definition StatusCodes.h:746
static constexpr int kReceiveFailed
kReceiveFailed
Definition StatusCodes.h:591
static constexpr int MusicInterrupted
Music interrupted due to one of the instruments being commanded a different control mode.
Definition StatusCodes.h:547
static constexpr int CouldNotRetrieveV6Firmware
Device firmware could not be retrieved.
Definition StatusCodes.h:724
static constexpr int FrequentConfigCalls
Do not apply or refresh configs periodically, as configs are blocking.
Definition StatusCodes.h:634
static constexpr int CannotReadSerialPort
CannotReadSerialPort.
Definition StatusCodes.h:264
static constexpr int MissingRoutineInLibrary
MissingRoutineInLibrary.
Definition StatusCodes.h:513
static constexpr int MusicFileNotFound
Could not find music file specified, try specifying an absolute path.
Definition StatusCodes.h:521
static constexpr int WrongRemoteLimitSwitchSource
Use RemoteLimitSwitchSource instead of LimitSwitchSource.
Definition StatusCodes.h:464
static constexpr int MoreThanOneFile
MoreThanOneFile.
Definition StatusCodes.h:117
static constexpr int kWinUsbInitFailed
kWinUsbInitFailed
Definition StatusCodes.h:599
static constexpr int CouldNotConfirmId
Could not verify that the changed ID took effect.
Definition StatusCodes.h:81
constexpr bool IsOK() const
Definition StatusCodes.h:864
static constexpr int CannotSerialToDevice
CannotSerialToDevice.
Definition StatusCodes.h:268
static constexpr int LibraryCouldNotBeLoaded
LibraryCouldNotBeLoaded.
Definition StatusCodes.h:509
static constexpr int NoControls
This device does not support new controls.
Definition StatusCodes.h:188
constexpr auto operator<=>(int other) const
Definition StatusCodes.h:848
static constexpr int ConfigMotionSCurveRequiresHigherFirm
Config Motion S Curve Strength features require firmware >=4.16.
Definition StatusCodes.h:495
static constexpr int MusicNotSupported
This device doesn't support MusicTone control mode.
Definition StatusCodes.h:551
static constexpr int GadgeteerDeviceNoSetId
Cannot set the ID of a gadgeteer device.
Definition StatusCodes.h:101
static constexpr int NodeIsInvalid
Specified device was not found.
Definition StatusCodes.h:122
static constexpr int InvalidSize
Size is invalid.
Definition StatusCodes.h:698
static constexpr int TimeoutCannotBeZero
Blocking operations, such as configs, cannot have a timeout of 0.
Definition StatusCodes.h:779
static constexpr int MODULE_NOT_INIT_GET_ERROR
MODULE_NOT_INIT_GET_ERROR.
Definition StatusCodes.h:444
static constexpr int CouldNotReqFactoryDefault
Unable to factory default this device.
Definition StatusCodes.h:159
static constexpr int ConfigFactoryDefaultRequiresHigherFirm
Config factory default features require firmware >=3.10.
Definition StatusCodes.h:491
static constexpr int FirmwareTooOld
Firmware Too Old.
Definition StatusCodes.h:397
static constexpr int CorruptedPOST
CorruptedPOST.
Definition StatusCodes.h:146
static constexpr int LicenseDownloadFailed
License did not successfully download to Device.
Definition StatusCodes.h:677
static constexpr int FeatureNotSupported
This feature is not supported.
Definition StatusCodes.h:138
static constexpr int kErrorPollingForDevices
kErrorPollingForDevices
Definition StatusCodes.h:718
static constexpr int NoCrfFile
Specified CRF file could not be found.
Definition StatusCodes.h:232
static constexpr int UnexpectedArbId
ArbID is incorrect.
Definition StatusCodes.h:383
static constexpr int GEN_PORT_ERROR
GEN_PORT_ERROR.
Definition StatusCodes.h:428
static constexpr int CANdleAnimSlotOutOfBounds
CANdleAnimSlotOutOfBounds.
Definition StatusCodes.h:475
static constexpr int CouldNotSendCanFrame
CouldNotSendCanFrame.
Definition StatusCodes.h:130
static constexpr int kInvalidClass
kInvalidClass
Definition StatusCodes.h:563
static constexpr int WheelRadiusTooSmall
Wheel Radius is too small, cannot get distance traveled.
Definition StatusCodes.h:448
static constexpr int CouldNotSerialize
The data frame could not be serialized for transmit.
Definition StatusCodes.h:750
static constexpr int InvalidDeviceSpec
InvalidDeviceSpec.
Definition StatusCodes.h:43
static constexpr int UnlicensedHootLog
Hoot log is not licensed.
Definition StatusCodes.h:800
static constexpr int NoDevicesOnBus
NoDevicesOnBus.
Definition StatusCodes.h:113
static constexpr int MechanismFaulted
The mechanism is disabled due to a fault in one of the devices.
Definition StatusCodes.h:754
static constexpr int ApiTooOld
This API version is too old for the firmware on the device.
Definition StatusCodes.h:769
static constexpr int DidNotGetDhcp
DidNotGetDhcp.
Definition StatusCodes.h:240
static constexpr int InvalidDeviceDescriptor
InvalidDeviceDescriptor.
Definition StatusCodes.h:126
static constexpr int MusicFileTooNew
Music file version is too new, update Phoenix to utilize this file.
Definition StatusCodes.h:530
static constexpr int UsingProFeatureOnUnlicensedDevice
Using a Pro only feature on an unlicensed device.
Definition StatusCodes.h:740
constexpr bool IsError() const
Definition StatusCodes.h:856
static constexpr int SignalNotSupportedOrMissing
The requested signal is missing or not supported.
Definition StatusCodes.h:824
static constexpr int kDeviceResponseIncorrect
kDeviceResponseIncorrect
Definition StatusCodes.h:714
static constexpr int SimDeviceAlreadyExists
SimDeviceAlreadyExists.
Definition StatusCodes.h:361
static constexpr int TicksPerRevZero
Ticks per revolution is 0, cannot get heading.
Definition StatusCodes.h:452
static constexpr int MissingSchema
The schema for the logged user signal is invalid or missing.
Definition StatusCodes.h:829
static constexpr int kFailedSetup
kFailedSetup
Definition StatusCodes.h:579
static constexpr int CannotLicenseWhileEnabled
Device cannot be licensed while it is control enabled.
Definition StatusCodes.h:784
constexpr friend bool operator==(StatusCode, StatusCode)=default
static constexpr int CouldNotReqSetConfigs
Could not apply the device configs.
Definition StatusCodes.h:172
static constexpr int InvalidDeviceModel
The provided model was not a valid device type.
Definition StatusCodes.h:819
static constexpr int CouldNotReqSetId
Unable to set ID to this device.
Definition StatusCodes.h:77
static constexpr int kInvalidPath
kInvalidPath
Definition StatusCodes.h:571
static constexpr int TxTimeout
CAN Transmit timed out.
Definition StatusCodes.h:379
static constexpr int InvalidNetwork
The given network/CAN bus is invalid.
Definition StatusCodes.h:639
static constexpr int MissingContext
Could not determine context from this device hash.
Definition StatusCodes.h:659
static constexpr int DeviceIsNull
DeviceIsNull.
Definition StatusCodes.h:192
static constexpr int MultiSignalNotSupported
The CAN bus does not support multi-signal synchronization.
Definition StatusCodes.h:643
static constexpr int SigNotUpdated
No new response to update signal.
Definition StatusCodes.h:420
static constexpr int TimeoutIso15Response
TimeoutIso15Response.
Definition StatusCodes.h:296
static constexpr int CannotWriteUdpPort
CannotWriteUdpPort.
Definition StatusCodes.h:280
static constexpr int ResourceNotAvailable
ResourceNotAvailable.
Definition StatusCodes.h:517
static constexpr int DistanceBetweenWheelsTooSmall
Distance between wheels is too small, cannot get heading.
Definition StatusCodes.h:456
static constexpr int RxTimeout
CAN frame not received/too-stale.
Definition StatusCodes.h:375
static constexpr int NotSupported
This is not supported.
Definition StatusCodes.h:655
static constexpr int InvalidFile
Could not open or read the given file.
Definition StatusCodes.h:788
static constexpr int NotFound
Could not find this value when searching for it.
Definition StatusCodes.h:651
#define CTREXPORT
Definition export.h:14
@ OK
The mechanism is running normally.
Definition motor_constants.h:14