34 static constexpr int OK = 0;
362 static constexpr int TxFailed = -1001;
643 static constexpr int NotFound = -10004;
665 static constexpr int NoFile = -10009;
778 operator int()
const {
return this->value; }
780 bool operator==(
const StatusCode &data)
const
782 return this->value == data.value;
784 bool operator==(
int data)
const
786 return this->value == data;
788 bool operator<(
const StatusCode &data)
const
790 return this->value < data.value;
792 bool operator<(
int data)
const
794 return this->value < data;
796 StatusCode(
int val) : value{val} {}
799 const char *GetName()
const
804 case -100:
return "TaskIsBusy";
805 case -101:
return "InvalidDeviceSpec";
806 case -102:
return "EcuIsNotPresent";
807 case -103:
return "CouldNotEnterBl";
808 case -104:
return "CouldNotConfirmBl";
809 case -105:
return "CouldNotErase";
810 case -106:
return "CouldNotSendFlash";
811 case -107:
return "CouldNotValidate";
812 case -108:
return "CouldNotRunApp";
813 case -109:
return "CouldNotReqSetId";
814 case -110:
return "CouldNotConfirmId";
815 case -111:
return "FlashWasGood";
816 case -112:
return "AppTooOld";
817 case -113:
return "CouldNotReqSetDesc";
818 case -114:
return "CompileSzIsWrong";
819 case -115:
return "GadgeteerDeviceNoSetId";
820 case -116:
return "InvalidTask";
821 case -117:
return "NotImplemented";
822 case -118:
return "NoDevicesOnBus";
823 case -119:
return "MoreThanOneFile";
824 case -120:
return "NodeIsInvalid";
825 case -121:
return "InvalidDeviceDescriptor";
826 case -123:
return "CouldNotSendCanFrame";
827 case -124:
return "NormalModeMsgNotPresent";
828 case -125:
return "FeatureNotSupported";
829 case -126:
return "NotUpdating";
830 case -127:
return "CorruptedPOST";
831 case -128:
return "NoConfigs";
832 case -129:
return "ConfigFailed";
833 case -130:
return "CouldNotReqFactoryDefault";
834 case -131:
return "CustomNameNotSupported";
835 case -132:
return "ConfigReadWriteMismatch";
836 case -133:
return "CouldNotReqSetConfigs";
837 case -134:
return "InsufficientSz";
838 case -135:
return "InvalidModel";
839 case -140:
return "CouldNotReqDevInfo";
840 case -141:
return "NoControls";
841 case -142:
return "DeviceIsNull";
842 case -143:
return "DeviceDidNotRespondToDiagReq";
843 case -144:
return "OnlySupportedInTunerX";
844 case -145:
return "CanivCliError";
845 case -200:
return "InvalidCrfBadHeader";
846 case -201:
return "InvalidCrfFileSzInvald";
847 case -202:
return "InvalidCrfWrongProduct";
848 case -203:
return "InvalidCrfNoSects";
849 case -204:
return "InvalidCrfBadSectHeader";
850 case -205:
return "InvalidCrfBadSectSize";
851 case -206:
return "NoCrfFile";
852 case -300:
return "CouldNotFindDynamicId";
853 case -301:
return "DidNotGetDhcp";
854 case -302:
return "DidNotGetFullDhcp";
855 case -350:
return "InvalidLicenseResp";
856 case -351:
return "InvalidCanivCache";
857 case -500:
return "CannotOpenSerialPort";
858 case -501:
return "CannotWriteSerialPort";
859 case -502:
return "CannotReadSerialPort";
860 case -503:
return "CannotSerialToDevice";
861 case -504:
return "NoSerialControlFrameResp";
862 case -600:
return "CannotOpenUdpPort";
863 case -601:
return "CannotWriteUdpPort";
864 case -602:
return "CannotReadUdpPort";
865 case -603:
return "CannotUdpToDevice";
866 case -604:
return "NoUdpControlFrameResp";
867 case -605:
return "TimeoutIso15Response";
868 case -700:
return "InvalidJson";
869 case -800:
return "AppIsTerminating";
870 case 1000:
return "CanMessageStale";
871 case 1006:
return "BufferFull";
872 case 1010:
return "PulseWidthSensorNotPresent";
873 case 1100:
return "GeneralWarning";
874 case 1103:
return "FirmVersionCouldNotBeRetrieved";
875 case 1104:
return "FeaturesNotAvailableYet";
876 case 1105:
return "ControlModeNotValid";
877 case 1106:
return "ControlModeNotSupportedYet";
878 case 1109:
return "MotProfFirmThreshold";
879 case 1110:
return "MotProfFirmThreshold2";
880 case 1200:
return "SimDeviceNotFound";
881 case 1201:
return "SimPhysicsTypeNotSupported";
882 case 1202:
return "SimDeviceAlreadyExists";
883 case -1001:
return "TxFailed";
884 case -1002:
return "InvalidParamValue";
885 case -1003:
return "RxTimeout";
886 case -1004:
return "TxTimeout";
887 case -1005:
return "UnexpectedArbId";
888 case -1006:
return "CanOverflowed";
889 case -1007:
return "SensorNotPresent";
890 case -1008:
return "FirmwareTooOld";
891 case -1009:
return "CouldNotChangePeriod";
892 case -1010:
return "BufferFailure";
893 case -1011:
return "FirmwareNonFRC";
894 case -1100:
return "GeneralError";
895 case -1200:
return "SigNotUpdated";
896 case -1201:
return "NotAllPIDValuesUpdated";
897 case -1300:
return "GEN_PORT_ERROR";
898 case -1301:
return "PORT_MODULE_TYPE_MISMATCH";
899 case -1400:
return "GEN_MODULE_ERROR";
900 case -1401:
return "MODULE_NOT_INIT_SET_ERROR";
901 case -1402:
return "MODULE_NOT_INIT_GET_ERROR";
902 case -1500:
return "WheelRadiusTooSmall";
903 case -1501:
return "TicksPerRevZero";
904 case -1502:
return "DistanceBetweenWheelsTooSmall";
905 case -1503:
return "GainsAreNotSet";
906 case -1504:
return "WrongRemoteLimitSwitchSource";
907 case -1505:
return "DoubleVoltageCompensatingWPI";
908 case -1506:
return "CANdleAnimSlotOutOfBounds";
909 case -1600:
return "IncompatibleMode";
910 case -1601:
return "InvalidHandle";
911 case -1700:
return "FeatureRequiresHigherFirm";
912 case -1702:
return "ConfigFactoryDefaultRequiresHigherFirm";
913 case -1703:
return "ConfigMotionSCurveRequiresHigherFirm";
914 case -1704:
return "TalonFXFirmwarePreVBatDetect";
915 case -1705:
return "CANdleAnimationsRequireHigherFirm";
916 case -1800:
return "LibraryCouldNotBeLoaded";
917 case -1801:
return "MissingRoutineInLibrary";
918 case -1802:
return "ResourceNotAvailable";
919 case -1900:
return "MusicFileNotFound";
920 case -1901:
return "MusicFileWrongSize";
921 case -1902:
return "MusicFileTooNew";
922 case -1903:
return "MusicFileInvalid";
923 case -1904:
return "InvalidOrchestraAction";
924 case -1905:
return "MusicFileTooOld";
925 case -1906:
return "MusicInterrupted";
926 case -1907:
return "MusicNotSupported";
927 case -2000:
return "kInvalidInterface";
928 case -2001:
return "kInvalidGuid";
929 case -2002:
return "kInvalidClass";
930 case -2003:
return "kInvalidProtocol";
931 case -2004:
return "kInvalidPath";
932 case -2005:
return "kGeneralWinUsbError";
933 case -2006:
return "kFailedSetup";
934 case -2007:
return "kListenFailed";
935 case -2008:
return "kSendFailed";
936 case -2009:
return "kReceiveFailed";
937 case -2010:
return "kInvalidRespFormat";
938 case -2011:
return "kWinUsbInitFailed";
939 case -2012:
return "kWinUsbQueryFailed";
940 case -2013:
return "kWinUsbGeneralError";
941 case -2014:
return "kAccessDenied";
942 case -2015:
return "kFirmwareInvalidResponse";
943 case -10000:
return "StatusCodeNotInitialized";
944 case 10000:
return "WarningNotInitialized";
945 case 10001:
return "HwTimestampOutOfSync";
946 case -10001:
return "InvalidNetwork";
947 case -10002:
return "MultiSignalNotSupported";
948 case -10003:
return "CouldNotCast";
949 case -10004:
return "NotFound";
950 case -10005:
return "NotSupported";
951 case -10006:
return "MissingContext";
952 case -10007:
return "ModelMismatch";
953 case -10008:
return "SerialMismatch";
954 case -10009:
return "NoFile";
955 case -10010:
return "LicenseDownloadFailed";
956 case -10011:
return "SelfTestIsEmpty";
957 case -10012:
return "SignalLookupFailed";
958 case -10013:
return "InvalidModeToGetSignal";
959 case -10014:
return "UnlicensedDevice";
960 case -10015:
return "InvalidSize";
961 case -10016:
return "InvalidLicenseResponse";
962 case -10017:
return "InvalidContext";
963 case -10018:
return "InternalError";
964 case -10019:
return "kDeviceResponseIncorrect";
965 case -10020:
return "kErrorPollingForDevices";
966 case -10021:
return "CouldNotRetrieveV6Firmware";
967 case -10022:
return "CouldNotDecodeDeviceFirmware";
968 case -10023:
return "InvalidIDToFollow";
969 case -10024:
return "UsingProFeatureOnUnlicensedDevice";
970 case -10025:
return "FirmwareTooNew";
971 case -10026:
return "CouldNotSerialize";
972 case -10027:
return "MechanismFaulted";
973 case -10028:
return "FirmwareVersNotCompatible";
974 case -10029:
return "DirectoryMissing";
975 case -10030:
return "ApiTooOld";
976 case -10031:
return "LoggerNotRunning";
977 case -10032:
return "TimeoutCannotBeZero";
978 case -10033:
return "CannotLicenseWhileEnabled";
982 return "Could not find name for StatusCode";
985 const char *GetDescription()
const
989 case 0:
return "No Error";
990 case -100:
return "Diagnostic Server is busy with another command.";
991 case -101:
return "InvalidDeviceSpec";
992 case -102:
return "Device is not present. Verify the device is connected and powered, and that the CAN bus is terminated.";
993 case -103:
return "Could not put the device into bootloader mode.";
994 case -104:
return "Could not confirm the device has entered the bootloader.";
995 case -105:
return "Could not erase flash.";
996 case -106:
return "Could not field upgrade the device.";
997 case -107:
return "Bootloader could not verify integrity of the flashed application.";
998 case -108:
return "Could not run the device firmware application.";
999 case -109:
return "Unable to set ID to this device.";
1000 case -110:
return "Could not verify that the changed ID took effect.";
1001 case -111:
return "Device field upgrade was successful.";
1002 case -112:
return "Device firmware application is too old.";
1003 case -113:
return "Unable to set name to this device.";
1004 case -114:
return "CompileSzIsWrong";
1005 case -115:
return "Cannot set the ID of a gadgeteer device.";
1006 case -116:
return "This diagnostic action is not supported.";
1007 case -117:
return "Not Implemented, check latest installer.";
1008 case -118:
return "NoDevicesOnBus";
1009 case -119:
return "MoreThanOneFile";
1010 case -120:
return "Specified device was not found. Verify the device is connected and powered, and that the CAN bus is terminated.";
1011 case -121:
return "InvalidDeviceDescriptor";
1012 case -123:
return "CouldNotSendCanFrame";
1013 case -124:
return "NormalModeMsgNotPresent";
1014 case -125:
return "This feature is not supported.";
1015 case -126:
return "The diagnostic server is not field upgrading any devices.";
1016 case -127:
return "CorruptedPOST";
1017 case -128:
return "This device did not report any available configs. Verify firmware and diagnostics are up-to-date.";
1018 case -129:
return "ConfigFailed";
1019 case -130:
return "Unable to factory default this device.";
1020 case -131:
return "CustomNameNotSupported";
1021 case -132:
return "The configs read from the device do not match the configs that were written.";
1022 case -133:
return "Could not apply the device configs.";
1023 case -134:
return "InsufficientSz";
1024 case -135:
return "This feature is not supported for this device model.";
1025 case -140:
return "CouldNotReqDevInfo";
1026 case -141:
return "This device does not support new controls.";
1027 case -142:
return "DeviceIsNull";
1028 case -143:
return "DeviceDidNotRespondToDiagReq";
1029 case -144:
return "This feature requires Tuner X.";
1030 case -145:
return "Command-line issue with caniv.";
1031 case -200:
return "InvalidCrfBadHeader";
1032 case -201:
return "InvalidCrfFileSzInvald";
1033 case -202:
return "Specified CRF is for the wrong product.";
1034 case -203:
return "InvalidCrfNoSects";
1035 case -204:
return "InvalidCrfBadSectHeader";
1036 case -205:
return "InvalidCrfBadSectSize";
1037 case -206:
return "Specified CRF file could not be found.";
1038 case -300:
return "CouldNotFindDynamicId";
1039 case -301:
return "DidNotGetDhcp";
1040 case -302:
return "DidNotGetFullDhcp";
1041 case -350:
return "InvalidLicenseResp";
1042 case -351:
return "InvalidCanivCache";
1043 case -500:
return "CannotOpenSerialPort";
1044 case -501:
return "CannotWriteSerialPort";
1045 case -502:
return "CannotReadSerialPort";
1046 case -503:
return "CannotSerialToDevice";
1047 case -504:
return "NoSerialControlFrameResp";
1048 case -600:
return "CannotOpenUdpPort";
1049 case -601:
return "CannotWriteUdpPort";
1050 case -602:
return "CannotReadUdpPort";
1051 case -603:
return "CannotUdpToDevice";
1052 case -604:
return "NoUdpControlFrameResp";
1053 case -605:
return "TimeoutIso15Response";
1054 case -700:
return "InvalidJson";
1055 case -800:
return "The user application is shutting down.";
1056 case 1000:
return "CAN Message is stale.";
1057 case 1006:
return "Buffer is full, cannot insert more data.";
1058 case 1010:
return "PulseWidthSensorNotPresent";
1059 case 1100:
return "General Warning Occurred.";
1060 case 1103:
return "Firm Vers could not be retrieved. Use Phoenix Tuner X to check ID and firmware(CRF) version.";
1061 case 1104:
return "This feature will be supported in a future update.";
1062 case 1105:
return "The control mode is not valid for this function.";
1063 case 1106:
return "This control mode is not supported yet. A future release will supported this soon.";
1064 case 1109:
return "Motor Controller must have >= 3.2 firmware for motion profile control mode.";
1065 case 1110:
return "Motor Controller must have >= 3.4 firmware for advanced PID0/PID1 features.";
1066 case 1200:
return "SimDeviceNotFound";
1067 case 1201:
return "SimPhysicsTypeNotSupported";
1068 case 1202:
return "SimDeviceAlreadyExists";
1069 case -1001:
return "Could not transmit CAN Frame.";
1070 case -1002:
return "An invalid argument was passed into the function/VI, such as a null pointer.";
1071 case -1003:
return "CAN frame not received/too-stale. Check the CAN bus wiring, CAN bus utilization, and power to the device.";
1072 case -1004:
return "CAN Transmit timed out.";
1073 case -1005:
return "ArbID is incorrect.";
1074 case -1006:
return "CanOverflowed";
1075 case -1007:
return "Sensor Not Present.";
1076 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.";
1077 case -1009:
return "Control Frame Period could not be changed. Most likely it is not being transmitted.";
1078 case -1010:
return "BufferFailure";
1079 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.";
1080 case -1100:
return "General Error Occurred.";
1081 case -1200:
return "No new response to update signal.";
1082 case -1201:
return "NotAllPIDValuesUpdated";
1083 case -1300:
return "GEN_PORT_ERROR";
1084 case -1301:
return "PORT_MODULE_TYPE_MISMATCH";
1085 case -1400:
return "GEN_MODULE_ERROR";
1086 case -1401:
return "MODULE_NOT_INIT_SET_ERROR";
1087 case -1402:
return "MODULE_NOT_INIT_GET_ERROR";
1088 case -1500:
return "Wheel Radius is too small, cannot get distance traveled.";
1089 case -1501:
return "Ticks per revolution is 0, cannot get heading.";
1090 case -1502:
return "Distance between wheels is too small, cannot get heading.";
1091 case -1503:
return "GainsAreNotSet";
1092 case -1504:
return "Use RemoteLimitSwitchSource instead of LimitSwitchSource.";
1093 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().";
1094 case -1506:
return "CANdleAnimSlotOutOfBounds";
1095 case -1600:
return "IncompatibleMode";
1096 case -1601:
return "Handle passed into function is incorrect.";
1097 case -1700:
return "Features requires newer firmware version.";
1098 case -1702:
return "Config factory default features require firmware >=3.10.";
1099 case -1703:
return "Config Motion S Curve Strength features require firmware >=4.16.";
1100 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.";
1101 case -1705:
return "CANdleAnimationsRequireHigherFirm";
1102 case -1800:
return "LibraryCouldNotBeLoaded";
1103 case -1801:
return "MissingRoutineInLibrary";
1104 case -1802:
return "ResourceNotAvailable";
1105 case -1900:
return "Could not find music file specified, try specifying an absolute path.";
1106 case -1901:
return "Music file size is incorrect, could not parse correctly. Ensure you're using Tuner to generate file.";
1107 case -1902:
return "Music file version is too new, update Phoenix to utilize this file.";
1108 case -1903:
return "Music file is invalid. Ensure you're using Tuner to generate file.";
1109 case -1904:
return "An invalid orchestra action occurred. Ensure a music file is loaded.";
1110 case -1905:
return "This music file version is too old. Regenerate file using Tuner.";
1111 case -1906:
return "Music interrupted due to one of the instruments being commanded a different control mode. Press Play to resume music.";
1112 case -1907:
return "This device doesn't support MusicTone control mode.";
1113 case -2000:
return "kInvalidInterface";
1114 case -2001:
return "kInvalidGuid";
1115 case -2002:
return "kInvalidClass";
1116 case -2003:
return "kInvalidProtocol";
1117 case -2004:
return "kInvalidPath";
1118 case -2005:
return "kGeneralWinUsbError";
1119 case -2006:
return "kFailedSetup";
1120 case -2007:
return "kListenFailed";
1121 case -2008:
return "kSendFailed";
1122 case -2009:
return "kReceiveFailed";
1123 case -2010:
return "kInvalidRespFormat";
1124 case -2011:
return "kWinUsbInitFailed";
1125 case -2012:
return "kWinUsbQueryFailed";
1126 case -2013:
return "kWinUsbGeneralError";
1127 case -2014:
return "kAccessDenied";
1128 case -2015:
return "kFirmwareInvalidResponse";
1129 case -10000:
return "This StatusCode has not been initialized. Make sure the StatusCode is getting assigned to the return of a method.";
1130 case 10000:
return "WarningNotInitialized";
1131 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.";
1132 case -10001:
return "InvalidNetwork";
1133 case -10002:
return "The CAN bus does not support multi-signal synchronization.";
1134 case -10003:
return "Could not cast from base value to this particular signal's type";
1135 case -10004:
return "Could not find this value when searching for it";
1136 case -10005:
return "This is not supported";
1137 case -10006:
return "Could not determine context from this device hash";
1138 case -10007:
return "Model name in license file does not match model name of selected device.";
1139 case -10008:
return "Serial Number in license file does not match model name of selected device.";
1140 case -10009:
return "Could not find specified file.";
1141 case -10010:
return "License did not successfully download to Device.";
1142 case -10011:
return "Self Test report does not have any values, is the firmware up to date?";
1143 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.";
1144 case -10013:
return "The current mode of the device is invalid for getting this signal.";
1145 case -10014:
return "Device is not licensed. Cannot get any data from it.";
1146 case -10015:
return "Size is invalid.";
1147 case -10016:
return "InvalidLicenseResponse";
1148 case -10017:
return "InvalidContext";
1149 case -10018:
return "InternalError";
1150 case -10019:
return "kDeviceResponseIncorrect";
1151 case -10020:
return "kErrorPollingForDevices";
1152 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.";
1153 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.";
1154 case -10023:
return "The values specified for master are in valid. Make sure the Device ID of master are correct.";
1155 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.";
1156 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.";
1157 case -10026:
return "The data frame could not be serialized for transmit.";
1158 case -10027:
return "The mechanism is disabled due to a fault in one of the devices.";
1159 case -10028:
return "Firmware version is not compatible with this version of Phoenix. Make sure your firmware and API major versions match.";
1160 case -10029:
return "Could not find specified directory.";
1161 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.";
1162 case -10031:
return "The signal logger is not running. Start the signal logger before writing any signals.";
1163 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.";
1164 case -10033:
return "Device cannot be licensed while it is control enabled. Disable and neutral the device to apply the licenses.";
1168 return "Could not find description for StatusCode";
1171 friend std::ostream &operator<<(std::ostream &os, StatusCode status)
1173 os << status.GetName() <<
": " << status.GetDescription();
1176 bool IsError()
const {
return value < 0; }
1177 bool IsWarning()
const {
return value > 0; }
1178 bool IsOK()
const {
return value ==
OK; }
enum _StatusCode_t StatusCode_t
Typedef enum of the StatusCode for use in C projects.
_StatusCode_t
Typedef enum of the StatusCode for use in C projects.
Definition: StatusCodes.h:1192
@ CouldNotRunApp
Could not run the device firmware application.
Definition: StatusCodes.h:1233
@ CouldNotReqSetId
Unable to set ID to this device.
Definition: StatusCodes.h:1237
@ TalonFXFirmwarePreVBatDetect
Talon FX(Falcon 500) Firmware Too Old.
Definition: StatusCodes.h:1660
@ SimDeviceNotFound
SimDeviceNotFound.
Definition: StatusCodes.h:1512
@ InvalidContext
InvalidContext.
Definition: StatusCodes.h:1860
@ CanMessageStale
CAN Message is stale.
Definition: StatusCodes.h:1468
@ NoConfigs
This device did not report any available configs.
Definition: StatusCodes.h:1311
@ IncompatibleMode
IncompatibleMode.
Definition: StatusCodes.h:1638
@ InvalidHandle
Handle passed into function is incorrect.
Definition: StatusCodes.h:1642
@ GainsAreNotSet
GainsAreNotSet.
Definition: StatusCodes.h:1619
@ MusicFileInvalid
Music file is invalid.
Definition: StatusCodes.h:1693
@ TicksPerRevZero
Ticks per revolution is 0, cannot get heading.
Definition: StatusCodes.h:1611
@ NotUpdating
The diagnostic server is not field upgrading any devices.
Definition: StatusCodes.h:1302
@ MotProfFirmThreshold
Motor Controller must have >= 3.2 firmware for motion profile control mode.
Definition: StatusCodes.h:1503
@ AppIsTerminating
The user application is shutting down.
Definition: StatusCodes.h:1464
@ CannotSerialToDevice
CannotSerialToDevice.
Definition: StatusCodes.h:1428
@ ApiTooOld
This API version is too old for the firmware on the device.
Definition: StatusCodes.h:1923
@ MusicFileNotFound
Could not find music file specified, try specifying an absolute path.
Definition: StatusCodes.h:1680
@ ConfigReadWriteMismatch
The configs read from the device do not match the configs that were written.
Definition: StatusCodes.h:1328
@ kWinUsbQueryFailed
kWinUsbQueryFailed
Definition: StatusCodes.h:1762
@ kAccessDenied
kAccessDenied
Definition: StatusCodes.h:1770
@ kInvalidPath
kInvalidPath
Definition: StatusCodes.h:1730
@ CouldNotReqSetConfigs
Could not apply the device configs.
Definition: StatusCodes.h:1332
@ WheelRadiusTooSmall
Wheel Radius is too small, cannot get distance traveled.
Definition: StatusCodes.h:1607
@ InvalidJson
InvalidJson.
Definition: StatusCodes.h:1460
@ CannotOpenUdpPort
CannotOpenUdpPort.
Definition: StatusCodes.h:1436
@ OK
No Error.
Definition: StatusCodes.h:1196
@ StatusCodeNotInitialized
This StatusCode has not been initialized.
Definition: StatusCodes.h:1779
@ CANdleAnimSlotOutOfBounds
CANdleAnimSlotOutOfBounds.
Definition: StatusCodes.h:1634
@ NoDevicesOnBus
NoDevicesOnBus.
Definition: StatusCodes.h:1273
@ MoreThanOneFile
MoreThanOneFile.
Definition: StatusCodes.h:1277
@ BufferFull
Buffer is full, cannot insert more data.
Definition: StatusCodes.h:1472
@ GadgeteerDeviceNoSetId
Cannot set the ID of a gadgeteer device.
Definition: StatusCodes.h:1261
@ CouldNotSerialize
The data frame could not be serialized for transmit.
Definition: StatusCodes.h:1904
@ DidNotGetFullDhcp
DidNotGetFullDhcp.
Definition: StatusCodes.h:1404
@ CANdleAnimationsRequireHigherFirm
CANdleAnimationsRequireHigherFirm.
Definition: StatusCodes.h:1664
@ InvalidLicenseResponse
InvalidLicenseResponse.
Definition: StatusCodes.h:1856
@ CannotLicenseWhileEnabled
Device cannot be licensed while it is control enabled.
Definition: StatusCodes.h:1938
@ RxTimeout
CAN frame not received/too-stale.
Definition: StatusCodes.h:1534
@ MultiSignalNotSupported
The CAN bus does not support multi-signal synchronization.
Definition: StatusCodes.h:1797
@ TimeoutCannotBeZero
Blocking operations, such as configs, cannot have a timeout of 0.
Definition: StatusCodes.h:1933
@ CannotReadUdpPort
CannotReadUdpPort.
Definition: StatusCodes.h:1444
@ CouldNotDecodeDeviceFirmware
Device firmware could not be decoded.
Definition: StatusCodes.h:1884
@ kErrorPollingForDevices
kErrorPollingForDevices
Definition: StatusCodes.h:1872
@ kDeviceResponseIncorrect
kDeviceResponseIncorrect
Definition: StatusCodes.h:1868
@ GEN_PORT_ERROR
GEN_PORT_ERROR.
Definition: StatusCodes.h:1587
@ TxFailed
Could not transmit CAN Frame.
Definition: StatusCodes.h:1524
@ InvalidCrfFileSzInvald
InvalidCrfFileSzInvald.
Definition: StatusCodes.h:1372
@ LoggerNotRunning
The signal logger is not running.
Definition: StatusCodes.h:1928
@ MODULE_NOT_INIT_GET_ERROR
MODULE_NOT_INIT_GET_ERROR.
Definition: StatusCodes.h:1603
@ LicenseDownloadFailed
License did not successfully download to Device.
Definition: StatusCodes.h:1831
@ NoControls
This device does not support new controls.
Definition: StatusCodes.h:1348
@ InvalidModel
This feature is not supported for this device model.
Definition: StatusCodes.h:1340
@ kWinUsbInitFailed
kWinUsbInitFailed
Definition: StatusCodes.h:1758
@ ControlModeNotSupportedYet
This control mode is not supported yet.
Definition: StatusCodes.h:1498
@ kInvalidClass
kInvalidClass
Definition: StatusCodes.h:1722
@ CanOverflowed
CanOverflowed.
Definition: StatusCodes.h:1546
@ DidNotGetDhcp
DidNotGetDhcp.
Definition: StatusCodes.h:1400
@ InvalidOrchestraAction
An invalid orchestra action occurred.
Definition: StatusCodes.h:1697
@ kInvalidRespFormat
kInvalidRespFormat
Definition: StatusCodes.h:1754
@ DeviceDidNotRespondToDiagReq
DeviceDidNotRespondToDiagReq.
Definition: StatusCodes.h:1356
@ CannotWriteUdpPort
CannotWriteUdpPort.
Definition: StatusCodes.h:1440
@ NoFile
Could not find specified file.
Definition: StatusCodes.h:1827
@ ControlModeNotValid
The control mode is not valid for this function.
Definition: StatusCodes.h:1493
@ NormalModeMsgNotPresent
NormalModeMsgNotPresent.
Definition: StatusCodes.h:1294
@ UnexpectedArbId
ArbID is incorrect.
Definition: StatusCodes.h:1542
@ DistanceBetweenWheelsTooSmall
Distance between wheels is too small, cannot get heading.
Definition: StatusCodes.h:1615
@ HwTimestampOutOfSync
The timestamp reported by CANivore is at least 10ms older than the timestamp reported by the system,...
Definition: StatusCodes.h:1789
@ MusicFileWrongSize
Music file size is incorrect, could not parse correctly.
Definition: StatusCodes.h:1685
@ CouldNotChangePeriod
Control Frame Period could not be changed.
Definition: StatusCodes.h:1561
@ FeaturesNotAvailableYet
This feature will be supported in a future update.
Definition: StatusCodes.h:1489
@ InvalidLicenseResp
InvalidLicenseResp.
Definition: StatusCodes.h:1408
@ kListenFailed
kListenFailed
Definition: StatusCodes.h:1742
@ MusicFileTooNew
Music file version is too new, update Phoenix to utilize this file.
Definition: StatusCodes.h:1689
@ FirmVersionCouldNotBeRetrieved
Firm Vers could not be retrieved.
Definition: StatusCodes.h:1485
@ CompileSzIsWrong
CompileSzIsWrong.
Definition: StatusCodes.h:1257
@ InvalidTask
This diagnostic action is not supported.
Definition: StatusCodes.h:1265
@ UsingProFeatureOnUnlicensedDevice
Using a Pro only feature on an unlicensed device.
Definition: StatusCodes.h:1894
@ NotFound
Could not find this value when searching for it.
Definition: StatusCodes.h:1805
@ CouldNotCast
Could not cast from base value to this particular signal's type.
Definition: StatusCodes.h:1801
@ DeviceIsNull
DeviceIsNull.
Definition: StatusCodes.h:1352
@ InvalidCanivCache
InvalidCanivCache.
Definition: StatusCodes.h:1412
@ WrongRemoteLimitSwitchSource
Use RemoteLimitSwitchSource instead of LimitSwitchSource.
Definition: StatusCodes.h:1623
@ InvalidModeToGetSignal
The current mode of the device is invalid for getting this signal.
Definition: StatusCodes.h:1844
@ CouldNotEnterBl
Could not put the device into bootloader mode.
Definition: StatusCodes.h:1213
@ MusicFileTooOld
This music file version is too old.
Definition: StatusCodes.h:1701
@ CannotUdpToDevice
CannotUdpToDevice.
Definition: StatusCodes.h:1448
@ CorruptedPOST
CorruptedPOST.
Definition: StatusCodes.h:1306
@ DirectoryMissing
Could not find specified directory.
Definition: StatusCodes.h:1917
@ kInvalidInterface
kInvalidInterface
Definition: StatusCodes.h:1714
@ MissingContext
Could not determine context from this device hash.
Definition: StatusCodes.h:1813
@ InvalidNetwork
InvalidNetwork.
Definition: StatusCodes.h:1793
@ FirmwareVersNotCompatible
Firmware version is not compatible with this version of Phoenix.
Definition: StatusCodes.h:1913
@ ResourceNotAvailable
ResourceNotAvailable.
Definition: StatusCodes.h:1676
@ InvalidCrfNoSects
InvalidCrfNoSects.
Definition: StatusCodes.h:1380
@ CouldNotReqDevInfo
CouldNotReqDevInfo.
Definition: StatusCodes.h:1344
@ InvalidCrfBadSectHeader
InvalidCrfBadSectHeader.
Definition: StatusCodes.h:1384
@ kFirmwareInvalidResponse
kFirmwareInvalidResponse
Definition: StatusCodes.h:1774
@ CanivCliError
Command-line issue with caniv.
Definition: StatusCodes.h:1364
@ CouldNotRetrieveV6Firmware
Device firmware could not be retrieved.
Definition: StatusCodes.h:1878
@ GeneralError
General Error Occurred.
Definition: StatusCodes.h:1575
@ kGeneralWinUsbError
kGeneralWinUsbError
Definition: StatusCodes.h:1734
@ SimPhysicsTypeNotSupported
SimPhysicsTypeNotSupported.
Definition: StatusCodes.h:1516
@ CannotWriteSerialPort
CannotWriteSerialPort.
Definition: StatusCodes.h:1420
@ GEN_MODULE_ERROR
GEN_MODULE_ERROR.
Definition: StatusCodes.h:1595
@ SignalLookupFailed
Failed to lookup signal properties.
Definition: StatusCodes.h:1840
@ kWinUsbGeneralError
kWinUsbGeneralError
Definition: StatusCodes.h:1766
@ InvalidSize
Size is invalid.
Definition: StatusCodes.h:1852
@ NoCrfFile
Specified CRF file could not be found.
Definition: StatusCodes.h:1392
@ InsufficientSz
InsufficientSz.
Definition: StatusCodes.h:1336
@ AppTooOld
Device firmware application is too old.
Definition: StatusCodes.h:1249
@ GeneralWarning
General Warning Occurred.
Definition: StatusCodes.h:1480
@ UnlicensedDevice
Device is not licensed.
Definition: StatusCodes.h:1848
@ MechanismFaulted
The mechanism is disabled due to a fault in one of the devices.
Definition: StatusCodes.h:1908
@ kFailedSetup
kFailedSetup
Definition: StatusCodes.h:1738
@ CouldNotSendCanFrame
CouldNotSendCanFrame.
Definition: StatusCodes.h:1290
@ InvalidCrfWrongProduct
Specified CRF is for the wrong product.
Definition: StatusCodes.h:1376
@ LibraryCouldNotBeLoaded
LibraryCouldNotBeLoaded.
Definition: StatusCodes.h:1668
@ PulseWidthSensorNotPresent
PulseWidthSensorNotPresent.
Definition: StatusCodes.h:1476
@ FirmwareTooNew
Firmware Too New.
Definition: StatusCodes.h:1900
@ FeatureRequiresHigherFirm
Features requires newer firmware version.
Definition: StatusCodes.h:1646
@ CouldNotReqSetDesc
Unable to set name to this device.
Definition: StatusCodes.h:1253
@ FirmwareNonFRC
Firmware is legacy non-FRC version.
Definition: StatusCodes.h:1571
@ NoUdpControlFrameResp
NoUdpControlFrameResp.
Definition: StatusCodes.h:1452
@ MusicNotSupported
This device doesn't support MusicTone control mode.
Definition: StatusCodes.h:1710
@ InvalidCrfBadHeader
InvalidCrfBadHeader.
Definition: StatusCodes.h:1368
@ CouldNotSendFlash
Could not field upgrade the device.
Definition: StatusCodes.h:1225
@ kSendFailed
kSendFailed
Definition: StatusCodes.h:1746
@ TxTimeout
CAN Transmit timed out.
Definition: StatusCodes.h:1538
@ InvalidParamValue
An invalid argument was passed into the function/VI, such as a null pointer.
Definition: StatusCodes.h:1529
@ MusicInterrupted
Music interrupted due to one of the instruments being commanded a different control mode.
Definition: StatusCodes.h:1706
@ InvalidCrfBadSectSize
InvalidCrfBadSectSize.
Definition: StatusCodes.h:1388
@ PORT_MODULE_TYPE_MISMATCH
PORT_MODULE_TYPE_MISMATCH.
Definition: StatusCodes.h:1591
@ WarningNotInitialized
WarningNotInitialized.
Definition: StatusCodes.h:1783
@ kReceiveFailed
kReceiveFailed
Definition: StatusCodes.h:1750
@ SensorNotPresent
Sensor Not Present.
Definition: StatusCodes.h:1550
@ SimDeviceAlreadyExists
SimDeviceAlreadyExists.
Definition: StatusCodes.h:1520
@ NotImplemented
Not Implemented, check latest installer.
Definition: StatusCodes.h:1269
@ ConfigMotionSCurveRequiresHigherFirm
Config Motion S Curve Strength features require firmware >=4.16.
Definition: StatusCodes.h:1654
@ CouldNotConfirmBl
Could not confirm the device has entered the bootloader.
Definition: StatusCodes.h:1217
@ CouldNotFindDynamicId
CouldNotFindDynamicId.
Definition: StatusCodes.h:1396
@ kInvalidProtocol
kInvalidProtocol
Definition: StatusCodes.h:1726
@ TimeoutIso15Response
TimeoutIso15Response.
Definition: StatusCodes.h:1456
@ CannotReadSerialPort
CannotReadSerialPort.
Definition: StatusCodes.h:1424
@ CouldNotConfirmId
Could not verify that the changed ID took effect.
Definition: StatusCodes.h:1241
@ FirmwareTooOld
Firmware Too Old.
Definition: StatusCodes.h:1556
@ CouldNotValidate
Bootloader could not verify integrity of the flashed application.
Definition: StatusCodes.h:1229
@ InvalidDeviceDescriptor
InvalidDeviceDescriptor.
Definition: StatusCodes.h:1286
@ EcuIsNotPresent
Device is not present.
Definition: StatusCodes.h:1209
@ InvalidDeviceSpec
InvalidDeviceSpec.
Definition: StatusCodes.h:1204
@ NotSupported
This is not supported.
Definition: StatusCodes.h:1809
@ NoSerialControlFrameResp
NoSerialControlFrameResp.
Definition: StatusCodes.h:1432
@ ConfigFactoryDefaultRequiresHigherFirm
Config factory default features require firmware >=3.10.
Definition: StatusCodes.h:1650
@ MODULE_NOT_INIT_SET_ERROR
MODULE_NOT_INIT_SET_ERROR.
Definition: StatusCodes.h:1599
@ CouldNotReqFactoryDefault
Unable to factory default this device.
Definition: StatusCodes.h:1319
@ SelfTestIsEmpty
Self Test report does not have any values, is the firmware up to date?
Definition: StatusCodes.h:1835
@ ConfigFailed
ConfigFailed.
Definition: StatusCodes.h:1315
@ TaskIsBusy
Diagnostic Server is busy with another command.
Definition: StatusCodes.h:1200
@ DoubleVoltageCompensatingWPI
Motor Controller Voltage Compensation should not be used with setVoltage().
Definition: StatusCodes.h:1630
@ SigNotUpdated
No new response to update signal.
Definition: StatusCodes.h:1579
@ NodeIsInvalid
Specified device was not found.
Definition: StatusCodes.h:1282
@ FeatureNotSupported
This feature is not supported.
Definition: StatusCodes.h:1298
@ InvalidIDToFollow
The values specified for master are in valid.
Definition: StatusCodes.h:1889
@ CustomNameNotSupported
CustomNameNotSupported.
Definition: StatusCodes.h:1323
@ OnlySupportedInTunerX
This feature requires Tuner X.
Definition: StatusCodes.h:1360
@ FlashWasGood
Device field upgrade was successful.
Definition: StatusCodes.h:1245
@ InternalError
InternalError.
Definition: StatusCodes.h:1864
@ ModelMismatch
Model name in license file does not match model name of selected device.
Definition: StatusCodes.h:1818
@ CouldNotErase
Could not erase flash.
Definition: StatusCodes.h:1221
@ NotAllPIDValuesUpdated
NotAllPIDValuesUpdated.
Definition: StatusCodes.h:1583
@ MotProfFirmThreshold2
Motor Controller must have >= 3.4 firmware for advanced PID0/PID1 features.
Definition: StatusCodes.h:1508
@ CannotOpenSerialPort
CannotOpenSerialPort.
Definition: StatusCodes.h:1416
@ BufferFailure
BufferFailure.
Definition: StatusCodes.h:1565
@ kInvalidGuid
kInvalidGuid
Definition: StatusCodes.h:1718
@ MissingRoutineInLibrary
MissingRoutineInLibrary.
Definition: StatusCodes.h:1672
@ SerialMismatch
Serial Number in license file does not match model name of selected device.
Definition: StatusCodes.h:1823
const char * GetStatusCodeName(StatusCode_t value)
Get the name of the StatusCode passed.
const char * GetStatusCodeDescription(StatusCode_t value)
Get the description of the StatusCode passed.
Definition: string_util.hpp:15