Add w202 canDash support (#1292)
* w202CanDash added CanDash support for w202 * fixed kinetis
This commit is contained in:
parent
1c4488d930
commit
15f42b96df
|
@ -354,6 +354,8 @@ case CAN_BUS_NBC_FIAT:
|
||||||
return "CAN_BUS_NBC_FIAT";
|
return "CAN_BUS_NBC_FIAT";
|
||||||
case CAN_BUS_NBC_VAG:
|
case CAN_BUS_NBC_VAG:
|
||||||
return "CAN_BUS_NBC_VAG";
|
return "CAN_BUS_NBC_VAG";
|
||||||
|
case CAN_BUS_W202_C180:
|
||||||
|
return "CAN_BUS_W202_C180";
|
||||||
case Internal_ForceMyEnumIntSize_can_nbc:
|
case Internal_ForceMyEnumIntSize_can_nbc:
|
||||||
return "Internal_ForceMyEnumIntSize_can_nbc";
|
return "Internal_ForceMyEnumIntSize_can_nbc";
|
||||||
}
|
}
|
||||||
|
|
|
@ -498,6 +498,8 @@ case CAN_BUS_NBC_FIAT:
|
||||||
return "CAN_BUS_NBC_FIAT";
|
return "CAN_BUS_NBC_FIAT";
|
||||||
case CAN_BUS_NBC_VAG:
|
case CAN_BUS_NBC_VAG:
|
||||||
return "CAN_BUS_NBC_VAG";
|
return "CAN_BUS_NBC_VAG";
|
||||||
|
case CAN_BUS_W202_C180:
|
||||||
|
return "CAN_BUS_W202_C180";
|
||||||
case Internal_ForceMyEnumIntSize_can_nbc:
|
case Internal_ForceMyEnumIntSize_can_nbc:
|
||||||
return "Internal_ForceMyEnumIntSize_can_nbc";
|
return "Internal_ForceMyEnumIntSize_can_nbc";
|
||||||
}
|
}
|
||||||
|
|
|
@ -784,6 +784,7 @@ typedef enum {
|
||||||
CAN_BUS_NBC_VAG = 2,
|
CAN_BUS_NBC_VAG = 2,
|
||||||
CAN_BUS_MAZDA_RX8 = 3,
|
CAN_BUS_MAZDA_RX8 = 3,
|
||||||
CAN_BUS_NBC_BMW = 4,
|
CAN_BUS_NBC_BMW = 4,
|
||||||
|
CAN_BUS_W202_C180 = 5,
|
||||||
|
|
||||||
Internal_ForceMyEnumIntSize_can_nbc = ENUM_32_BITS,
|
Internal_ForceMyEnumIntSize_can_nbc = ENUM_32_BITS,
|
||||||
} can_nbc_e;
|
} can_nbc_e;
|
||||||
|
|
|
@ -43,6 +43,11 @@ EXTERN_ENGINE;
|
||||||
#define CAN_VAG_CLT 0x288
|
#define CAN_VAG_CLT 0x288
|
||||||
#define CAN_VAG_CLT_V2 0x420
|
#define CAN_VAG_CLT_V2 0x420
|
||||||
#define CAN_VAG_IMMO 0x3D0
|
#define CAN_VAG_IMMO 0x3D0
|
||||||
|
//w202 DASH
|
||||||
|
#define W202_STAT_1 0x308
|
||||||
|
#define W202_STAT_2 0x608
|
||||||
|
#define W202_ALIVE 0x210
|
||||||
|
#define W202_STAT_3 0x310
|
||||||
|
|
||||||
void canDashboardBMW(void) {
|
void canDashboardBMW(void) {
|
||||||
//BMW Dashboard
|
//BMW Dashboard
|
||||||
|
@ -143,4 +148,53 @@ void canDashboardVAG(void) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void canDashboardW202(void) {
|
||||||
|
|
||||||
|
{
|
||||||
|
CanTxMessage msg(W202_STAT_1);
|
||||||
|
msg[0] = 0x08; // Unknown
|
||||||
|
msg.setShortValue(GET_RPM(), 1); //RPM
|
||||||
|
msg[3] = 0x00; // 0x01 - tank blink, 0x02 - EPC
|
||||||
|
msg[4] = 0x00; // Unknown
|
||||||
|
msg[5] = 0x00; // Unknown
|
||||||
|
msg[6] = 0x00; // Unknown - oil info
|
||||||
|
msg[7] = 0x00; // Unknown - oil info
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
CanTxMessage msg(W202_STAT_2); //dlc 7
|
||||||
|
msg[0] = (int)(getCoolantTemperature()+40); // CLT - 0x80 ~ 80C
|
||||||
|
msg[1] = 0x3D; // TBD
|
||||||
|
msg[2] = 0x63; // Const
|
||||||
|
msg[3] = 0x41; // Const
|
||||||
|
msg[4] = 0x00; // Unknown
|
||||||
|
msg[5] = 0x05; // Const
|
||||||
|
msg[6] = 0x50; // TBD
|
||||||
|
msg[7] = 0x00; // Unknown
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
CanTxMessage msg(W202_ALIVE);
|
||||||
|
msg[0] = 0x0A; // Const
|
||||||
|
msg[1] = 0x18; // Const
|
||||||
|
msg[2] = 0x00; // Const
|
||||||
|
msg[3] = 0x00; // Const
|
||||||
|
msg[4] = 0xC0; // Const
|
||||||
|
msg[5] = 0x00; // Const
|
||||||
|
msg[6] = 0x00; // Const
|
||||||
|
msg[7] = 0x00; // Const
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
CanTxMessage msg(W202_STAT_3);
|
||||||
|
msg[0] = 0x00; // Const
|
||||||
|
msg[1] = 0x00; // Const
|
||||||
|
msg[2] = 0x6D; // TBD
|
||||||
|
msg[3] = 0x7B; // Const
|
||||||
|
msg[4] = 0x21; // TBD
|
||||||
|
msg[5] = 0x07; // Const
|
||||||
|
msg[6] = 0x33; // Const
|
||||||
|
msg[7] = 0x05; // Const
|
||||||
|
}
|
||||||
|
}
|
||||||
#endif // EFI_CAN_SUPPORT
|
#endif // EFI_CAN_SUPPORT
|
||||||
|
|
|
@ -11,3 +11,4 @@ void canDashboardBMW();
|
||||||
void canDashboardFiat();
|
void canDashboardFiat();
|
||||||
void canDashboardVAG();
|
void canDashboardVAG();
|
||||||
void canMazdaRX8();
|
void canMazdaRX8();
|
||||||
|
void canDashboardW202();
|
||||||
|
|
|
@ -45,6 +45,9 @@ void CanWrite::PeriodicTask(efitime_t nowNt) {
|
||||||
case CAN_BUS_MAZDA_RX8:
|
case CAN_BUS_MAZDA_RX8:
|
||||||
canMazdaRX8();
|
canMazdaRX8();
|
||||||
break;
|
break;
|
||||||
|
case CAN_BUS_W202_C180:
|
||||||
|
canDashboardW202();
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue