There are two status bitfields in the message structures that define specific attributes of the message. The two status bitfields are named StatusBitfield and StatusBitfield1.
Determining if we there's an error in the message (This is indicated by SPY_STATUS_GLOBAL_ERR bit set)if (mMsg.StatusBitField & SPY_STATUS_GLOBAL_ERR){ // This message has an error in it}
Determining if we transmitted a message (This is indicated by icsSpyStatusTx bit set)
If (Msg.StatusBitField And icsSpyDataStatusBitfield.icsSpyStatusTx) > 0 Then
'// The message was transmitted by us
End If
Transmitting a CAN Extended ID Remote Frame
'// Load the message to be transmitted ArbID = FF extended remote frame with DLC=4
With stMessagesTx
.ArbIDOrHeader = &HFF
.NumberBytesData = 4
.StatusBitField = icsSpyDataStatusBitfield.icsSpyStatusXtdFrame + icsSpyDataStatusBitfield.icsSpyStatusRemoteFrame
End With
lResult = icsneoTxMessages(m_hObject, stMessagesTx, NETID_HSCAN, 1)
Determining if we there's an error in the message (This is indicated by SPY_STATUS_GLOBAL_ERR bit set)if (mMsg.StatusBitField& SPY_STATUS_GLOBAL_ERR){ // This message has an error in it}
C/C++ Name
VB Name
Description
C/C++ Name
VB Name
Description
SPY_STATUS_GLOBAL_ERR
icsSpyStatusGlobalError
This is set if the message has any other error bits set.
SPY_STATUS_TX_MSG
icsSpyStatusTx
This is set if the message was transmitted by this device.
SPY_STATUS_XTD_FRAME
icsSpyStatusXtdFrame
This is set if the CAN message received or transmitted has an extended (29 bit) identifier.
SPY_STATUS_REMOTE_FRAME
icsSpyStatusRemoteFrame
This is set if the CAN message received or transmitted is a remote frame.
SPY_STATUS_CRC_ERROR
icsSpyStatusErrCRCError
This is set for J1850 VPW messages which do not have a proper CRC byte.
SPY_STATUS_CAN_ERROR_PASSIVE
icsSpyStatusCANErrorPassive
Not used in the neoVI API.
SPY_STATUS_INCOMPLETE_FRAME
icsSpyStatusErrIncompleteFrame
This is set for a J1850 VPW message which is received that ended on a non-byte boundary.
SPY_STATUS_LOST_ARBITRATION
icsSpyStatusErrLostArbitration
Not used in the neoVI API.
SPY_STATUS_UNDEFINED_ERROR
icsSpyStatusErrUndefined
This is an undefined error in the neoVI hardware
SPY_STATUS_CAN_BUS_OFF
icsSpyStatusErrCANBusOff
This is set when there is a change in error status of a MCP2510 CAN controller. The bitfield of the error status is stored in data byte 1 of the message structure. A description of this bitfield is included in this topic``
SPY_STATUS_CAN_ERROR_WARNING
icsSpyStatusErrCANErrorWarning
Not used in the neoVI API.
SPY_STATUS_BUS_SHORTED_PLUS
icsSpyStatusBusShortedPlus
Not used in the neoVI API.
SPY_STATUS_BUS_SHORTED_GND
icsSpyStatusBusShortedGnd
Not used in the neoVI API.
SPY_STATUS_CHECKSUM_ERROR
icsSpyStatusCheckSumError
Not used in the neoVI API.
SPY_STATUS_BAD_MESSAGE_BIT_TIME_ERROR
icsSpyStatusErrBadMessageBitTimeError
This is set for J1850 VPW messages which do not meet the specified bit times for the SOF or bit signals.
SPY_STATUS_IFR_DATA
icsSpyStatusIFRData
Not used in the neoVI API.
SPY_STATUS_HARDWARE_COMM_ERROR
icsSpyStatusHardwareCommError
Not used in the neoVI API.
SPY_STATUS_EXPECTED_LEN_ERROR
icsSpyStatusExpectedLengthError
Not used in the neoVI API.
SPY_STATUS_INCOMING_NO_MATCH
icsSpyStatusIncomingNoMatch
Not used in the neoVI API.
SPY_STATUS_BREAK
icsSpyStatusBreak
This is set if the J1850 VPW break symbol has been received or is to be transmitted.
SPY_STATUS_AVSI_REC_OVERFLOW
icsSpyStatusAVT_VSIRecOverflow
Not used in the neoVI API.
SPY_STATUS_TEST_TRIGGER
icsSpyStatusTestTrigger
Not used in the neoVI API.
SPY_STATUS_AUDIO_COMMENT
icsSpyStatusAudioCommentType
Not used in the neoVI API.
SPY_STATUS_GPS_DATA
icsSpyStatusGPSDataValue
Not used in the neoVI API.
SPY_STATUS_ANALOG_DIGITAL_INPUT
icsSpyStatusAnalogDigitalInputValue
Not used in the neoVI API.
SPY_STATUS_TEXT_COMMENT
icsSpyStatusTextCommentType
Not used in the neoVI API.
SPY_STATUS_NETWORK_MESSAGE_TYPE
icsSpyStatusNetworkMessageType
This is set for all messages received from a vehicle network.
SPY_STATUS_VSI_TX_UNDERRUN
icsSpyStatusVSI_TxUnderRun
Not used in the neoVI API.
SPY_STATUS_VSI_IFR_CRC_Bit
icsSpyStatusVSI_IFR_CRCBit
Not used in the neoVI API.
SPY_STATUS_INIT_MESSAGE
icsSpyStatusInitMessage
This is set if the transmitted message should generate the ISO/Keyword2000 initialization waveform.
SPY_STATUS_HIGH_SPEED_MESSAGE
icsSpyStatusHighSpeed
This is set if the transmitted message is transmitted in high speed mode.
SPY_STATUS2_HAS_VALUE
icsSpyStatusHasValue
Not used in the neoVI API.
SPY_STATUS2_VALUE_IS_BOOLEAN
icsSpyStatusValueIsBoolean
Not used in the neoVI API.
SPY_STATUS2_HIGH_VOLTAGE
icsSpyStatusHighVoltage
This is set if the transmitted message is transmitted in high voltage wakeup mode.