@@ -877,101 +877,96 @@ uint8_t send_imu_gyro
877877}
878878
879879uint8_t send_faults
880- (bool CAN_OUTGOING_FAULT ,bool CAN_INCOMING_FAULT ,bool BMS_CAN_MONITOR_FAULT ,bool LIGHTNING_CAN_MONITOR_FAULT ,bool SHUTDOWN_FAULT , bool ONBOARD_TEMP_FAULT ,bool IMU_ACCEL_FAULT ,bool IMU_GYRO_FAULT ,bool BSPD_PREFAULT ,bool ONBOARD_BRAKE_OPEN_CIRCUIT_FAULT ,bool ONBOARD_ACCEL_OPEN_CIRCUIT_FAULT ,bool ONBOARD_BRAKE_SHORT_CIRCUIT_FAULT ,bool ONBOARD_ACCEL_SHORT_CIRCUIT_FAULT ,bool ONBOARD_PEDAL_DIFFERENCE_FAULT ,bool RTDS_FAULT ,bool LV_LOW_VOLTAGE_FAULT ,bool PRECHARGE_FLOATING_FAULT )
880+ (bool CAN_OUTGOING_FAULT ,bool CAN_INCOMING_FAULT ,bool BMS_CAN_MONITOR_FAULT ,bool LIGHTNING_CAN_MONITOR_FAULT ,bool ONBOARD_TEMP_FAULT ,bool IMU_ACCEL_FAULT ,bool IMU_GYRO_FAULT ,bool BSPD_PREFAULT ,bool ONBOARD_BRAKE_OPEN_CIRCUIT_FAULT ,bool ONBOARD_ACCEL_OPEN_CIRCUIT_FAULT ,bool ONBOARD_BRAKE_SHORT_CIRCUIT_FAULT ,bool ONBOARD_ACCEL_SHORT_CIRCUIT_FAULT ,bool ONBOARD_PEDAL_DIFFERENCE_FAULT ,bool RTDS_FAULT ,bool LV_LOW_VOLTAGE_FAULT ,bool PRECHARGE_FLOATING_FAULT )
881881{
882882 can_msg_t msg ;
883883 msg .id = 0x502 ;
884884 msg .id_is_extended = false;
885885
886- uint32_t data = 0 ;
887- msg .len = 4 ;
886+ uint16_t data = 0 ;
887+ msg .len = 2 ;
888888 uint32_t CAN_OUTGOING_FAULT_i = (uint32_t )(CAN_OUTGOING_FAULT );
889889 if (CAN_OUTGOING_FAULT_i > 1ULL ) {CAN_OUTGOING_FAULT_i = 1 ;
890890 }
891- data |= ((CAN_OUTGOING_FAULT_i ) & 0x1ULL ) << 31 ;
891+ data |= ((CAN_OUTGOING_FAULT_i ) & 0x1ULL ) << 15 ;
892892
893893 uint32_t CAN_INCOMING_FAULT_i = (uint32_t )(CAN_INCOMING_FAULT );
894894 if (CAN_INCOMING_FAULT_i > 1ULL ) {CAN_INCOMING_FAULT_i = 1 ;
895895 }
896- data |= ((CAN_INCOMING_FAULT_i ) & 0x1ULL ) << 30 ;
896+ data |= ((CAN_INCOMING_FAULT_i ) & 0x1ULL ) << 14 ;
897897
898898 uint32_t BMS_CAN_MONITOR_FAULT_i = (uint32_t )(BMS_CAN_MONITOR_FAULT );
899899 if (BMS_CAN_MONITOR_FAULT_i > 1ULL ) {BMS_CAN_MONITOR_FAULT_i = 1 ;
900900 }
901- data |= ((BMS_CAN_MONITOR_FAULT_i ) & 0x1ULL ) << 29 ;
901+ data |= ((BMS_CAN_MONITOR_FAULT_i ) & 0x1ULL ) << 13 ;
902902
903903 uint32_t LIGHTNING_CAN_MONITOR_FAULT_i = (uint32_t )(LIGHTNING_CAN_MONITOR_FAULT );
904904 if (LIGHTNING_CAN_MONITOR_FAULT_i > 1ULL ) {LIGHTNING_CAN_MONITOR_FAULT_i = 1 ;
905905 }
906- data |= ((LIGHTNING_CAN_MONITOR_FAULT_i ) & 0x1ULL ) << 28 ;
907-
908- uint32_t SHUTDOWN_FAULT_i = (uint32_t )(SHUTDOWN_FAULT );
909- if (SHUTDOWN_FAULT_i > 1ULL ) {SHUTDOWN_FAULT_i = 1 ;
910- }
911- data |= ((SHUTDOWN_FAULT_i ) & 0x1ULL ) << 27 ;
906+ data |= ((LIGHTNING_CAN_MONITOR_FAULT_i ) & 0x1ULL ) << 12 ;
912907
913908 uint32_t ONBOARD_TEMP_FAULT_i = (uint32_t )(ONBOARD_TEMP_FAULT );
914909 if (ONBOARD_TEMP_FAULT_i > 1ULL ) {ONBOARD_TEMP_FAULT_i = 1 ;
915910 }
916- data |= ((ONBOARD_TEMP_FAULT_i ) & 0x1ULL ) << 26 ;
911+ data |= ((ONBOARD_TEMP_FAULT_i ) & 0x1ULL ) << 11 ;
917912
918913 uint32_t IMU_ACCEL_FAULT_i = (uint32_t )(IMU_ACCEL_FAULT );
919914 if (IMU_ACCEL_FAULT_i > 1ULL ) {IMU_ACCEL_FAULT_i = 1 ;
920915 }
921- data |= ((IMU_ACCEL_FAULT_i ) & 0x1ULL ) << 25 ;
916+ data |= ((IMU_ACCEL_FAULT_i ) & 0x1ULL ) << 10 ;
922917
923918 uint32_t IMU_GYRO_FAULT_i = (uint32_t )(IMU_GYRO_FAULT );
924919 if (IMU_GYRO_FAULT_i > 1ULL ) {IMU_GYRO_FAULT_i = 1 ;
925920 }
926- data |= ((IMU_GYRO_FAULT_i ) & 0x1ULL ) << 24 ;
921+ data |= ((IMU_GYRO_FAULT_i ) & 0x1ULL ) << 9 ;
927922
928923 uint32_t BSPD_PREFAULT_i = (uint32_t )(BSPD_PREFAULT );
929924 if (BSPD_PREFAULT_i > 1ULL ) {BSPD_PREFAULT_i = 1 ;
930925 }
931- data |= ((BSPD_PREFAULT_i ) & 0x1ULL ) << 23 ;
926+ data |= ((BSPD_PREFAULT_i ) & 0x1ULL ) << 8 ;
932927
933928 uint32_t ONBOARD_BRAKE_OPEN_CIRCUIT_FAULT_i = (uint32_t )(ONBOARD_BRAKE_OPEN_CIRCUIT_FAULT );
934929 if (ONBOARD_BRAKE_OPEN_CIRCUIT_FAULT_i > 1ULL ) {ONBOARD_BRAKE_OPEN_CIRCUIT_FAULT_i = 1 ;
935930 }
936- data |= ((ONBOARD_BRAKE_OPEN_CIRCUIT_FAULT_i ) & 0x1ULL ) << 22 ;
931+ data |= ((ONBOARD_BRAKE_OPEN_CIRCUIT_FAULT_i ) & 0x1ULL ) << 7 ;
937932
938933 uint32_t ONBOARD_ACCEL_OPEN_CIRCUIT_FAULT_i = (uint32_t )(ONBOARD_ACCEL_OPEN_CIRCUIT_FAULT );
939934 if (ONBOARD_ACCEL_OPEN_CIRCUIT_FAULT_i > 1ULL ) {ONBOARD_ACCEL_OPEN_CIRCUIT_FAULT_i = 1 ;
940935 }
941- data |= ((ONBOARD_ACCEL_OPEN_CIRCUIT_FAULT_i ) & 0x1ULL ) << 21 ;
936+ data |= ((ONBOARD_ACCEL_OPEN_CIRCUIT_FAULT_i ) & 0x1ULL ) << 6 ;
942937
943938 uint32_t ONBOARD_BRAKE_SHORT_CIRCUIT_FAULT_i = (uint32_t )(ONBOARD_BRAKE_SHORT_CIRCUIT_FAULT );
944939 if (ONBOARD_BRAKE_SHORT_CIRCUIT_FAULT_i > 1ULL ) {ONBOARD_BRAKE_SHORT_CIRCUIT_FAULT_i = 1 ;
945940 }
946- data |= ((ONBOARD_BRAKE_SHORT_CIRCUIT_FAULT_i ) & 0x1ULL ) << 20 ;
941+ data |= ((ONBOARD_BRAKE_SHORT_CIRCUIT_FAULT_i ) & 0x1ULL ) << 5 ;
947942
948943 uint32_t ONBOARD_ACCEL_SHORT_CIRCUIT_FAULT_i = (uint32_t )(ONBOARD_ACCEL_SHORT_CIRCUIT_FAULT );
949944 if (ONBOARD_ACCEL_SHORT_CIRCUIT_FAULT_i > 1ULL ) {ONBOARD_ACCEL_SHORT_CIRCUIT_FAULT_i = 1 ;
950945 }
951- data |= ((ONBOARD_ACCEL_SHORT_CIRCUIT_FAULT_i ) & 0x1ULL ) << 19 ;
946+ data |= ((ONBOARD_ACCEL_SHORT_CIRCUIT_FAULT_i ) & 0x1ULL ) << 4 ;
952947
953948 uint32_t ONBOARD_PEDAL_DIFFERENCE_FAULT_i = (uint32_t )(ONBOARD_PEDAL_DIFFERENCE_FAULT );
954949 if (ONBOARD_PEDAL_DIFFERENCE_FAULT_i > 1ULL ) {ONBOARD_PEDAL_DIFFERENCE_FAULT_i = 1 ;
955950 }
956- data |= ((ONBOARD_PEDAL_DIFFERENCE_FAULT_i ) & 0x1ULL ) << 18 ;
951+ data |= ((ONBOARD_PEDAL_DIFFERENCE_FAULT_i ) & 0x1ULL ) << 3 ;
957952
958953 uint32_t RTDS_FAULT_i = (uint32_t )(RTDS_FAULT );
959954 if (RTDS_FAULT_i > 1ULL ) {RTDS_FAULT_i = 1 ;
960955 }
961- data |= ((RTDS_FAULT_i ) & 0x1ULL ) << 17 ;
956+ data |= ((RTDS_FAULT_i ) & 0x1ULL ) << 2 ;
962957
963958 uint32_t LV_LOW_VOLTAGE_FAULT_i = (uint32_t )(LV_LOW_VOLTAGE_FAULT );
964959 if (LV_LOW_VOLTAGE_FAULT_i > 1ULL ) {LV_LOW_VOLTAGE_FAULT_i = 1 ;
965960 }
966- data |= ((LV_LOW_VOLTAGE_FAULT_i ) & 0x1ULL ) << 16 ;
961+ data |= ((LV_LOW_VOLTAGE_FAULT_i ) & 0x1ULL ) << 1 ;
967962
968963 uint32_t PRECHARGE_FLOATING_FAULT_i = (uint32_t )(PRECHARGE_FLOATING_FAULT );
969964 if (PRECHARGE_FLOATING_FAULT_i > 1ULL ) {PRECHARGE_FLOATING_FAULT_i = 1 ;
970965 }
971- data |= ((PRECHARGE_FLOATING_FAULT_i ) & 0x1ULL ) << 15 ;
966+ data |= ((PRECHARGE_FLOATING_FAULT_i ) & 0x1ULL ) << 0 ;
972967
973- uint32_t data_bigendian = __builtin_bswap32 (data );
974- memcpy (msg .data , & data_bigendian , 4 );
968+ uint16_t data_bigendian = __builtin_bswap16 (data );
969+ memcpy (msg .data , & data_bigendian , 2 );
975970
976971 return queue_send (& can_outgoing , & msg , TX_NO_WAIT );
977972}
0 commit comments