OVMS3/OVMS.V3/components/vehicle_bmwi3/ecu_definitions/ecu_nbt_code.cpp

3179 lines
178 KiB
C++

//
// Warning: don't edit - generated by generate_ecu_code.pl processing ../dev/nbtevo.json: NBT 63: Headunit high
// This generated code makes it easier to process CANBUS messages from the NBT ecu in a BMW i3
//
case I3_PID_NBT_RESET_AKTIVIERUNGSLEITUNG: { // 0x1024
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_ETH_PHY_SWITCH_ENGINE_RESET: { // 0x1044
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_ETH_PHY_SWITCH_ENGINE_RESET", 1);
break;
}
unsigned char STAT_PHY_STOPPED_FOR_T_WERT = (RXBUF_UCHAR(0));
// Remaining duration in seconds during which the given PHY is still inactive. Value range: 0 seconds - 255
// seconds / Verbleibende Dauer in Sekunden, in denen der gegebene PHY noch inaktiv ist. Wertebereich: 0
// Sekunden - 255 Sekunden
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ETH_PHY_SWITCH_ENGINE_RESET", "STAT_PHY_STOPPED_FOR_T_WERT", STAT_PHY_STOPPED_FOR_T_WERT, "\"s\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_ETH_RESET_PORT_CONFIGURATION: { // 0x104A
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_ETH_RESET_PORT_TX_RX_STATS: { // 0x104B
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_LIFECYCLE: { // 0x1735
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_LIFECYCLE", 1);
break;
}
unsigned char STAT_LIFECYCLE = (RXBUF_UCHAR(0));
// Status lifecycle / Status Lifecycle
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_LIFECYCLE", "STAT_LIFECYCLE", STAT_LIFECYCLE, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_ETH_GET_NUMBER_OF_PORTS: { // 0x1800
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_ETH_GET_NUMBER_OF_PORTS", 1);
break;
}
unsigned char STAT_NUM_PORTS_WERT = (RXBUF_UCHAR(0));
// Number of ports / Anzahl der Ports
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ETH_GET_NUMBER_OF_PORTS", "STAT_NUM_PORTS_WERT", STAT_NUM_PORTS_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_ETH_PHY_LINK_STATE: { // 0x1802
if (datalen < 3) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_ETH_PHY_LINK_STATE", 3);
break;
}
unsigned char STAT_NUM_OF_PORTS_WERT = (RXBUF_UCHAR(0));
// Number of physical ports. / Anzahl der physikalischen Ports.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ETH_PHY_LINK_STATE", "STAT_NUM_OF_PORTS_WERT", STAT_NUM_OF_PORTS_WERT, "");
unsigned short BF_PHY_LINK_STATE_BTFLD = (RXBUF_UINT(1));
// Link status of all ports. / Linkstatus aller Port.
// BF_PHY_LINK_STATE_BTFLD is a BITFIELD of size unsigned int. We don't yet generate definitions for each bit, we treat as the host data type
// STAT_PHY_LINK_STATE_PORT_00: Mask: 0x0001 - Link status for port 0
// STAT_PHY_LINK_STATE_PORT_01: Mask: 0x0002 - Link status for port 1
// STAT_PHY_LINK_STATE_PORT_02: Mask: 0x0004 - Link status for port 2
// STAT_PHY_LINK_STATE_PORT_03: Mask: 0x0008 - Link status for port 3
// STAT_PHY_LINK_STATE_PORT_04: Mask: 0x0010 - Link status for port 4
// STAT_PHY_LINK_STATE_PORT_05: Mask: 0x0020 - Link status for port 5
// STAT_PHY_LINK_STATE_PORT_06: Mask: 0x0040 - Link status for port 6
// STAT_PHY_LINK_STATE_PORT_07: Mask: 0x0080 - Link status for port 7
// STAT_PHY_LINK_STATE_PORT_08: Mask: 0x0100 - Link status for port 8
// STAT_PHY_LINK_STATE_PORT_09: Mask: 0x0200 - Link status for port 9
// STAT_PHY_LINK_STATE_PORT_10: Mask: 0x0400 - Link status for port 10
// STAT_PHY_LINK_STATE_PORT_11: Mask: 0x0800 - Link status for port 11
// STAT_PHY_LINK_STATE_PORT_12: Mask: 0x1000 - Link status for port 12
// STAT_PHY_LINK_STATE_PORT_13: Mask: 0x2000 - Link status for port 13
// STAT_PHY_LINK_STATE_PORT_14: Mask: 0x4000 - Link status for port 14
// STAT_PHY_LINK_STATE_PORT_15: Mask: 0x8000 - Link status for port 15
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lx%s\n", "NBT", "ETH_PHY_LINK_STATE", "BF_PHY_LINK_STATE_BTFLD", (unsigned long)BF_PHY_LINK_STATE_BTFLD, "\"Bit\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_ETH_LEARN_PORT_CONFIGURATION: { // 0x1803
if (datalen < 3) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_ETH_LEARN_PORT_CONFIGURATION", 3);
break;
}
unsigned char STAT_LEARN_PORT_CONFIGURATION = (RXBUF_UCHAR(0));
// 0: Learning successful 1: Learning not successful or not yet learned / 0: Lernen erfolgreich 1: Lernen nicht
// erfolgreich oder noch nicht gelernt
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ETH_LEARN_PORT_CONFIGURATION", "STAT_LEARN_PORT_CONFIGURATION", STAT_LEARN_PORT_CONFIGURATION, "\"0-n\"");
unsigned short BF_ETH_PORT_CONFIGURATION = (RXBUF_UINT(1));
// 1 bit per port, which indicates whether LinkUp (1) or no link (0) is present. / Pro Port 1Bit, das angibt ob
// LinkUp(1) oder kein Link (0) vorliegt.
// BF_ETH_PORT_CONFIGURATION is a BITFIELD of size unsigned int. We don't yet generate definitions for each bit, we treat as the host data type
// STAT_PORT_00: Mask: 0x0001 - Port status port 00
// STAT_PORT_01: Mask: 0x0002 - Port status port 01
// STAT_PORT_02: Mask: 0x0004 - Port status port 02
// STAT_PORT_03: Mask: 0x0008 - Port status port 03
// STAT_PORT_04: Mask: 0x0010 - Port status port 04
// STAT_PORT_05: Mask: 0x0020 - Port status port 05
// STAT_PORT_06: Mask: 0x0040 - Port status port 06
// STAT_PORT_07: Mask: 0x0080 - Port status port 07
// STAT_PORT_08: Mask: 0x0100 - Port status port 08
// STAT_PORT_09: Mask: 0x0200 - Port status port 09
// STAT_PORT_10: Mask: 0x0400 - Port status port 10
// STAT_PORT_11: Mask: 0x0800 - Port status port 11
// STAT_PORT_12: Mask: 0x1000 - Port status port 12
// STAT_PORT_13: Mask: 0x2000 - Port status port 13
// STAT_PORT_14: Mask: 0x4000 - Port status port 14
// STAT_PORT_15: Mask: 0x8000 - Port status port 15
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lx%s\n", "NBT", "ETH_LEARN_PORT_CONFIGURATION", "BF_ETH_PORT_CONFIGURATION", (unsigned long)BF_ETH_PORT_CONFIGURATION, "\"Bit\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STEUERN_VOLUMEAUDIO_DEFAULT: { // 0xA002
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STEUERN_LINEAR: { // 0xA004
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_FIND_BEST_STATION: { // 0xA00A
if (datalen < 13) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_FIND_BEST_STATION", 13);
break;
}
unsigned char STAT_SEARCHING_PROCESS = (RXBUF_UCHAR(0));
// This status must be reinitialised to 0 when the head unit starts up (normal wake up, reset). / This status
// must be reinitialised to 0 when the Head-Unit starts up (normal wake up, reset).
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "FIND_BEST_STATION", "STAT_SEARCHING_PROCESS", STAT_SEARCHING_PROCESS, "\"0-n\"");
unsigned short STAT_PI_WERT = (RXBUF_UINT(9));
// Program identification of the best station / Program Identification of the best station
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "FIND_BEST_STATION", "STAT_PI_WERT", STAT_PI_WERT, "");
unsigned char STAT_FIELDSTRENGTH_WERT = (RXBUF_UCHAR(11));
// Field strength of the best station / Fieldstrength of the best station
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "FIND_BEST_STATION", "STAT_FIELDSTRENGTH_WERT", STAT_FIELDSTRENGTH_WERT, "");
unsigned char STAT_QUALITY_WERT = (RXBUF_UCHAR(12));
// Quality of the best station / Quality of the best station
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "FIND_BEST_STATION", "STAT_QUALITY_WERT", STAT_QUALITY_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STEUERN_INTERNAL_RESET: { // 0xA023
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_PROVISIONING: { // 0xA02F
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_PROVISIONING", 1);
break;
}
unsigned char STAT_PROVISIONING = (RXBUF_UCHAR(0));
// Status of the provisioning process, values according to table TProvisioningStatus / Status des
// Provisionierungsprozess, Werte gemäß Tabelle TProvisioningStatus
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "PROVISIONING", "STAT_PROVISIONING", STAT_PROVISIONING, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STEUERN_DELETE_COOKIES: { // 0xA030
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STEUERN_RESCUE_MODE: { // 0xA03B
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_SDARS_FACTORY_DEFAULTS: { // 0xA03D
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_SDARS_FACTORY_DEFAULTS", 1);
break;
}
unsigned char STAT_SDARS_FACTORY_DEFAULTS = (RXBUF_UCHAR(0));
// SDARS factory defaults / SDARS Factory Defaults
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "SDARS_FACTORY_DEFAULTS", "STAT_SDARS_FACTORY_DEFAULTS", STAT_SDARS_FACTORY_DEFAULTS, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_FIND_BEST_STATION_DAB: { // 0xA03F
if (datalen < 3) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_FIND_BEST_STATION_DAB", 3);
break;
}
unsigned char STAT_SEARCHING_PROCESS_STATUS_DAB = (RXBUF_UCHAR(0));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "FIND_BEST_STATION_DAB", "STAT_SEARCHING_PROCESS_STATUS_DAB", STAT_SEARCHING_PROCESS_STATUS_DAB, "\"0-n\"");
unsigned short STAT_ENSEMBLE_BER_WERT = (RXBUF_UINT(1));
// Bit error rate of active ensemble / Bit Error Rate of active ensemble
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "FIND_BEST_STATION_DAB", "STAT_ENSEMBLE_BER_WERT", STAT_ENSEMBLE_BER_WERT, "\"HEX\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_FIND_BEST_TMC_STATION: { // 0xA045
if (datalen < 5) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_FIND_BEST_TMC_STATION", 5);
break;
}
unsigned char STAT_SEARCHING_PROCESS_STATUS = (RXBUF_UCHAR(0));
// TSearchingProcess table / Tabelle TSearchingProcess
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "FIND_BEST_TMC_STATION", "STAT_SEARCHING_PROCESS_STATUS", STAT_SEARCHING_PROCESS_STATUS, "\"0-n\"");
unsigned short STAT_PI_WERT_0XA045 = (RXBUF_UINT(1));
// Program identification of the best station / Program Identification of the best station
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "FIND_BEST_TMC_STATION", "STAT_PI_WERT_0XA045", STAT_PI_WERT_0XA045, "");
unsigned char STAT_FIELDSTRENGTH_WERT_0XA045 = (RXBUF_UCHAR(3));
// Field strength of the best station: Range: 0 & 255 / Fieldstrength of the best station: Range: 0&255
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "FIND_BEST_TMC_STATION", "STAT_FIELDSTRENGTH_WERT_0XA045", STAT_FIELDSTRENGTH_WERT_0XA045, "");
unsigned char STAT_QUALITY_WERT_0XA045 = (RXBUF_UCHAR(4));
// Quality of the best station: Range: 0 & 255 / Quality of the best station: Range: 0&255
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "FIND_BEST_TMC_STATION", "STAT_QUALITY_WERT_0XA045", STAT_QUALITY_WERT_0XA045, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STEUERN_BT_DELETE_ALL_PHONE_ID: { // 0xA04B
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_INITIALISATION_COUNTER_REGION_CODE_DVD: { // 0xA04D
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_INITIALISATION_COUNTER_REGION_CODE_DVD", 1);
break;
}
unsigned char STAT_INITIALISATION_COUNTER_REGION_CODE_DVD_WERT = (RXBUF_UCHAR(0));
// Value change counter DVD country code / Wert ÄnderugszählerDVDLändercode
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "INITIALISATION_COUNTER_REGION_CODE_DVD", "STAT_INITIALISATION_COUNTER_REGION_CODE_DVD_WERT", STAT_INITIALISATION_COUNTER_REGION_CODE_DVD_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_SWUP_REMOVE_CUSTOMER_UPDATES: { // 0xA05A
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_SWUP_REMOVE_CUSTOMER_UPDATES", 1);
break;
}
unsigned char STAT_REMOVE_CUSTOMER_UPDATES = (RXBUF_UCHAR(0));
// Remove all user updates / Entfernen aller Benutzer Updates
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "SWUP_REMOVE_CUSTOMER_UPDATES", "STAT_REMOVE_CUSTOMER_UPDATES", STAT_REMOVE_CUSTOMER_UPDATES, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STEUERN_CLEAR_FAULT_TRACKING: { // 0xA085
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_TDA_AKTIVIERUNG: { // 0xA0A8
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_UPDATE_ZERTIFIKATE: { // 0xA0A9
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_TELNET_ZUGANG_AUS: { // 0xA0B0
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_TELNET_ZUGANG_AUS", 1);
break;
}
unsigned char STAT_TELNET_ZUGANG = (RXBUF_UCHAR(0));
// Status of the telnet access of the HU or the RSE. / Status des Telnetzugangs der HU oder des RSE.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "TELNET_ZUGANG_AUS", "STAT_TELNET_ZUGANG", STAT_TELNET_ZUGANG, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_WLAN_WPS_PUSH_BUTTON: { // 0xA0BB
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_HU_VIN_PROTECTION: { // 0xA0F6
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_HU_VIN_PROTECTION", 1);
break;
}
unsigned char STAT_HU_VIN_PROTECTION = (RXBUF_UCHAR(0));
// reads the status of the VIN reading / liest den Status des Auslesens der VIN
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "HU_VIN_PROTECTION", "STAT_HU_VIN_PROTECTION", STAT_HU_VIN_PROTECTION, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_HU_FSC_REFURBISH_UI: { // 0xA0F7
if (datalen < 2) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_HU_FSC_REFURBISH_UI", 2);
break;
}
unsigned short STAT_HU_FSC_REFURBISH_UI_WERT = (RXBUF_UINT(0));
// Value of the required index that is stored in the HU / Wert des nötigen Index, der in der HU gespeichert ist
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "HU_FSC_REFURBISH_UI", "STAT_HU_FSC_REFURBISH_UI_WERT", STAT_HU_FSC_REFURBISH_UI_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_HU_FSC_REFURBISH_VIN: { // 0xA0FB
if (datalen < 7) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_HU_FSC_REFURBISH_VIN", 7);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_HU_VIN_PROTECTION_ENFORCE_CYCLIC: { // 0xA109
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_LESEN_SYSTEMAUDIO: { // 0xD002
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_LESEN_SYSTEMAUDIO", 1);
break;
}
unsigned char STAT_AUDIO_SYSTEM = (RXBUF_UCHAR(0));
// refers to the speaker system / bezeichnet das Lautsprechersystem
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_LESEN_SYSTEMAUDIO", "STAT_AUDIO_SYSTEM", STAT_AUDIO_SYSTEM, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_INITIALISIERUNG: { // 0xD004
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_INITIALISIERUNG", 1);
break;
}
unsigned char STAT_INITIALISIERUNG = (RXBUF_UCHAR(0));
// Initialization status / Initialisierungsstatus
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "INITIALISIERUNG", "STAT_INITIALISIERUNG", STAT_INITIALISIERUNG, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_DRIVE_HDD: { // 0xD007
if (datalen < 85) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_DRIVE_HDD", 85);
break;
}
unsigned char STAT_FREE_DISKSPACE_HDD_PERCENT_WERT = (RXBUF_UCHAR(0));
// Free HDD space in% / Freier Speicherplatz HDD in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_HDD_PERCENT_WERT", STAT_FREE_DISKSPACE_HDD_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_HDD_MBYTE_WERT = (RXBUF_UINT32(1));
// Free HDD space in MByte / Freier Speicherplatz HDD in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_HDD_MBYTE_WERT", STAT_FREE_DISKSPACE_HDD_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION1_PERCENT_WERT = (RXBUF_UCHAR(5));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION1_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION1_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION1_MBYTE_WERT = (RXBUF_UINT32(6));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION1_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION1_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION2_PERCENT_WERT = (RXBUF_UCHAR(10));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION2_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION2_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION2_MBYTE_WERT = (RXBUF_UINT32(11));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION2_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION2_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION3_PERCENT_WERT = (RXBUF_UCHAR(15));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION3_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION3_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION3_MBYTE_WERT = (RXBUF_UINT32(16));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION3_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION3_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION4_PERCENT_WERT = (RXBUF_UCHAR(20));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION4_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION4_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION4_MBYTE_WERT = (RXBUF_UINT32(21));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION4_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION4_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION5_PERCENT_WERT = (RXBUF_UCHAR(25));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION5_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION5_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION5_MBYTE_WERT = (RXBUF_UINT32(26));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION5_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION5_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION6_PERCENT_WERT = (RXBUF_UCHAR(30));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION6_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION6_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION6_MBYTE_WERT = (RXBUF_UINT32(31));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION6_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION6_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION7_PERCENT_WERT = (RXBUF_UCHAR(35));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION7_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION7_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION7_MBYTE_WERT = (RXBUF_UINT32(36));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION7_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION7_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION8_PERCENT_WERT = (RXBUF_UCHAR(40));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION8_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION8_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION8_MBYTE_WERT = (RXBUF_UINT32(41));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION8_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION8_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION9_PERCENT_WERT = (RXBUF_UCHAR(45));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION9_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION9_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION9_MBYTE_WERT = (RXBUF_UINT32(46));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION9_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION9_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION10_PERCENT_WERT = (RXBUF_UCHAR(50));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION10_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION10_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION10_MBYTE_WERT = (RXBUF_UINT32(51));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION10_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION10_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION11_PERCENT_WERT = (RXBUF_UCHAR(55));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION11_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION11_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION11_MBYTE_WERT = (RXBUF_UINT32(56));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION11_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION11_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION12_PERCENT_WERT = (RXBUF_UCHAR(60));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION12_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION12_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION12_MBYTE_WERT = (RXBUF_UINT32(61));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION12_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION12_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION13_PERCENT_WERT = (RXBUF_UCHAR(65));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION13_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION13_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION13_MBYTE_WERT = (RXBUF_UINT32(66));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION13_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION13_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION14_PERCENT_WERT = (RXBUF_UCHAR(70));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION14_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION14_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION14_MBYTE_WERT = (RXBUF_UINT32(71));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION14_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION14_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION15_PERCENT_WERT = (RXBUF_UCHAR(75));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION15_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION15_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION15_MBYTE_WERT = (RXBUF_UINT32(76));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION15_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION15_MBYTE_WERT, "");
unsigned char STAT_FREE_DISKSPACE_PARTITION16_PERCENT_WERT = (RXBUF_UCHAR(80));
// Free space on partition X in% / Freier Speicherplatz Partition X in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION16_PERCENT_WERT", STAT_FREE_DISKSPACE_PARTITION16_PERCENT_WERT, "\"%\"");
unsigned long STAT_FREE_DISKSPACE_PARTITION16_MBYTE_WERT = (RXBUF_UINT32(81));
// Free space in partition X in Mbytes / Freier Speicherplatz Partition X in MByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_DRIVE_HDD", "STAT_FREE_DISKSPACE_PARTITION16_MBYTE_WERT", STAT_FREE_DISKSPACE_PARTITION16_MBYTE_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_MEMORY_USAGE: { // 0xD00A
if (datalen < 18) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_MEMORY_USAGE", 18);
break;
}
unsigned long STAT_MEMORYSPACE_FLASH_KBYTE_WERT = (RXBUF_UINT32(0));
// Flash memory in kByte / Flashspeicher in kByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_MEMORY_USAGE", "STAT_MEMORYSPACE_FLASH_KBYTE_WERT", STAT_MEMORYSPACE_FLASH_KBYTE_WERT, "");
unsigned long STAT_FREE_MEMORYSPACE_FLASH_KBYTE_WERT = (RXBUF_UINT32(4));
// free flash memory / freier Flashspeicher
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_MEMORY_USAGE", "STAT_FREE_MEMORYSPACE_FLASH_KBYTE_WERT", STAT_FREE_MEMORYSPACE_FLASH_KBYTE_WERT, "");
unsigned char STAT_FREE_MEMORYSPACE_FLASH_PERCENT_WERT = (RXBUF_UCHAR(8));
// free flash memory in% / freier Flashspeicher in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_MEMORY_USAGE", "STAT_FREE_MEMORYSPACE_FLASH_PERCENT_WERT", STAT_FREE_MEMORYSPACE_FLASH_PERCENT_WERT, "\"%\"");
unsigned long STAT_MEMORYSPACE_RAM_KBYTE_WERT = (RXBUF_UINT32(9));
// RAM memory in kByte / RAM Speicher in kByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_MEMORY_USAGE", "STAT_MEMORYSPACE_RAM_KBYTE_WERT", STAT_MEMORYSPACE_RAM_KBYTE_WERT, "");
unsigned long STAT_FREE_MEMORYSPACE_RAM_KBYTE_WERT = (RXBUF_UINT32(13));
// free RAM memory in kByte / freier RAM Speicher in kByte
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_MEMORY_USAGE", "STAT_FREE_MEMORYSPACE_RAM_KBYTE_WERT", STAT_FREE_MEMORYSPACE_RAM_KBYTE_WERT, "");
unsigned char STAT_FREE_MEMORYSPACE_RAM_PERCENT_WERT = (RXBUF_UCHAR(17));
// free RAM memory in% / freier RAM Speicher in %
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_MEMORY_USAGE", "STAT_FREE_MEMORYSPACE_RAM_PERCENT_WERT", STAT_FREE_MEMORYSPACE_RAM_PERCENT_WERT, "\"%\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_VERSION_ID_LESEN: { // 0xD00B
if (datalen < 0) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_VERSION_ID_LESEN", 0);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_LESEN_LAUFWERK: { // 0xD00C
if (datalen < 2) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_LESEN_LAUFWERK", 2);
break;
}
unsigned short STAT_VERBAUTE_LAUFWERKE = (RXBUF_UINT(0));
// Reads out which drives are installed. / Liest aus, welche Laufwerke verbaut sind.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_LESEN_LAUFWERK", "STAT_VERBAUTE_LAUFWERKE", STAT_VERBAUTE_LAUFWERKE, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_ANT_QFS: { // 0xD010
if (datalen < 8) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_ANT_QFS", 8);
break;
}
unsigned char STAT_QUALITY_WERT_0XD010 = (RXBUF_UCHAR(0));
// Values between 0..15 This is the value used for AF tracking, where 15 corresponds to the best quality. / Werte
// zwischen 0..15 Dies ist der für AF-Tracking verwendete Wert, wobei 15 bester Qualität entspricht.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANT_QFS", "STAT_QUALITY_WERT_0XD010", STAT_QUALITY_WERT_0XD010, "");
unsigned char STAT_FIELDSTRENGTH_WERT_0XD010 = (RXBUF_UCHAR(1));
// Values between 0..15 This corresponds to 0..60 dBµV in steps of 4dB. / Werte zwischen 0..15 Dies entspricht
// 0..60 dBµV in Schritten von 4dB.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANT_QFS", "STAT_FIELDSTRENGTH_WERT_0XD010", STAT_FIELDSTRENGTH_WERT_0XD010, "");
unsigned char STAT_ANT_PW = (RXBUF_UCHAR(2));
// indicates the status of the antenna power supply. / gibt den Status der Antennenstromversorgung wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANT_QFS", "STAT_ANT_PW", STAT_ANT_PW, "\"0-n\"");
unsigned char STAT_FIELDSTRENGTH_EXACT_WERT = (RXBUF_UCHAR(3));
// Values between 0..60 This corresponds to 0..60 dBµV in steps of 1dB. Return of 255 if no measurement possible.
// / Werte zwischen 0..60 Dies entspricht 0..60 dBµV in Schritten von 1dB. Rückgabe von 255, wenn keine Messung
// möglich.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANT_QFS", "STAT_FIELDSTRENGTH_EXACT_WERT", STAT_FIELDSTRENGTH_EXACT_WERT, "\"dBµV\"");
unsigned long STAT_FREQUENZ_WERT = (RXBUF_UINT32(4));
// The currently set frequency in the range 150 - 108000 [kHz] / Die derzeit eingestellte Frequenz im Bereich 150
// - 108000 [kHz]
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_ANT_QFS", "STAT_FREQUENZ_WERT", STAT_FREQUENZ_WERT, "\"kHz\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_SGBMID_NAVIMAP: { // 0xD012
if (datalen < 8) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_SGBMID_NAVIMAP", 8);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_SER_NR_DOM_LESEN: { // 0xD019
if (datalen < 14) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_SER_NR_DOM_LESEN", 14);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_BT_GEKOPPELTE_GERAETE_LESEN: { // 0xD01D
if (datalen < 24) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_BT_GEKOPPELTE_GERAETE_LESEN", 24);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_SWUP_INSTALLATION_HISTORY: { // 0xD01E
if (datalen < 80) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_SWUP_INSTALLATION_HISTORY", 80);
break;
}
unsigned long STAT_HISTORY_1_KILOMETER_WERT = (RXBUF_UINT32(0));
// Mileage in operation 1. History entry 0xFFFFFFFF is invalid / Kilometerstand bei der Operation 1.
// Historyeintrag 0xFFFFFFFF für ungültig
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_1_KILOMETER_WERT", STAT_HISTORY_1_KILOMETER_WERT, "\"km\"");
unsigned char STAT_HISTORY_1_TYP = (RXBUF_UCHAR(4));
// Type of operation 1. History entry / Typ der Operation 1. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_1_TYP", STAT_HISTORY_1_TYP, "\"0-n\"");
unsigned long STAT_HISTORY_1_FLASHSPEICHER_WERT = (RXBUF_UINT32(5));
// Free flash memory that is available for updates after the update (0xff ff ff ff if unknown) 1. History entry
// Unit: kBytes / Freier Flashspeicher, der für Updates nach dem Update zur Verfügung steht (0xff ff ff ff wenn
// unbekannt) 1. Historyeintrag Einheit: kBytes
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_1_FLASHSPEICHER_WERT", STAT_HISTORY_1_FLASHSPEICHER_WERT, "\"kBytes\"");
unsigned char STAT_HISTORY_1_ERROR_CODE = (RXBUF_UCHAR(9));
// Software update error code 1. History entry / Software Update Fehlercode 1. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_1_ERROR_CODE", STAT_HISTORY_1_ERROR_CODE, "\"0-n\"");
unsigned long STAT_HISTORY_2_KILOMETER_WERT = (RXBUF_UINT32(10));
// Mileage in operation 2. History entry 0xFFFFFFFF is invalid / Kilometerstand bei der Operation 2.
// Historyeintrag 0xFFFFFFFF für ungültig
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_2_KILOMETER_WERT", STAT_HISTORY_2_KILOMETER_WERT, "\"km\"");
unsigned char STAT_HISTORY_2_TYP = (RXBUF_UCHAR(14));
// Type of operation 2. History entry / Typ der Operation 2. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_2_TYP", STAT_HISTORY_2_TYP, "\"0-n\"");
unsigned long STAT_HISTORY_2_FLASHSPEICHER_WERT = (RXBUF_UINT32(15));
// Free flash memory which is available for updates after the update (0xff ff ff ff if unknown) 2. History entry
// Unit: kBytes / Freier Flashspeicher, der für Updates nach dem Update zur Verfügung steht (0xff ff ff ff wenn
// unbekannt) 2. Historyeintrag Einheit: kBytes
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_2_FLASHSPEICHER_WERT", STAT_HISTORY_2_FLASHSPEICHER_WERT, "\"kBytes\"");
unsigned char STAT_HISTORY_2_ERROR_CODE = (RXBUF_UCHAR(19));
// Software update error code 2. History entry / Software Update Fehlercode 2. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_2_ERROR_CODE", STAT_HISTORY_2_ERROR_CODE, "\"0-n\"");
unsigned long STAT_HISTORY_3_KILOMETER_WERT = (RXBUF_UINT32(20));
// Mileage in operation 3. History entry 0xFFFFFFFF is invalid / Kilometerstand bei der Operation 3.
// Historyeintrag 0xFFFFFFFF für ungültig
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_3_KILOMETER_WERT", STAT_HISTORY_3_KILOMETER_WERT, "\"km\"");
unsigned char STAT_HISTORY_3_TYP = (RXBUF_UCHAR(24));
// Type of operation 3. History entry / Typ der Operation 3. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_3_TYP", STAT_HISTORY_3_TYP, "\"0-n\"");
unsigned long STAT_HISTORY_3_FLASHSPEICHER_WERT = (RXBUF_UINT32(25));
// Free flash memory that is available for updates after the update (0xff ff ff ff if unknown) 3. History entry
// Unit: kBytes / Freier Flashspeicher, der für Updates nach dem Update zur Verfügung steht (0xff ff ff ff wenn
// unbekannt) 3. Historyeintrag Einheit: kBytes
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_3_FLASHSPEICHER_WERT", STAT_HISTORY_3_FLASHSPEICHER_WERT, "\"kBytes\"");
unsigned char STAT_HISTORY_3_ERROR_CODE = (RXBUF_UCHAR(29));
// Software update error code 3. History entry / Software Update Fehlercode 3. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_3_ERROR_CODE", STAT_HISTORY_3_ERROR_CODE, "\"0-n\"");
unsigned long STAT_HISTORY_4_KILOMETER_WERT = (RXBUF_UINT32(30));
// Mileage during operation 4. History entry 0xFFFFFFFF is invalid / Kilometerstand bei der Operation 4.
// Historyeintrag 0xFFFFFFFF für ungültig
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_4_KILOMETER_WERT", STAT_HISTORY_4_KILOMETER_WERT, "\"km\"");
unsigned char STAT_HISTORY_4_TYP = (RXBUF_UCHAR(34));
// Type of operation 4. History entry / Typ der Operation 4. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_4_TYP", STAT_HISTORY_4_TYP, "\"0-n\"");
unsigned long STAT_HISTORY_4_FLASHSPEICHER_WERT = (RXBUF_UINT32(35));
// Free flash memory that is available for updates after the update (0xff ff ff ff if unknown) 4. History entry
// Unit: kBytes / Freier Flashspeicher, der für Updates nach dem Update zur Verfügung steht (0xff ff ff ff wenn
// unbekannt) 4. Historyeintrag Einheit: kBytes
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_4_FLASHSPEICHER_WERT", STAT_HISTORY_4_FLASHSPEICHER_WERT, "\"kBytes\"");
unsigned char STAT_HISTORY_4_ERROR_CODE = (RXBUF_UCHAR(39));
// Software update error code 4. History entry / Software Update Fehlercode 4. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_4_ERROR_CODE", STAT_HISTORY_4_ERROR_CODE, "\"0-n\"");
unsigned long STAT_HISTORY_5_KILOMETER_WERT = (RXBUF_UINT32(40));
// Mileage in operation 5. History entry 0xFFFFFFFF is invalid / Kilometerstand bei der Operation 5.
// Historyeintrag 0xFFFFFFFF für ungültig
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_5_KILOMETER_WERT", STAT_HISTORY_5_KILOMETER_WERT, "\"km\"");
unsigned char STAT_HISTORY_5_TYP = (RXBUF_UCHAR(44));
// Type of operation 5. History entry / Typ der Operation 5. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_5_TYP", STAT_HISTORY_5_TYP, "\"0-n\"");
unsigned long STAT_HISTORY_5_FLASHSPEICHER_WERT = (RXBUF_UINT32(45));
// Free flash memory that is available for updates after the update (0xff ff ff ff if unknown) 5. History entry
// Unit: kBytes / Freier Flashspeicher, der für Updates nach dem Update zur Verfügung steht (0xff ff ff ff wenn
// unbekannt) 5. Historyeintrag Einheit: kBytes
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_5_FLASHSPEICHER_WERT", STAT_HISTORY_5_FLASHSPEICHER_WERT, "\"kBytes\"");
unsigned char STAT_HISTORY_5_ERROR_CODE = (RXBUF_UCHAR(49));
// Software update error code 5. History entry / Software Update Fehlercode 5. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_5_ERROR_CODE", STAT_HISTORY_5_ERROR_CODE, "\"0-n\"");
unsigned long STAT_HISTORY_6_KILOMETER_WERT = (RXBUF_UINT32(50));
// Mileage in operation 6. History entry 0xFFFFFFFF is invalid / Kilometerstand bei der Operation 6.
// Historyeintrag 0xFFFFFFFF für ungültig
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_6_KILOMETER_WERT", STAT_HISTORY_6_KILOMETER_WERT, "\"km\"");
unsigned char STAT_HISTORY_6_TYP = (RXBUF_UCHAR(54));
// Type of operation 6. History entry / Typ der Operation 6. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_6_TYP", STAT_HISTORY_6_TYP, "\"0-n\"");
unsigned long STAT_HISTORY_6_FLASHSPEICHER_WERT = (RXBUF_UINT32(55));
// Free flash memory that is available for updates after the update (0xff ff ff ff if unknown) 6. History entry
// Unit: kBytes / Freier Flashspeicher, der für Updates nach dem Update zur Verfügung steht (0xff ff ff ff wenn
// unbekannt) 6. Historyeintrag Einheit: kBytes
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_6_FLASHSPEICHER_WERT", STAT_HISTORY_6_FLASHSPEICHER_WERT, "\"kBytes\"");
unsigned char STAT_HISTORY_6_ERROR_CODE = (RXBUF_UCHAR(59));
// Software update error code 6. History entry / Software Update Fehlercode 6. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_6_ERROR_CODE", STAT_HISTORY_6_ERROR_CODE, "\"0-n\"");
unsigned long STAT_HISTORY_7_KILOMETER_WERT = (RXBUF_UINT32(60));
// Mileage in operation 7. History entry 0xFFFFFFFF is invalid / Kilometerstand bei der Operation 7.
// Historyeintrag 0xFFFFFFFF für ungültig
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_7_KILOMETER_WERT", STAT_HISTORY_7_KILOMETER_WERT, "\"km\"");
unsigned char STAT_HISTORY_7_TYP = (RXBUF_UCHAR(64));
// Type of operation 7. History entry / Typ der Operation 7. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_7_TYP", STAT_HISTORY_7_TYP, "\"0-n\"");
unsigned long STAT_HISTORY_7_FLASHSPEICHER_WERT = (RXBUF_UINT32(65));
// Free flash memory that is available for updates after the update (0xff ff ff ff if unknown) 7. History entry
// Unit: kBytes / Freier Flashspeicher, der für Updates nach dem Update zur Verfügung steht (0xff ff ff ff wenn
// unbekannt) 7. Historyeintrag Einheit: kBytes
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_7_FLASHSPEICHER_WERT", STAT_HISTORY_7_FLASHSPEICHER_WERT, "\"kBytes\"");
unsigned char STAT_HISTORY_7_ERROR_CODE = (RXBUF_UCHAR(69));
// Software update error code 7. History entry / Software Update Fehlercode 7. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_7_ERROR_CODE", STAT_HISTORY_7_ERROR_CODE, "\"0-n\"");
unsigned long STAT_HISTORY_8_KILOMETER_WERT = (RXBUF_UINT32(70));
// Mileage in operation 8. History entry 0xFFFFFFFF is invalid / Kilometerstand bei der Operation 8.
// Historyeintrag 0xFFFFFFFF für ungültig
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_8_KILOMETER_WERT", STAT_HISTORY_8_KILOMETER_WERT, "\"km\"");
unsigned char STAT_HISTORY_8_TYP = (RXBUF_UCHAR(74));
// Type of operation 8. History entry / Typ der Operation 8. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_8_TYP", STAT_HISTORY_8_TYP, "\"0-n\"");
unsigned long STAT_HISTORY_8_FLASHSPEICHER_WERT = (RXBUF_UINT32(75));
// Free flash memory which is available for updates after the update (0xff ff ff ff if unknown) 8. History entry
// Unit: kBytes / Freier Flashspeicher, der für Updates nach dem Update zur Verfügung steht (0xff ff ff ff wenn
// unbekannt) 8. Historyeintrag Einheit: kBytes
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_8_FLASHSPEICHER_WERT", STAT_HISTORY_8_FLASHSPEICHER_WERT, "\"kBytes\"");
unsigned char STAT_HISTORY_8_ERROR_CODE = (RXBUF_UCHAR(79));
// Software update error code 8. History entry / Software Update Fehlercode 8. Historyeintrag
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SWUP_INSTALLATION_HISTORY", "STAT_HISTORY_8_ERROR_CODE", STAT_HISTORY_8_ERROR_CODE, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_LOGISTIC_NR: { // 0xD020
if (datalen < 7) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_LOGISTIC_NR", 7);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_APPLICATION: { // 0xD021
if (datalen < 54) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_APPLICATION", 54);
break;
}
unsigned char STAT_APPL_1 = (RXBUF_UCHAR(0));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_1", STAT_APPL_1, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_1 = (RXBUF_UCHAR(1));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_1", STAT_APPL_ENABLED_1, "\"0-n\"");
unsigned char STAT_APPL_CODED_1 = (RXBUF_UCHAR(2));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_1", STAT_APPL_CODED_1, "\"0-n\"");
unsigned char STAT_APPL_2 = (RXBUF_UCHAR(3));
// Output for each application X: Name from the TApplication table. / Ausgabe für jede Applikation X: Name aus
// der Tabelle TApplication.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_2", STAT_APPL_2, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_2 = (RXBUF_UCHAR(4));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_2", STAT_APPL_ENABLED_2, "\"0-n\"");
unsigned char STAT_APPL_CODED_2 = (RXBUF_UCHAR(5));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_2", STAT_APPL_CODED_2, "\"0-n\"");
unsigned char STAT_APPL_3 = (RXBUF_UCHAR(6));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_3", STAT_APPL_3, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_3 = (RXBUF_UCHAR(7));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_3", STAT_APPL_ENABLED_3, "\"0-n\"");
unsigned char STAT_APPL_CODED_3 = (RXBUF_UCHAR(8));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_3", STAT_APPL_CODED_3, "\"0-n\"");
unsigned char STAT_APPL_4 = (RXBUF_UCHAR(9));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_4", STAT_APPL_4, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_4 = (RXBUF_UCHAR(10));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_4", STAT_APPL_ENABLED_4, "\"0-n\"");
unsigned char STAT_APPL_CODED_4 = (RXBUF_UCHAR(11));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_4", STAT_APPL_CODED_4, "\"0-n\"");
unsigned char STAT_APPL_5 = (RXBUF_UCHAR(12));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_5", STAT_APPL_5, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_5 = (RXBUF_UCHAR(13));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_5", STAT_APPL_ENABLED_5, "\"0-n\"");
unsigned char STAT_APPL_CODED_5 = (RXBUF_UCHAR(14));
// v indicates for each application X whether it is activated. / vgibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_5", STAT_APPL_CODED_5, "\"0-n\"");
unsigned char STAT_APPL_6 = (RXBUF_UCHAR(15));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_6", STAT_APPL_6, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_6 = (RXBUF_UCHAR(16));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_6", STAT_APPL_ENABLED_6, "\"0-n\"");
unsigned char STAT_APPL_CODED_6 = (RXBUF_UCHAR(17));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_6", STAT_APPL_CODED_6, "\"0-n\"");
unsigned char STAT_APPL_7 = (RXBUF_UCHAR(18));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_7", STAT_APPL_7, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_7 = (RXBUF_UCHAR(19));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_7", STAT_APPL_ENABLED_7, "\"0-n\"");
unsigned char STAT_APPL_CODED_7 = (RXBUF_UCHAR(20));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_7", STAT_APPL_CODED_7, "\"0-n\"");
unsigned char STAT_APPL_8 = (RXBUF_UCHAR(21));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_8", STAT_APPL_8, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_8 = (RXBUF_UCHAR(22));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_8", STAT_APPL_ENABLED_8, "\"0-n\"");
unsigned char STAT_APPL_CODED_8 = (RXBUF_UCHAR(23));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_8", STAT_APPL_CODED_8, "\"0-n\"");
unsigned char STAT_APPL_9 = (RXBUF_UCHAR(24));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_9", STAT_APPL_9, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_9 = (RXBUF_UCHAR(25));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_9", STAT_APPL_ENABLED_9, "\"0-n\"");
unsigned char STAT_APPL_CODED_9 = (RXBUF_UCHAR(26));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_9", STAT_APPL_CODED_9, "\"0-n\"");
unsigned char STAT_APPL_10 = (RXBUF_UCHAR(27));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_10", STAT_APPL_10, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_10 = (RXBUF_UCHAR(28));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_10", STAT_APPL_ENABLED_10, "\"0-n\"");
unsigned char STAT_APPL_CODED_10 = (RXBUF_UCHAR(29));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_10", STAT_APPL_CODED_10, "\"0-n\"");
unsigned char STAT_APPL_11 = (RXBUF_UCHAR(30));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_11", STAT_APPL_11, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_11 = (RXBUF_UCHAR(31));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_11", STAT_APPL_ENABLED_11, "\"0-n\"");
unsigned char STAT_APPL_CODED_11 = (RXBUF_UCHAR(32));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_11", STAT_APPL_CODED_11, "\"0-n\"");
unsigned char STAT_APPL_12 = (RXBUF_UCHAR(33));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_12", STAT_APPL_12, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_12 = (RXBUF_UCHAR(34));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_12", STAT_APPL_ENABLED_12, "\"0-n\"");
unsigned char STAT_APPL_CODED_12 = (RXBUF_UCHAR(35));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_12", STAT_APPL_CODED_12, "\"0-n\"");
unsigned char STAT_APPL_13 = (RXBUF_UCHAR(36));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_13", STAT_APPL_13, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_13 = (RXBUF_UCHAR(37));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_13", STAT_APPL_ENABLED_13, "\"0-n\"");
unsigned char STAT_APPL_CODED_13 = (RXBUF_UCHAR(38));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_13", STAT_APPL_CODED_13, "\"0-n\"");
unsigned char STAT_APPL_14 = (RXBUF_UCHAR(39));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_14", STAT_APPL_14, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_14 = (RXBUF_UCHAR(40));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_14", STAT_APPL_ENABLED_14, "\"0-n\"");
unsigned char STAT_APPL_CODED_14 = (RXBUF_UCHAR(41));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_14", STAT_APPL_CODED_14, "\"0-n\"");
unsigned char STAT_APPL_15 = (RXBUF_UCHAR(42));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_15", STAT_APPL_15, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_15 = (RXBUF_UCHAR(43));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_15", STAT_APPL_ENABLED_15, "\"0-n\"");
unsigned char STAT_APPL_CODED_15 = (RXBUF_UCHAR(44));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_15", STAT_APPL_CODED_15, "\"0-n\"");
unsigned char STAT_APPL_16 = (RXBUF_UCHAR(45));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_16", STAT_APPL_16, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_16 = (RXBUF_UCHAR(46));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_16", STAT_APPL_ENABLED_16, "\"0-n\"");
unsigned char STAT_APPL_CODED_16 = (RXBUF_UCHAR(47));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_16", STAT_APPL_CODED_16, "\"0-n\"");
unsigned char STAT_APPL_17 = (RXBUF_UCHAR(48));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_17", STAT_APPL_17, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_17 = (RXBUF_UCHAR(49));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_17", STAT_APPL_ENABLED_17, "\"0-n\"");
unsigned char STAT_APPL_CODED_17 = (RXBUF_UCHAR(50));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_17", STAT_APPL_CODED_17, "\"0-n\"");
unsigned char STAT_APPL_18 = (RXBUF_UCHAR(51));
// returns the names of each application X from the TApplication table. / gibt für jede Applikation X deren Namen
// aus der Tabelle TApplication wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_18", STAT_APPL_18, "\"0-n\"");
unsigned char STAT_APPL_ENABLED_18 = (RXBUF_UCHAR(52));
// shows for each application X whether it is currently running. / gibt für jede Applikation X wieder, ob sie
// gerade läuft.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_ENABLED_18", STAT_APPL_ENABLED_18, "\"0-n\"");
unsigned char STAT_APPL_CODED_18 = (RXBUF_UCHAR(53));
// indicates for each application X whether it is activated. / gibt für jede Applikation X wieder, ob sie
// aktiviert ist.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "APPLICATION", "STAT_APPL_CODED_18", STAT_APPL_CODED_18, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_ANALOG_TEMPERATUR: { // 0xD026
if (datalen < 7) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_ANALOG_TEMPERATUR", 7);
break;
}
char STAT_TEMP_FOT_WERT = (RXBUF_SCHAR(0));
// provides the temperature of the Fiber Optical Transceiver (FOT). Range: -127, &, 127 / liefert die Temperatur
// des Fibre Optical Transceivers (FOT). Bereich: -127,&,127
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANALOG_TEMPERATUR", "STAT_TEMP_FOT_WERT", STAT_TEMP_FOT_WERT, "\"°C\"");
short STAT_TEMP_ENDSTU_WERT = (RXBUF_SINT(1));
// supplies the temperature of the output stage. Range: -32767, &, 32767 / liefert die Temperatur der Endstufe.
// Bereich: -32767,&, 32767
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_ANALOG_TEMPERATUR", "STAT_TEMP_ENDSTU_WERT", STAT_TEMP_ENDSTU_WERT, "\"°C\"");
char STAT_TEMP_GYRO_WERT = (RXBUF_SCHAR(3));
// provides the temperature of the gyro. Range: -127, &, 127 / liefert die Temperatur des Gyro. Bereich:
// -127,&,127
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANALOG_TEMPERATUR", "STAT_TEMP_GYRO_WERT", STAT_TEMP_GYRO_WERT, "\"°C\"");
char STAT_TEMP_MOD_WERT = (RXBUF_SCHAR(4));
// supplies the temperature of the module (usually close to the processor). Range: -127, &, 127 / liefert die
// Temperatur des Moduls (normalerweise prozessornah). Bereich: -127,&,127
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANALOG_TEMPERATUR", "STAT_TEMP_MOD_WERT", STAT_TEMP_MOD_WERT, "\"°C\"");
char STAT_TEMP_HDD_WERT = (RXBUF_SCHAR(5));
// provides the temperature of the HDD drive. Range: -127, &, 127 / liefert die Temperatur des HDD-Laufwerks.
// Bereich: -127,&,127
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANALOG_TEMPERATUR", "STAT_TEMP_HDD_WERT", STAT_TEMP_HDD_WERT, "\"°C\"");
char STAT_TEMP_DVD_WERT = (RXBUF_SCHAR(6));
// provides the temperature of the DVD drive. Range: -127, &, 127 / liefert die Temperatur des DVD-Laufwerks.
// Bereich: -127,&,127
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANALOG_TEMPERATUR", "STAT_TEMP_DVD_WERT", STAT_TEMP_DVD_WERT, "\"°C\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_CD_MD_CDC: { // 0xD02C
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_CD_MD_CDC", 1);
break;
}
unsigned char STAT_DIGITAL_PLAYBACK_QUALITY_WERT = (RXBUF_UCHAR(0));
// Quality of the digital recording: Range: 0-15 0-1: Medium not readable (drive not ok) 2-8: Distortion / mute
// parts audible (drive not ok) 9-14: Medium readable, no distortion audible (drive ok) 15: Medium quality 100%,
// e.g. BLER 0 (drive ok) / Qualität der digitalen Aufnahme: Bereich: 0-15 0-1: Medium nicht lesbar (drive not
// ok) 2-8: Verzerrung / Stumm Stellen hörbar (drive not ok) 9-14: Medium lesbar, keine Verzerrung hörbar (drive
// ok) 15: Medium Qualität 100%, z.B. BLER 0 (drive ok)
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_CD_MD_CDC", "STAT_DIGITAL_PLAYBACK_QUALITY_WERT", STAT_DIGITAL_PLAYBACK_QUALITY_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_SPEED: { // 0xD030
if (datalen < 14) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_SPEED", 14);
break;
}
short STAT_WHEEL1_SENSOR_SPEED_WERT = (RXBUF_SINT(0));
// Speed on bike 1 / Geschwindigkeit am Rad 1
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_SPEED", "STAT_WHEEL1_SENSOR_SPEED_WERT", STAT_WHEEL1_SENSOR_SPEED_WERT, "\"km/h\"");
short STAT_WHEEL2_SENSOR_SPEED_WERT = (RXBUF_SINT(2));
// Speed on bike 2 / Geschwindigkeit am Rad 2
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_SPEED", "STAT_WHEEL2_SENSOR_SPEED_WERT", STAT_WHEEL2_SENSOR_SPEED_WERT, "\"km/h\"");
short STAT_WHEEL3_SENSOR_SPEED_WERT = (RXBUF_SINT(4));
// Speed on the bike 3 / Geschwindigkeit am Rad 3
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_SPEED", "STAT_WHEEL3_SENSOR_SPEED_WERT", STAT_WHEEL3_SENSOR_SPEED_WERT, "\"km/h\"");
short STAT_WHEEL4_SENSOR_SPEED_WERT = (RXBUF_SINT(6));
// Speed on the bike 4 / Geschwindigkeit am Rad 4
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_SPEED", "STAT_WHEEL4_SENSOR_SPEED_WERT", STAT_WHEEL4_SENSOR_SPEED_WERT, "\"km/h\"");
short STAT_COMBINED_SENSOR_SPEED_WERT = (RXBUF_SINT(8));
// Combined speed of the wheel sensors / Kombinierte Geschwindigkeit der Radsensoren
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_SPEED", "STAT_COMBINED_SENSOR_SPEED_WERT", STAT_COMBINED_SENSOR_SPEED_WERT, "\"km/h\"");
short STAT_GPS_SPEED_WERT = (RXBUF_SINT(10));
// Speed based on the GPS signal. / Geschwindigkeit basierend auf das GPS-Signal.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_SPEED", "STAT_GPS_SPEED_WERT", STAT_GPS_SPEED_WERT, "\"km/h\"");
unsigned short STAT_SPEED_DIFFERENCE_PERCENT_WERT = (RXBUF_UINT(12));
// Difference in percent between the speeds recorded with the wheel sensors or GPS / Abweichung in Prozent
// zwischen den Geschwindigkeiten, die mit den Radsensoren bzw. mittels GPS erfasst wurden
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_SPEED", "STAT_SPEED_DIFFERENCE_PERCENT_WERT", STAT_SPEED_DIFFERENCE_PERCENT_WERT, "\"%\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_DIRECTION: { // 0xD031
if (datalen < 2) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_DIRECTION", 2);
break;
}
unsigned char STAT_DIRECTION = (RXBUF_UCHAR(0));
// Current gear position see TGearType / aktuelle Gangstellung siehe TGearType
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DIRECTION", "STAT_DIRECTION", STAT_DIRECTION, "\"0-n\"");
unsigned char STAT_DIRECTION_SOURCE = (RXBUF_UCHAR(1));
// see table TDirectionSource / siehe Tabelle TDirectionSource
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DIRECTION", "STAT_DIRECTION_SOURCE", STAT_DIRECTION_SOURCE, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_GPS_DILUTION_OF_POSITION: { // 0xD032
if (datalen < 3) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_GPS_DILUTION_OF_POSITION", 3);
break;
}
unsigned char STAT_GPS_PDOP_WERT = (RXBUF_UCHAR(0));
// GPS position accuracy / GPS Positionsgeanuigkeit
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_DILUTION_OF_POSITION", "STAT_GPS_PDOP_WERT", STAT_GPS_PDOP_WERT, "");
unsigned char STAT_GPS_HDOP_WERT = (RXBUF_UCHAR(1));
// GPS horizontal position accuracy / GPS horizontale Positionsgeanuigkeit
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_DILUTION_OF_POSITION", "STAT_GPS_HDOP_WERT", STAT_GPS_HDOP_WERT, "");
unsigned char STAT_GPS_VDOP_WERT = (RXBUF_UCHAR(2));
// GPS vertical position accuracy / GPS vertikale Positionsgeanuigkeit
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_DILUTION_OF_POSITION", "STAT_GPS_VDOP_WERT", STAT_GPS_VDOP_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_GPS_SATINFO: { // 0xD034
if (datalen < 66) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_GPS_SATINFO", 66);
break;
}
unsigned char STAT_NUMBER_VISIBLE_SATS_WERT = (RXBUF_UCHAR(0));
// Number of theoretically reachable satellites / Anzahl der theoretisch erreichbaren Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_NUMBER_VISIBLE_SATS_WERT", STAT_NUMBER_VISIBLE_SATS_WERT, "");
unsigned char STAT_NUMBER_TRACKED_SATS_WERT = (RXBUF_UCHAR(1));
// Number of satellites tracked / Anzahl der aufgespuerten Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_NUMBER_TRACKED_SATS_WERT", STAT_NUMBER_TRACKED_SATS_WERT, "");
unsigned char STAT_SAT_1_ID_WERT = (RXBUF_UCHAR(2));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_1_ID_WERT", STAT_SAT_1_ID_WERT, "");
unsigned char STAT_SAT_1_STATUS = (RXBUF_UCHAR(3));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_1_STATUS", STAT_SAT_1_STATUS, "\"0-n\"");
short STAT_SAT_1_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(4));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_1_SIGNAL_TO_NOISE_WERT", STAT_SAT_1_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_2_ID_WERT = (RXBUF_UCHAR(6));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_2_ID_WERT", STAT_SAT_2_ID_WERT, "");
unsigned char STAT_SAT_2_STATUS = (RXBUF_UCHAR(7));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_2_STATUS", STAT_SAT_2_STATUS, "\"0-n\"");
short STAT_SAT_2_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(8));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_2_SIGNAL_TO_NOISE_WERT", STAT_SAT_2_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_3_ID_WERT = (RXBUF_UCHAR(10));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_3_ID_WERT", STAT_SAT_3_ID_WERT, "");
unsigned char STAT_SAT_3_STATUS = (RXBUF_UCHAR(11));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_3_STATUS", STAT_SAT_3_STATUS, "\"0-n\"");
short STAT_SAT_3_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(12));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_3_SIGNAL_TO_NOISE_WERT", STAT_SAT_3_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_4_ID_WERT = (RXBUF_UCHAR(14));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_4_ID_WERT", STAT_SAT_4_ID_WERT, "");
unsigned char STAT_SAT_4_STATUS = (RXBUF_UCHAR(15));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_4_STATUS", STAT_SAT_4_STATUS, "\"0-n\"");
short STAT_SAT_4_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(16));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_4_SIGNAL_TO_NOISE_WERT", STAT_SAT_4_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_5_ID_WERT = (RXBUF_UCHAR(18));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_5_ID_WERT", STAT_SAT_5_ID_WERT, "");
unsigned char STAT_SAT_5_STATUS = (RXBUF_UCHAR(19));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_5_STATUS", STAT_SAT_5_STATUS, "\"0-n\"");
short STAT_SAT_5_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(20));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_5_SIGNAL_TO_NOISE_WERT", STAT_SAT_5_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_6_ID_WERT = (RXBUF_UCHAR(22));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_6_ID_WERT", STAT_SAT_6_ID_WERT, "");
unsigned char STAT_SAT_6_STATUS = (RXBUF_UCHAR(23));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_6_STATUS", STAT_SAT_6_STATUS, "\"0-n\"");
short STAT_SAT_6_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(24));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_6_SIGNAL_TO_NOISE_WERT", STAT_SAT_6_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_7_ID_WERT = (RXBUF_UCHAR(26));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_7_ID_WERT", STAT_SAT_7_ID_WERT, "");
unsigned char STAT_SAT_7_STATUS = (RXBUF_UCHAR(27));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_7_STATUS", STAT_SAT_7_STATUS, "\"0-n\"");
short STAT_SAT_7_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(28));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_7_SIGNAL_TO_NOISE_WERT", STAT_SAT_7_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_8_ID_WERT = (RXBUF_UCHAR(30));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_8_ID_WERT", STAT_SAT_8_ID_WERT, "");
unsigned char STAT_SAT_8_STATUS = (RXBUF_UCHAR(31));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_8_STATUS", STAT_SAT_8_STATUS, "\"0-n\"");
short STAT_SAT_8_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(32));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_8_SIGNAL_TO_NOISE_WERT", STAT_SAT_8_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_9_ID_WERT = (RXBUF_UCHAR(34));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_9_ID_WERT", STAT_SAT_9_ID_WERT, "");
unsigned char STAT_SAT_9_STATUS = (RXBUF_UCHAR(35));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_9_STATUS", STAT_SAT_9_STATUS, "\"0-n\"");
short STAT_SAT_9_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(36));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_9_SIGNAL_TO_NOISE_WERT", STAT_SAT_9_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_10_ID_WERT = (RXBUF_UCHAR(38));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_10_ID_WERT", STAT_SAT_10_ID_WERT, "");
unsigned char STAT_SAT_10_STATUS = (RXBUF_UCHAR(39));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_10_STATUS", STAT_SAT_10_STATUS, "\"0-n\"");
short STAT_SAT_10_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(40));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_10_SIGNAL_TO_NOISE_WERT", STAT_SAT_10_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_11_ID_WERT = (RXBUF_UCHAR(42));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_11_ID_WERT", STAT_SAT_11_ID_WERT, "");
unsigned char STAT_SAT_11_STATUS = (RXBUF_UCHAR(43));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_11_STATUS", STAT_SAT_11_STATUS, "\"0-n\"");
short STAT_SAT_11_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(44));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_11_SIGNAL_TO_NOISE_WERT", STAT_SAT_11_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_12_ID_WERT = (RXBUF_UCHAR(46));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_12_ID_WERT", STAT_SAT_12_ID_WERT, "");
unsigned char STAT_SAT_12_STATUS = (RXBUF_UCHAR(47));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_12_STATUS", STAT_SAT_12_STATUS, "\"0-n\"");
short STAT_SAT_12_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(48));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_12_SIGNAL_TO_NOISE_WERT", STAT_SAT_12_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_13_ID_WERT = (RXBUF_UCHAR(50));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_13_ID_WERT", STAT_SAT_13_ID_WERT, "");
unsigned char STAT_SAT_13_STATUS = (RXBUF_UCHAR(51));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_13_STATUS", STAT_SAT_13_STATUS, "\"0-n\"");
short STAT_SAT_13_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(52));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_13_SIGNAL_TO_NOISE_WERT", STAT_SAT_13_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_14_ID_WERT = (RXBUF_UCHAR(54));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_14_ID_WERT", STAT_SAT_14_ID_WERT, "");
unsigned char STAT_SAT_14_STATUS = (RXBUF_UCHAR(55));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_14_STATUS", STAT_SAT_14_STATUS, "\"0-n\"");
short STAT_SAT_14_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(56));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_14_SIGNAL_TO_NOISE_WERT", STAT_SAT_14_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_15_ID_WERT = (RXBUF_UCHAR(58));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_15_ID_WERT", STAT_SAT_15_ID_WERT, "");
unsigned char STAT_SAT_15_STATUS = (RXBUF_UCHAR(59));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_15_STATUS", STAT_SAT_15_STATUS, "\"0-n\"");
short STAT_SAT_15_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(60));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_15_SIGNAL_TO_NOISE_WERT", STAT_SAT_15_SIGNAL_TO_NOISE_WERT, "");
unsigned char STAT_SAT_16_ID_WERT = (RXBUF_UCHAR(62));
// ID of the satellite / ID des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_16_ID_WERT", STAT_SAT_16_ID_WERT, "");
unsigned char STAT_SAT_16_STATUS = (RXBUF_UCHAR(63));
// Status of the satellite / Status des Satelliten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_16_STATUS", STAT_SAT_16_STATUS, "\"0-n\"");
short STAT_SAT_16_SIGNAL_TO_NOISE_WERT = (RXBUF_SINT(64));
// Signal-to-noise ratio / Signal- Rauschabstand
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "STATUS_GPS_SATINFO", "STAT_SAT_16_SIGNAL_TO_NOISE_WERT", STAT_SAT_16_SIGNAL_TO_NOISE_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_GPS: { // 0xD038
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_GPS", 1);
break;
}
unsigned char STAT_GPS = (RXBUF_UCHAR(0));
// Reads the GPS status. See table TGpsStatus. / Liest den GPS Status. Siehe Tabelle TGpsStatus.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_GPS", "STAT_GPS", STAT_GPS, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_GPS_RECEIVER_SW_VERSION: { // 0xD03B
if (datalen < 0) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_GPS_RECEIVER_SW_VERSION", 0);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_MAPMATERIAL_VERSION: { // 0xD03C
if (datalen < 0) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_MAPMATERIAL_VERSION", 0);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_NAVI_CALIBRATION: { // 0xD03D
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_NAVI_CALIBRATION", 1);
break;
}
unsigned char STAT_NAVI_CALIBRATION = (RXBUF_UCHAR(0));
// Asks whether the navigation system is calibrated. See table TNaviCalibration / Fragt ob das Navi kalibriert
// ist. Siehe Tabelle TNaviCalibration
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_NAVI_CALIBRATION", "STAT_NAVI_CALIBRATION", STAT_NAVI_CALIBRATION, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_EXT_GYROSIGNAL: { // 0xD03E
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_EXT_GYROSIGNAL", 1);
break;
}
unsigned char STAT_EXT_GYRO_SIGNAL = (RXBUF_UCHAR(0));
// Asks whether the gyro signal is received See table TExtGyroSignal / Fragt ob das Gyrosignal empfangen wird
// Siehe Tabelle TExtGyroSignal
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_EXT_GYROSIGNAL", "STAT_EXT_GYRO_SIGNAL", STAT_EXT_GYRO_SIGNAL, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_HMI_VERSION: { // 0xD03F
if (datalen < 0) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_HMI_VERSION", 0);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_SGBMID_GRACENOTES: { // 0xD042
if (datalen < 8) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_SGBMID_GRACENOTES", 8);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_ANT_QFS_FM2: { // 0xD045
if (datalen < 8) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_ANT_QFS_FM2", 8);
break;
}
unsigned char STAT_QUALITY_WERT_0XD045 = (RXBUF_UCHAR(0));
// Values between 0..15 This is the value used for AF tracking, where 15 corresponds to the best quality. / Werte
// zwischen 0..15 Dies ist der für AF-Tracking verwendete Wert, wobei 15 bester Qualität entspricht.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANT_QFS_FM2", "STAT_QUALITY_WERT_0XD045", STAT_QUALITY_WERT_0XD045, "");
unsigned char STAT_FIELDSTRENGTH_WERT_0XD045 = (RXBUF_UCHAR(1));
// Values between 0..15 This corresponds to 0..60 dBµV in steps of 4dB. / Werte zwischen 0..15 Dies entspricht
// 0..60 dBµV in Schritten von 4dB.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANT_QFS_FM2", "STAT_FIELDSTRENGTH_WERT_0XD045", STAT_FIELDSTRENGTH_WERT_0XD045, "");
unsigned char STAT_ANT_PW_0XD045 = (RXBUF_UCHAR(2));
// indicates the status of the antenna power supply. / gibt den Status der Antennenstromversorgung wieder.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANT_QFS_FM2", "STAT_ANT_PW_0XD045", STAT_ANT_PW_0XD045, "\"0-n\"");
unsigned char STAT_FIELDSTRENGTH_EXACT_WERT_0XD045 = (RXBUF_UCHAR(3));
// Values between 0..60 This corresponds to 0..60 dBµV in steps of 1dB. Return of 255 if no measurement possible.
// / Werte zwischen 0..60 Dies entspricht 0..60 dBµV in Schritten von 1dB. Rückgabe von 255, wenn keine Messung
// möglich.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ANT_QFS_FM2", "STAT_FIELDSTRENGTH_EXACT_WERT_0XD045", STAT_FIELDSTRENGTH_EXACT_WERT_0XD045, "\"dBµV\"");
unsigned long STAT_FREQUENZ_WERT_0XD045 = (RXBUF_UINT32(4));
// The currently set frequency in the range 150 - 108000 [kHz] / Die derzeit eingestellte Frequenz im Bereich 150
// - 108000 [kHz]
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_ANT_QFS_FM2", "STAT_FREQUENZ_WERT_0XD045", STAT_FREQUENZ_WERT_0XD045, "\"kHz\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_SIGNAL_DAB: { // 0xD053
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_SIGNAL_DAB", 1);
break;
}
unsigned char STAT_SIGNAL_DAB = (RXBUF_UCHAR(0));
// DAB signal / DAB Signal
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SIGNAL_DAB", "STAT_SIGNAL_DAB", STAT_SIGNAL_DAB, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_USB_HUB_TEST: { // 0xD057
if (datalen < 2) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_USB_HUB_TEST", 2);
break;
}
unsigned char STAT_USB_HUB_TEST_PORT_1 = (RXBUF_UCHAR(0));
// Status HUB connection port 1 / Status HUB Verbindung Port 1
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_USB_HUB_TEST", "STAT_USB_HUB_TEST_PORT_1", STAT_USB_HUB_TEST_PORT_1, "\"0-n\"");
unsigned char STAT_USB_HUB_TEST_PORT_2 = (RXBUF_UCHAR(1));
// Status HUB connection port 2 / Status HUB Verbindung Port 2
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_USB_HUB_TEST", "STAT_USB_HUB_TEST_PORT_2", STAT_USB_HUB_TEST_PORT_2, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_ROUTE_DOWNLOAD: { // 0xD065
if (datalen < 4) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_ROUTE_DOWNLOAD", 4);
break;
}
unsigned char STAT_ROUTE_DOWNLOAD = (RXBUF_UCHAR(0));
// Status route download / Status Route download
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ROUTE_DOWNLOAD", "STAT_ROUTE_DOWNLOAD", STAT_ROUTE_DOWNLOAD, "\"0-n\"");
unsigned char STAT_PERCENT_COMPLETE_WERT = (RXBUF_UCHAR(1));
// Completion of route download in percent / Fertigstellung Route Download in Prozent
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ROUTE_DOWNLOAD", "STAT_PERCENT_COMPLETE_WERT", STAT_PERCENT_COMPLETE_WERT, "\"%\"");
unsigned short STAT_AVAILABLE_DATASETS_WERT = (RXBUF_UINT(2));
// Number of available records / Anzahl verfügbarer Datensätze
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_ROUTE_DOWNLOAD", "STAT_AVAILABLE_DATASETS_WERT", STAT_AVAILABLE_DATASETS_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_ADAS: { // 0xD067
if (datalen < 17) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_ADAS", 17);
break;
}
unsigned short STAT_LIFECYCLE_DURATION_WERT = (RXBUF_UINT(0));
// Duration of the lifecycle in minutes / Dauer des Lifecycles in Minuten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_ADAS", "STAT_LIFECYCLE_DURATION_WERT", STAT_LIFECYCLE_DURATION_WERT, "");
unsigned char STAT_RECEIVED_RESYNCS_ACC_WERT = (RXBUF_UCHAR(2));
// Number of resyncs that have been received from the ACC ECU / Number of resyncs that have been received from
// the ACC ECU
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_RECEIVED_RESYNCS_ACC_WERT", STAT_RECEIVED_RESYNCS_ACC_WERT, "");
unsigned char STAT_RECEIVED_RESYNCS_NIVI_WERT = (RXBUF_UCHAR(3));
// Number of resyncs that have been received from the Night Vision ECU / Number of resyncs that have been
// received from the Night Vision ECU
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_RECEIVED_RESYNCS_NIVI_WERT", STAT_RECEIVED_RESYNCS_NIVI_WERT, "");
unsigned char STAT_RECEIVED_RESYNCS_LDM_WERT = (RXBUF_UCHAR(4));
// Number of resyncs that have been received from the LDM ECU / Number of resyncs that have been received from
// the LDM ECU
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_RECEIVED_RESYNCS_LDM_WERT", STAT_RECEIVED_RESYNCS_LDM_WERT, "");
unsigned char STAT_RECEIVED_RESYNCS_ICM_QL_WERT = (RXBUF_UCHAR(5));
// Number of resyncs that have been received from the ICM Q / L ECU / Number of resyncs that have been received
// from the ICM Q/L ECU
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_RECEIVED_RESYNCS_ICM_QL_WERT", STAT_RECEIVED_RESYNCS_ICM_QL_WERT, "");
unsigned char STAT_RECEIVED_RESYNCS_KAFAS_WERT = (RXBUF_UCHAR(6));
// Number of resyncs that have been received from the KAFAS ECU / Number of resyncs that have been received from
// the KAFAS ECU
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_RECEIVED_RESYNCS_KAFAS_WERT", STAT_RECEIVED_RESYNCS_KAFAS_WERT, "");
unsigned char STAT_RECEIVED_RESYNCS_FLA_WERT = (RXBUF_UCHAR(7));
// Number of resyncs that have been received from the FLA ECU / Number of resyncs that have been received from
// the FLA ECU
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_RECEIVED_RESYNCS_FLA_WERT", STAT_RECEIVED_RESYNCS_FLA_WERT, "");
unsigned char STAT_RECEIVED_RESYNCS_FRMFA_WERT = (RXBUF_UCHAR(8));
// Number of resyncs that have been received from the FRMFA ECU / Number of resyncs that have been received from
// the FRMFA ECU
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_RECEIVED_RESYNCS_FRMFA_WERT", STAT_RECEIVED_RESYNCS_FRMFA_WERT, "");
unsigned char STAT_SENT_NAVGRAPH_WERT = (RXBUF_UCHAR(9));
// Number of NavGraph messages that have been sent / Number of NavGraph messages that have been sent
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_SENT_NAVGRAPH_WERT", STAT_SENT_NAVGRAPH_WERT, "");
unsigned char STAT_SENT_NAVGRAPH_V_WERT = (RXBUF_UCHAR(10));
// Number of NavGraph extended speed messages that have been sent / Number of NavGraph extended speed messages
// that have been sent
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_SENT_NAVGRAPH_V_WERT", STAT_SENT_NAVGRAPH_V_WERT, "");
unsigned char STAT_SENT_NAVGRAPH_LNE_WERT = (RXBUF_UCHAR(11));
// Number of NavGraph extended lane messages that have been sent / Number of NavGraph extended lane messages that
// have been sent
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_SENT_NAVGRAPH_LNE_WERT", STAT_SENT_NAVGRAPH_LNE_WERT, "");
unsigned char STAT_SENT_NAVGRAPHSYNC_WERT = (RXBUF_UCHAR(12));
// Number of NavGraphSync messages that have been sent / Number of NavGraphSync messages that have been sent
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_SENT_NAVGRAPHSYNC_WERT", STAT_SENT_NAVGRAPHSYNC_WERT, "");
unsigned char STAT_SENT_NAVGPS1_WERT = (RXBUF_UCHAR(13));
// Number of NavGPS1 messages that have been sent / Number of NavGPS1 messages that have been sent
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_SENT_NAVGPS1_WERT", STAT_SENT_NAVGPS1_WERT, "");
unsigned char STAT_SENT_NAVGPS2_WERT = (RXBUF_UCHAR(14));
// Number of NavGPS2 messages that have been sent / Number of NavGPS2 messages that have been sent
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_SENT_NAVGPS2_WERT", STAT_SENT_NAVGPS2_WERT, "");
unsigned char STAT_SENT_NAVSYSINFO_WERT = (RXBUF_UCHAR(15));
// Number of NavSysInfo messages that have been sent / Number of NavSysInfo messages that have been sent
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_SENT_NAVSYSINFO_WERT", STAT_SENT_NAVSYSINFO_WERT, "");
unsigned char STAT_SENT_NAVGRAPHMATCH_WERT = (RXBUF_UCHAR(16));
// Number of NavGraphMatch messages that have been sent / Number of NavGraphMatch messages that have been sent
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_ADAS", "STAT_SENT_NAVGRAPHMATCH_WERT", STAT_SENT_NAVGRAPHMATCH_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_TDA_AKTIVIERUNG: { // 0xD091
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_TDA_AKTIVIERUNG", 1);
break;
}
unsigned char STAT_DIENSTE_AKTIVIERUNG = (RXBUF_UCHAR(0));
// Status of TDA BMW services / Status TDA BMW Dienste
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_TDA_AKTIVIERUNG", "STAT_DIENSTE_AKTIVIERUNG", STAT_DIENSTE_AKTIVIERUNG, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_TIME_AFTER_STARTUP: { // 0xD092
if (datalen < 3) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_TIME_AFTER_STARTUP", 3);
break;
}
unsigned char STAT_TIME_AFTER_START_UP_WERT = (RXBUF_UCHAR(0));
// Values from 0-255 [s], which indicate how much time has passed since booting (waking up) / Werte von 0-255
// [s], die angeben, wie viel Zeit seit dem Hochstarten (Aufwecken) vergangen ist
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_TIME_AFTER_STARTUP", "STAT_TIME_AFTER_START_UP_WERT", STAT_TIME_AFTER_START_UP_WERT, "\"s\"");
char STAT_TIME_AFTER_POWER_DOWN_AVAILABLE_WERT = (RXBUF_SCHAR(1));
// Values from 0-127 [s], which indicate how much time has passed since the internal traffic jam was reached, to
// execute a powerdown immediately. -1 means 'not yet reached' / Werte von 0-127 [s], die angeben, wie viel Zeit
// vergangen ist, seit dem intern der Staus erreicht wurde, sofort einen Powerdown auszuführen. -1 bedeutet 'noch
// nicht erreicht'
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_TIME_AFTER_STARTUP", "STAT_TIME_AFTER_POWER_DOWN_AVAILABLE_WERT", STAT_TIME_AFTER_POWER_DOWN_AVAILABLE_WERT, "\"s\"");
char STAT_TIME_AFTER_FULLY_OPERATIONAL_WERT = (RXBUF_SCHAR(2));
// Values from 0-127 [s], which indicate how much time has passed since the internal traffic jam 'fully started'
// was reached. -1 means 'not yet reached' / Werte von 0-127 [s], die angeben, wie viel Zeit vergangen ist, seit
// dem intern der Staus 'vollständig aufgestartet' erreicht wurde. -1 bedeutet 'noch nicht erreicht'
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_TIME_AFTER_STARTUP", "STAT_TIME_AFTER_FULLY_OPERATIONAL_WERT", STAT_TIME_AFTER_FULLY_OPERATIONAL_WERT, "\"s\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_FM_PHASDIV_ANTENNA: { // 0xD093
if (datalen < 2) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_FM_PHASDIV_ANTENNA", 2);
break;
}
unsigned char STAT_FM_PHASEDIV_ANTENNA1 = (RXBUF_UCHAR(0));
// Status FM 1 phase diversity antenna. For the result, see table TAB_stateFMPhasAntenna / Status FM 1
// Phasendiversity Antenne. Ergebnis siehe Tabelle TAB_stateFMPhasAntenna
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_FM_PHASDIV_ANTENNA", "STAT_FM_PHASEDIV_ANTENNA1", STAT_FM_PHASEDIV_ANTENNA1, "\"0-n\"");
unsigned char STAT_FM_PHASEDIV_ANTENNA2 = (RXBUF_UCHAR(1));
// Status FM 2 phase diversity antenna. For the result, see table TAB_stateFMPhasAntenna / Status FM 2
// Phasendiversity Antenne. Ergebnis siehe Tabelle TAB_stateFMPhasAntenna
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_FM_PHASDIV_ANTENNA", "STAT_FM_PHASEDIV_ANTENNA2", STAT_FM_PHASEDIV_ANTENNA2, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_BT_FIRMWARE: { // 0xD095
if (datalen < 0) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_BT_FIRMWARE", 0);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_HD_DECODER_FIRMWARE: { // 0xD0B8
if (datalen < 0) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_HD_DECODER_FIRMWARE", 0);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_ABLAUF_ZERTIFIKAT: { // 0xD0B9
if (datalen < 0) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_ABLAUF_ZERTIFIKAT", 0);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_COOKIES: { // 0xD0BA
if (datalen < 0) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_COOKIES", 0);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_COUNTER_FILES_MUSICDB: { // 0xD0C1
if (datalen < 4) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_COUNTER_FILES_MUSICDB", 4);
break;
}
unsigned long STAT_MUSICDB_STORED_FILES_WERT = (RXBUF_UINT32(0));
// Number of files stored in the music DB / Anzahl der Dateien die in der Musik DB gespeichert sind
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "COUNTER_FILES_MUSICDB", "STAT_MUSICDB_STORED_FILES_WERT", STAT_MUSICDB_STORED_FILES_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_ZIN_CENTRAL_INSTRUMENT: { // 0xD0C9
if (datalen < 9) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_ZIN_CENTRAL_INSTRUMENT", 9);
break;
}
unsigned char STAT_HW_INDEX_WERT = (RXBUF_UCHAR(0));
// Hardware version value / Wert der Hardware-Version
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_CENTRAL_INSTRUMENT", "STAT_HW_INDEX_WERT", STAT_HW_INDEX_WERT, "");
unsigned char STAT_SW_INDEX_WERT = (RXBUF_UCHAR(1));
// Software version value / Wert der Software-Version
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_CENTRAL_INSTRUMENT", "STAT_SW_INDEX_WERT", STAT_SW_INDEX_WERT, "");
unsigned char STAT_CRC_COUNTER_WERT = (RXBUF_UCHAR(2));
// Number of CRC errors detected / Anzahl der erkannten CRC-Fehler
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_CENTRAL_INSTRUMENT", "STAT_CRC_COUNTER_WERT", STAT_CRC_COUNTER_WERT, "");
unsigned long STAT_SERIAL_NUMBER_WERT = (RXBUF_UINT32(3));
// Serial number of the central instrument / Seriennummer des Zentralinstruments
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "ZIN_CENTRAL_INSTRUMENT", "STAT_SERIAL_NUMBER_WERT", STAT_SERIAL_NUMBER_WERT, "");
unsigned char STAT_DIAGNOSTIC_FLAGS = (RXBUF_UCHAR(7));
// Returns the status of the central instrument. Values from the table TAB_ZIN_DIAGNOSTIC_FLAG / Gibt den Status
// des Zentralinstruments zurück Werte aus der Tabelle TAB_ZIN_DIAGNOSTIC_FLAG
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_CENTRAL_INSTRUMENT", "STAT_DIAGNOSTIC_FLAGS", STAT_DIAGNOSTIC_FLAGS, "\"0-n\"");
unsigned char STAT_ZIN_VARIANT = (RXBUF_UCHAR(8));
// Reports the variant of the central instrument used / Reports the variant of the used central instrument
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_CENTRAL_INSTRUMENT", "STAT_ZIN_VARIANT", STAT_ZIN_VARIANT, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_ZIN_EVENT_QUEUE: { // 0xD0CA
if (datalen < 7) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_ZIN_EVENT_QUEUE", 7);
break;
}
unsigned char STAT_EVENT_ID_0_WERT = (RXBUF_UCHAR(0));
// first event ID / erste Event ID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_EVENT_QUEUE", "STAT_EVENT_ID_0_WERT", STAT_EVENT_ID_0_WERT, "");
unsigned char STAT_EVENT_ID_1_WERT = (RXBUF_UCHAR(1));
// second event ID / zweite Event ID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_EVENT_QUEUE", "STAT_EVENT_ID_1_WERT", STAT_EVENT_ID_1_WERT, "");
unsigned char STAT_EVENT_ID_2_WERT = (RXBUF_UCHAR(2));
// third event ID / dritte Event ID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_EVENT_QUEUE", "STAT_EVENT_ID_2_WERT", STAT_EVENT_ID_2_WERT, "");
unsigned char STAT_EVENT_ID_3_WERT = (RXBUF_UCHAR(3));
// fourth event ID / vierte Event ID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_EVENT_QUEUE", "STAT_EVENT_ID_3_WERT", STAT_EVENT_ID_3_WERT, "");
unsigned char STAT_EVENT_ID_4_WERT = (RXBUF_UCHAR(4));
// fifth event ID / fünfte Event ID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_EVENT_QUEUE", "STAT_EVENT_ID_4_WERT", STAT_EVENT_ID_4_WERT, "");
unsigned char STAT_EVENT_ID_5_WERT = (RXBUF_UCHAR(5));
// sixth event ID / sechste Event ID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_EVENT_QUEUE", "STAT_EVENT_ID_5_WERT", STAT_EVENT_ID_5_WERT, "");
unsigned char STAT_EVENT_ID_6_WERT = (RXBUF_UCHAR(6));
// seventh event ID / siebte Event ID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_EVENT_QUEUE", "STAT_EVENT_ID_6_WERT", STAT_EVENT_ID_6_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_ZIN_INTERNAL_STATES: { // 0xD0CB
if (datalen < 23) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_ZIN_INTERNAL_STATES", 23);
break;
}
unsigned char STAT_CURRENT_WIDGET_ID_WERT = (RXBUF_UCHAR(0));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_CURRENT_WIDGET_ID_WERT", STAT_CURRENT_WIDGET_ID_WERT, "");
unsigned char STAT_NEXT_WIDGET_ID_PRIO_1_WERT = (RXBUF_UCHAR(1));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_NEXT_WIDGET_ID_PRIO_1_WERT", STAT_NEXT_WIDGET_ID_PRIO_1_WERT, "");
unsigned char STAT_NEXT_WIDGET_ID_PRIO_2_WERT = (RXBUF_UCHAR(2));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_NEXT_WIDGET_ID_PRIO_2_WERT", STAT_NEXT_WIDGET_ID_PRIO_2_WERT, "");
unsigned char STAT_NEXT_WIDGET_ID_PRIO_3_WERT = (RXBUF_UCHAR(3));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_NEXT_WIDGET_ID_PRIO_3_WERT", STAT_NEXT_WIDGET_ID_PRIO_3_WERT, "");
unsigned char STAT_SW_MAJOR_VERSION_WERT = (RXBUF_UCHAR(4));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_SW_MAJOR_VERSION_WERT", STAT_SW_MAJOR_VERSION_WERT, "");
unsigned char STAT_SW_MINOR_VERSION_WERT = (RXBUF_UCHAR(5));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_SW_MINOR_VERSION_WERT", STAT_SW_MINOR_VERSION_WERT, "");
unsigned char STAT_SW_PATCH_VERSION_WERT = (RXBUF_UCHAR(6));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_SW_PATCH_VERSION_WERT", STAT_SW_PATCH_VERSION_WERT, "");
unsigned char STAT_TARGET_BRIGHTNESS_WERT = (RXBUF_UCHAR(7));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_TARGET_BRIGHTNESS_WERT", STAT_TARGET_BRIGHTNESS_WERT, "");
char STAT_LED_RING_OFFSET_BRIGHTNESS_WERT = (RXBUF_SCHAR(8));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_LED_RING_OFFSET_BRIGHTNESS_WERT", STAT_LED_RING_OFFSET_BRIGHTNESS_WERT, "");
unsigned short STAT_CURRENT_PWM_OUTPUT_VALUE_WERT = (RXBUF_UINT(9));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_CURRENT_PWM_OUTPUT_VALUE_WERT", STAT_CURRENT_PWM_OUTPUT_VALUE_WERT, "");
unsigned char STAT_LED_RING_SWITCH_WERT = (RXBUF_UCHAR(11));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_LED_RING_SWITCH_WERT", STAT_LED_RING_SWITCH_WERT, "");
unsigned char STAT_PERMANENT_SWITCH_WERT = (RXBUF_UCHAR(12));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_PERMANENT_SWITCH_WERT", STAT_PERMANENT_SWITCH_WERT, "");
unsigned char STAT_PERMANENT_DISPLAYS_WERT = (RXBUF_UCHAR(13));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_PERMANENT_DISPLAYS_WERT", STAT_PERMANENT_DISPLAYS_WERT, "");
unsigned char STAT_ANIMATION_SWITCH_WERT = (RXBUF_UCHAR(14));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_ANIMATION_SWITCH_WERT", STAT_ANIMATION_SWITCH_WERT, "");
unsigned long STAT_ANIMATION_DISPLAYS_WERT = (RXBUF_UINT32(15));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_ANIMATION_DISPLAYS_WERT", STAT_ANIMATION_DISPLAYS_WERT, "");
unsigned char STAT_ANAIMATION_TRIGGER_EVENT_WERT = (RXBUF_UCHAR(19));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_ANAIMATION_TRIGGER_EVENT_WERT", STAT_ANAIMATION_TRIGGER_EVENT_WERT, "");
unsigned char STAT_SEMI_PER_EVENT_ID_WERT = (RXBUF_UCHAR(20));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_SEMI_PER_EVENT_ID_WERT", STAT_SEMI_PER_EVENT_ID_WERT, "");
unsigned char STAT_SEMI_PER_EVENT_PRIO_WERT = (RXBUF_UCHAR(21));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_SEMI_PER_EVENT_PRIO_WERT", STAT_SEMI_PER_EVENT_PRIO_WERT, "");
unsigned char STAT_SEMI_PER_EVENT_TRIGGER_WERT = (RXBUF_UCHAR(22));
// - / -
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "ZIN_INTERNAL_STATES", "STAT_SEMI_PER_EVENT_TRIGGER_WERT", STAT_SEMI_PER_EVENT_TRIGGER_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_PROVISIONING_PARAMETER: { // 0xD0CE
if (datalen < 8) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_PROVISIONING_PARAMETER", 8);
break;
}
unsigned short STAT_CAUSE_WERT = (RXBUF_UINT(6));
// Cause value The value indicates the trigger for the provisioning. 0: Required access data is missing in the
// DASAS data 1: A required OTAAS is expired 2: Update request by user via the HMI 3: Application trigger 4: The
// PINGUIN triggered the provisioning 5: ACM triggered provisioning on DPAS Mode 6: Provisioning via Diagnosis /
// Cause Wert Der Wert gibt den Auslöser der Provisionierung an. 0: Required access data is missing in the DASAS
// data 1: A required OTAAS is expired 2: Update request by user via the HMI 3: Application trigger 4: The
// PINGUIN triggered the provisioning 5: ACM triggered provisioning on DPAS Mode 6: Provisioning via Diagnosis
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "PROVISIONING_PARAMETER", "STAT_CAUSE_WERT", STAT_CAUSE_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_MEDIA_STATISTIK: { // 0xD0D1
if (datalen < 36) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_MEDIA_STATISTIK", 36);
break;
}
unsigned long STAT_COUNTER_MEDIA_WERT = (RXBUF_UINT32(0));
// Number of media inserted in the internal CD / DVD drive / Anzahl der eingelegten Medien des internen CD /
// DVD-Laufwerks
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "MEDIA_STATISTIK", "STAT_COUNTER_MEDIA_WERT", STAT_COUNTER_MEDIA_WERT, "");
unsigned long STAT_COUNTER_AUDIO_CDS_WERT = (RXBUF_UINT32(4));
// Number of audio CDs (CDDA) inserted in the internal CD / DVD drive / Anzahl der eingelegten Audio-CDs (CDDA)
// des internen CD / DVD-Laufwerks
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "MEDIA_STATISTIK", "STAT_COUNTER_AUDIO_CDS_WERT", STAT_COUNTER_AUDIO_CDS_WERT, "");
unsigned long STAT_COUNTER_CD_ROM_WERT = (RXBUF_UINT32(8));
// Number of inserted audio CD-ROMs (CD-R / -RW, DVD-R / -RW / + R / + RW ...) of the internal CD / DVD drive /
// Anzahl der eingelegten Audio-CD-ROMs (CD-R/-RW, DVD-R/-RW / + R / + RW ...) des internen CD / DVD-Laufwerks
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "MEDIA_STATISTIK", "STAT_COUNTER_CD_ROM_WERT", STAT_COUNTER_CD_ROM_WERT, "");
unsigned long STAT_COUNTER_DVD_VIDEO_WERT = (RXBUF_UINT32(12));
// Number of video DVDs inserted in the internal CD / DVD drive / Anzahl der eingelegten Video-DVDs des internen
// CD / DVD-Laufwerks
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "MEDIA_STATISTIK", "STAT_COUNTER_DVD_VIDEO_WERT", STAT_COUNTER_DVD_VIDEO_WERT, "");
unsigned long STAT_COUNTER_BLURAY_WERT = (RXBUF_UINT32(16));
// Number of inserted Blu-ray disks of the internal Blu-ray drive / Number of inserted Blu-ray-disks of the
// internal Blu-ray drive
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "MEDIA_STATISTIK", "STAT_COUNTER_BLURAY_WERT", STAT_COUNTER_BLURAY_WERT, "");
unsigned long STAT_RECOGNIZED_AUDIO_CDS_WERT = (RXBUF_UINT32(20));
// Number of audio CDs recognized by the Gracenote DB / Anzahl der Audio-CDs die von der Gracenote DB erkannt
// wurden
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "MEDIA_STATISTIK", "STAT_RECOGNIZED_AUDIO_CDS_WERT", STAT_RECOGNIZED_AUDIO_CDS_WERT, "");
unsigned long STAT_ERROR_DURING_PLAYBACK_WERT = (RXBUF_UINT32(24));
// Number of files that caused playback problems / Anzahl der Dateien, die Probleme bei der Wiedergabe
// verursachten
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "MEDIA_STATISTIK", "STAT_ERROR_DURING_PLAYBACK_WERT", STAT_ERROR_DURING_PLAYBACK_WERT, "");
unsigned short STAT_PLAYBACK_TIME_CD_WERT = (RXBUF_UINT(28));
// playback time for using the CD drive / playback time for using the CD drive
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "MEDIA_STATISTIK", "STAT_PLAYBACK_TIME_CD_WERT", STAT_PLAYBACK_TIME_CD_WERT, "");
unsigned short STAT_PLAYBACK_TIME_DVD_WERT = (RXBUF_UINT(30));
// playback time for using the DVD drive / playback time for using the DVD drive
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "MEDIA_STATISTIK", "STAT_PLAYBACK_TIME_DVD_WERT", STAT_PLAYBACK_TIME_DVD_WERT, "");
unsigned short STAT_PLAYBACK_TIME_BLURAY_WERT = (RXBUF_UINT(32));
// Playback time while using the Blu-ray drive in hours / Playback time while using the Blu-ray drive in hours
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "MEDIA_STATISTIK", "STAT_PLAYBACK_TIME_BLURAY_WERT", STAT_PLAYBACK_TIME_BLURAY_WERT, "");
unsigned short STAT_INSERT_EJECT_COUNT_WERT = (RXBUF_UINT(34));
// counter for insert or eject a medium into a CD / DVD drive / counter for insert or eject a medium into a CD/
// DVD drive
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "MEDIA_STATISTIK", "STAT_INSERT_EJECT_COUNT_WERT", STAT_INSERT_EJECT_COUNT_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_PROVISIONING_DATA: { // 0xD0D3
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_PROVISIONING_DATA", 1);
break;
}
unsigned char STAT_PROVISIONING_0XD0D3 = (RXBUF_UCHAR(0));
// Status of the writing process of the provisioning data. / Status vom Schreibvorgang der Provisionierungsdaten.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "PROVISIONING_DATA", "STAT_PROVISIONING_0XD0D3", STAT_PROVISIONING_0XD0D3, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_LAST_DESTINATIONS_FIRST_DATA_SET: { // 0xD0D6
if (datalen < 176) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_LAST_DESTINATIONS_FIRST_DATA_SET", 176);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_SDARS_RADIO_ID: { // 0xD0DA
if (datalen < 12) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_SDARS_RADIO_ID", 12);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_SDARS_VERSIONS: { // 0xD0DD
if (datalen < 0) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_SDARS_VERSIONS", 0);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_SDARS_SIGNAL_QUALITY_SXM: { // 0xD0DF
if (datalen < 2) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_SDARS_SIGNAL_QUALITY_SXM", 2);
break;
}
unsigned char STAT_SDARS_COMP_RECEPTION_SXM = (RXBUF_UCHAR(0));
// Composite reception quality as integer / Composite reception quality as integer
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SDARS_SIGNAL_QUALITY_SXM", "STAT_SDARS_COMP_RECEPTION_SXM", STAT_SDARS_COMP_RECEPTION_SXM, "\"0-n\"");
unsigned char STAT_SDARS_GLOBAL_STATUS = (RXBUF_UCHAR(1));
// Global status as integer / Global status as integer
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SDARS_SIGNAL_QUALITY_SXM", "STAT_SDARS_GLOBAL_STATUS", STAT_SDARS_GLOBAL_STATUS, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_LAST_DESTINATIONS_SECOND_DATA_SET: { // 0xD0E0
if (datalen < 113) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_LAST_DESTINATIONS_SECOND_DATA_SET", 113);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_DRIVE: { // 0xD0E2
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_DRIVE", 1);
break;
}
unsigned char STAT_MEDIUM_INSERTED = (RXBUF_UCHAR(0));
// Information if and what type of medium is inserted into drive as integer / Information if and what type of
// medium is inserted into drive as integer
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_DRIVE", "STAT_MEDIUM_INSERTED", STAT_MEDIUM_INSERTED, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_BORDERLINE_SETTING: { // 0xD0E5
if (datalen < 3) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_BORDERLINE_SETTING", 3);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_BORDERLINE_CHANGE_MODE: { // 0xD0E8
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_BORDERLINE_CHANGE_MODE", 1);
break;
}
unsigned char STAT_BORDERLINE_CHANGE_MODE = (RXBUF_UCHAR(0));
// returns if a borderline is set to mode<automatic> or<manual> / returns if a borderline is set to mode
// <automatic> or <manual>
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_BORDERLINE_CHANGE_MODE", "STAT_BORDERLINE_CHANGE_MODE", STAT_BORDERLINE_CHANGE_MODE, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_SDARS_PELLET_LESEN: { // 0xD0E9
if (datalen < 100) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_SDARS_PELLET_LESEN", 100);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_PROVISIONING_FORMAT: { // 0xD0EB
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_PROVISIONING_FORMAT", 1);
break;
}
unsigned char STAT_STAT_SIGNATURE = (RXBUF_UCHAR(0));
// is used to understand a signed provisioning file / dient dazu, eine signierte Bereitstellungsdatei zu
// verstehen
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "PROVISIONING_FORMAT", "STAT_STAT_SIGNATURE", STAT_STAT_SIGNATURE, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_WLAN_AUSSTATTUNG: { // 0xD1FA
if (datalen < 4) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_WLAN_AUSSTATTUNG", 4);
break;
}
unsigned char STAT_WLAN_CODED = (RXBUF_UCHAR(0));
// WLAN encoded if at least 1 of the following values STAT_WLAN_AP_SA, STAT_WLAN_WIFI_DIRECT_SA or
// STAT_WLAN_STATION_SA is active / WLAN codiert, wenn mindestens 1 der folgenden Wert STAT_WLAN_AP_SA,
// STAT_WLAN_WIFI_DIRECT_SA oder STAT_WLAN_STATION_SA aktiv ist
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_AUSSTATTUNG", "STAT_WLAN_CODED", STAT_WLAN_CODED, "\"0-n\"");
unsigned char STAT_WLAN_AP_SA = (RXBUF_UCHAR(1));
// WLAN AP / WLAN AP
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_AUSSTATTUNG", "STAT_WLAN_AP_SA", STAT_WLAN_AP_SA, "\"0-n\"");
unsigned char STAT_WLAN_WIFI_DIRECT_SA = (RXBUF_UCHAR(2));
// WLAN Wifi Direct / WLAN Wifi Direct
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_AUSSTATTUNG", "STAT_WLAN_WIFI_DIRECT_SA", STAT_WLAN_WIFI_DIRECT_SA, "\"0-n\"");
unsigned char STAT_WLAN_STATION_SA = (RXBUF_UCHAR(3));
// WLAN station / WLAN Station
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_AUSSTATTUNG", "STAT_WLAN_STATION_SA", STAT_WLAN_STATION_SA, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_WLAN_DEVICELIST_WIFI_DIRECT: { // 0xD1FC
if (datalen < 48) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_WLAN_DEVICELIST_WIFI_DIRECT", 48);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_USB_TEST: { // 0xD207
if (datalen < 21) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_USB_TEST", 21);
break;
}
unsigned char STAT_USB_HUB_KDZ_CODING = (RXBUF_UCHAR(0));
// Status of whether a USB HUB is installed between HU and KDZ; depends on the coding test / Status, ob ein
// USB-HUB zwischen HU und KDZ installiert ist; hängt von der Codierprüfung ab
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "USB_TEST", "STAT_USB_HUB_KDZ_CODING", STAT_USB_HUB_KDZ_CODING, "\"0-n\"");
unsigned char STAT_USB_TEST_HUB = (RXBUF_UCHAR(1));
// Status of the USB interface test / Status des USB-Interface-Tests
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "USB_TEST", "STAT_USB_TEST_HUB", STAT_USB_TEST_HUB, "\"0-n\"");
unsigned short STAT_VENDORID_HUB_WERT = (RXBUF_UINT(2));
// VendorID that is issued by the USB interface / VendorID, dass von der USB Schnittstelle ausgegeben wird
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "USB_TEST", "STAT_VENDORID_HUB_WERT", STAT_VENDORID_HUB_WERT, "\"HEX\"");
unsigned short STAT_PRODUCTID_HUB_WERT = (RXBUF_UINT(4));
// Predefined ProductID that is output for the device from the USB interface / vorgegebene ProductID, die für das
// Gerät von der USB Schnittstelle ausgegeben wird
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "USB_TEST", "STAT_PRODUCTID_HUB_WERT", STAT_PRODUCTID_HUB_WERT, "\"HEX\"");
unsigned char STAT_USB_TEST_KDZ1 = (RXBUF_UCHAR(6));
// Status of the USB interface test / Status des USB-Interface-Tests
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "USB_TEST", "STAT_USB_TEST_KDZ1", STAT_USB_TEST_KDZ1, "\"0-n\"");
unsigned short STAT_VENDORID_KDZ1_WERT = (RXBUF_UINT(7));
// VendorID that is issued by the USB interface / VendorID, die von der USB Schnittstelle ausgegeben wird
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "USB_TEST", "STAT_VENDORID_KDZ1_WERT", STAT_VENDORID_KDZ1_WERT, "\"HEX\"");
unsigned short STAT_PRODUCTID_KDZ1_WERT = (RXBUF_UINT(9));
// Predefined ProductID that is output for the device from the USB interface / vorgegebene ProductID, die für das
// Gerät von der USB Schnittstelle ausgegeben wird
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "USB_TEST", "STAT_PRODUCTID_KDZ1_WERT", STAT_PRODUCTID_KDZ1_WERT, "\"HEX\"");
unsigned char STAT_USB_TEST_KDZ2 = (RXBUF_UCHAR(11));
// Status of the USB interface test / Status des USB-Interface-Tests
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "USB_TEST", "STAT_USB_TEST_KDZ2", STAT_USB_TEST_KDZ2, "\"0-n\"");
unsigned short STAT_VENDORID_KDZ2_WERT = (RXBUF_UINT(12));
// VendorID that is issued by the USB interface / VendorID, die von der USB Schnittstelle ausgegeben wird
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "USB_TEST", "STAT_VENDORID_KDZ2_WERT", STAT_VENDORID_KDZ2_WERT, "\"HEX\"");
unsigned short STAT_PRODUCTID_KDZ2_WERT = (RXBUF_UINT(14));
// Predefined ProductID that is output for the device from the USB interface / vorgegebene ProductID, die für das
// Gerät von der USB Schnittstelle ausgegeben wird
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "USB_TEST", "STAT_PRODUCTID_KDZ2_WERT", STAT_PRODUCTID_KDZ2_WERT, "\"HEX\"");
unsigned char STAT_USB_TEST_SIA = (RXBUF_UCHAR(16));
// Result of the Snap In Adpater test / Ergebnis des Snap In Adpater Tests
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "USB_TEST", "STAT_USB_TEST_SIA", STAT_USB_TEST_SIA, "\"0-n\"");
unsigned short STAT_VENDORID_SIA_WERT = (RXBUF_UINT(17));
// recognized VendorID of the device from the USB interface is output / erkannte VendorID des Gerätes von der USB
// Schnittstelle wird ausgegeben
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "USB_TEST", "STAT_VENDORID_SIA_WERT", STAT_VENDORID_SIA_WERT, "\"HEX\"");
unsigned short STAT_PRODUCTID_SIA_WERT = (RXBUF_UINT(19));
// recognized ProductID of the device from the USB interface is output / erkannte ProductID des Gerätes von der
// USB Schnittstelle wird ausgegeben
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "USB_TEST", "STAT_PRODUCTID_SIA_WERT", STAT_PRODUCTID_SIA_WERT, "\"HEX\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_WLAN_AP_NETWORK: { // 0xD20E
if (datalen < 97) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_WLAN_AP_NETWORK", 97);
break;
}
unsigned char STAT_WLAN_AP_ENCRYPTION = (RXBUF_UCHAR(32));
// Type of encryption from the AP network / Typ der Verschlüsselung vom AP Netzwerk
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_AP_NETWORK", "STAT_WLAN_AP_ENCRYPTION", STAT_WLAN_AP_ENCRYPTION, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_TOUCH_COMMAND_NUMBER: { // 0xD26A
if (datalen < 2) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_TOUCH_COMMAND_NUMBER", 2);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_CID_PHOTOSENSOR: { // 0xD5CB
if (datalen < 2) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_CID_PHOTOSENSOR", 2);
break;
}
short STAT_PHOTOSENSOR_CID_WERT = (RXBUF_SINT(0));
// Analog value phototransistor in the CID / Analogwert Fototransistor im CID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%d%s\n", "NBT", "CID_PHOTOSENSOR", "STAT_PHOTOSENSOR_CID_WERT", STAT_PHOTOSENSOR_CID_WERT, "\"lx\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_CID_TEMP_BACKLIGHT: { // 0xD5CC
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_CID_TEMP_BACKLIGHT", 1);
break;
}
char STAT_TEMP_BACKLIGHT_WERT = (RXBUF_SCHAR(0));
// Temperature backlight / Temperatur Hintergrundbeleuchtung
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_TEMP_BACKLIGHT", "STAT_TEMP_BACKLIGHT_WERT", STAT_TEMP_BACKLIGHT_WERT, "\"°C\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_CID_HELLIGKEIT_SOLLWERT: { // 0xD5CD
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_CID_HELLIGKEIT_SOLLWERT", 1);
break;
}
char STAT_HELLIGKEIT_SOLL_WERT = (RXBUF_SCHAR(0));
// Setpoint brightness value from the dimming module / Soll-Helligkeitswert vom Dimm-Modul
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_HELLIGKEIT_SOLLWERT", "STAT_HELLIGKEIT_SOLL_WERT", STAT_HELLIGKEIT_SOLL_WERT, "\"%\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_CID_HELLIGKEIT_ISTWERT: { // 0xD5CE
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_CID_HELLIGKEIT_ISTWERT", 1);
break;
}
char STAT_HELLIGKEIT_IST_WERT = (RXBUF_SCHAR(0));
// Actual brightness value / Ist-Helligkeitswert
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_HELLIGKEIT_ISTWERT", "STAT_HELLIGKEIT_IST_WERT", STAT_HELLIGKEIT_IST_WERT, "\"%\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_CID_EINGANGSWERTE_LESEN: { // 0xD5CF
if (datalen < 5) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_CID_EINGANGSWERTE_LESEN", 5);
break;
}
unsigned char STAT_DISPLAY_AKTIVIERUNG = (RXBUF_UCHAR(0));
// Display activation [uint8, 0x0..0xF] (signal ENB_DISP from head unit) / Display-Aktivierung [uint8, 0x0..0xF]
// (Signal ENB_DISP von Head Unit)
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_EINGANGSWERTE_LESEN", "STAT_DISPLAY_AKTIVIERUNG", STAT_DISPLAY_AKTIVIERUNG, "\"0-n\"");
char STAT_OFFSET_HELLIGKEIT_WERT = (RXBUF_SCHAR(1));
// Offset brightness [sint8, -127 .. + 127 = -100 .. + 100%, 128 = invalid, error value] (signal OFFS_BRIG_FRT
// from head unit) / Offset Helligkeit [sint8, -127..+127 = -100..+100%, 128 = Ungültig, Fehlerwert] (Signal
// OFFS_BRIG_FRT von Head Unit)
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_EINGANGSWERTE_LESEN", "STAT_OFFSET_HELLIGKEIT_WERT", STAT_OFFSET_HELLIGKEIT_WERT, "");
unsigned char STAT_DIMMRAD_WERT = (RXBUF_UCHAR(2));
// Dimming wheel position [uint8, 0..254 = 0-100%, 255 = FF = invalid, error value] (signal CTR_ILUM_SW) /
// Dimmrad-Stellung [uint8, 0..254 = 0-100%, 255 = FF = Ungültig, Fehlerwert] (Signal CTR_ILUM_SW)
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_EINGANGSWERTE_LESEN", "STAT_DIMMRAD_WERT", STAT_DIMMRAD_WERT, "");
unsigned char STAT_HELLIGKEIT_KOMBI_WERT = (RXBUF_UCHAR(3));
// Brightness value I-combination brightness sensor [uint8, 0..254 = 0-100%, 255 = FF = invalid, error value]
// (signal DSTN_LCD_LUM) / Helligkeitswert I-Kombi-Helligkeits-Sensor [uint8, 0..254 = 0-100%, 255 = FF =
// Ungültig, Fehlerwert] (Signal DSTN_LCD_LUM)
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_EINGANGSWERTE_LESEN", "STAT_HELLIGKEIT_KOMBI_WERT", STAT_HELLIGKEIT_KOMBI_WERT, "");
unsigned char STAT_DAEMPFUNG_LCD_WERT = (RXBUF_UCHAR(4));
// Attenuation of LCD luminance [uint8, 0..240 = fast..slow, 241..254 = erratic, 255 = FF = invalid, error
// value], speed of the brightness control. (Signal DMPNG_LCD_LUM) / Dämpfung LCD Leuchtdichte [uint8, 0..240 =
// schnell..langsam, 241..254 = sprunghaft, 255 = FF = Ungültig, Fehlerwert], Geschwindigkeit der
// Helligkeitsregelung. (Signal DMPNG_LCD_LUM)
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_EINGANGSWERTE_LESEN", "STAT_DAEMPFUNG_LCD_WERT", STAT_DAEMPFUNG_LCD_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_CID_VERBINDUNG: { // 0xD5D0
if (datalen < 1) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_CID_VERBINDUNG", 1);
break;
}
unsigned char STAT_CID_VERBINDUNG = (RXBUF_UCHAR(0));
// Status of the CID connection: 0 = CID connection OK, image is displayed 1 = No activation of image output 2 =
// Display device not ready for display 3 = No communication with display device 4 = Invalid image data 255 =
// Invalid value (default after RESET) / Status der CID-Verbindung: 0 = CID-Verbindung in Ordnung, Bild wird
// angezeigt 1 = Keine Aktivierung der Bildausgabe 2 = Anzeigegerät nicht anzeigebereit 3 = Keine Kommunikation
// mit Anzeigegerät 4 = Bilddaten ungültig 255 = Ungültigkeitswert (Default nach RESET)
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_VERBINDUNG", "STAT_CID_VERBINDUNG", STAT_CID_VERBINDUNG, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_CID_DETAIL_INFORMATIONEN: { // 0xD5D4
if (datalen < 8) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_CID_DETAIL_INFORMATIONEN", 8);
break;
}
unsigned short STAT_CID_LOCATION_WERT = (RXBUF_UINT(0));
// CID location / CID Location
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "CID_DETAIL_INFORMATIONEN", "STAT_CID_LOCATION_WERT", STAT_CID_LOCATION_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_EQDATA_FILENAME: { // 0x4008
if (datalen < 0) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_EQDATA_FILENAME", 0);
break;
}
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_SENSOR_WERTE: { // 0x400A
if (datalen < 8) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_SENSOR_WERTE", 8);
break;
}
unsigned short STAT_AMB_SENSOR_WERT = (RXBUF_UINT(0));
// Ambient brightness of the local CID sensor (Lux). Range: [0x0000¿0x03E8] 0¿1000 Lux 0xFFFF invalid or sensor
// not implemented / Ambient brightness of the local CID sensor (Lux). Range: [0x0000¿0x03E8] 0¿1000 Lux 0xFFFF
// invalid or sensor not implemented
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_SENSOR_WERTE", "STAT_AMB_SENSOR_WERT", STAT_AMB_SENSOR_WERT, "\"lx\"");
char STAT_BL_TEMP_WERT = (RXBUF_SCHAR(2));
// Currently measured temperature of the backlight temperature sensor. Range: [0xD8¿0x78] -40 ° C to 120 ° C 0x80
// -128 ° C Sensor Failure / Currently measured temperature of the backlight temperature sensor. Range:
// [0xD8¿0x78] -40°C bis 120°C 0x80 -128°C Sensor Failure
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SENSOR_WERTE", "STAT_BL_TEMP_WERT", STAT_BL_TEMP_WERT, "\"°C\"");
unsigned short STAT_VCC_VOLTAGE_WERT = (RXBUF_UINT(3));
// Vcc voltage of the CID in steps of 1/10 V Range: [0x0000¿0xFFFE] 0xFFFF invalid / Vcc voltage of the CID in
// steps of 1/10 V Range: [0x0000¿0xFFFE] 0xFFFF invalid
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_SENSOR_WERTE", "STAT_VCC_VOLTAGE_WERT", STAT_VCC_VOLTAGE_WERT, "");
unsigned char STAT_BACKLIGT_DRIVER_WERT = (RXBUF_UCHAR(5));
// Error status output pins of the backlight LED. Range: [0x00¿0x03] 0xFF invalid / Error status output pins of
// the backlight LED. Range: [0x00¿0x03] 0xFF invalid
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_SENSOR_WERTE", "STAT_BACKLIGT_DRIVER_WERT", STAT_BACKLIGT_DRIVER_WERT, "");
unsigned short STAT_INT_STATUS_WERT = (RXBUF_UINT(6));
// Contents of the Indigo register ¿IntStatus' Range: [0x0000¿0xFFFF] / Contents of the Indigo register
// ¿IntStatus' Range: [0x0000¿0xFFFF]
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_SENSOR_WERTE", "STAT_INT_STATUS_WERT", STAT_INT_STATUS_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_CID_SW_VERSION: { // 0x400E
if (datalen < 3) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_CID_SW_VERSION", 3);
break;
}
unsigned char STAT_MAJOR_VERSION_WERT = (RXBUF_UCHAR(0));
// Major SW version of the CID / Major SW version of the CID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_CID_SW_VERSION", "STAT_MAJOR_VERSION_WERT", STAT_MAJOR_VERSION_WERT, "");
unsigned char STAT_MINOR_VERSION_WERT = (RXBUF_UCHAR(1));
// Minor SW version of the CID / Minor SW version of the CID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_CID_SW_VERSION", "STAT_MINOR_VERSION_WERT", STAT_MINOR_VERSION_WERT, "");
unsigned char STAT_PATCH_VERSION_WERT = (RXBUF_UCHAR(2));
// Patch version of the CID / Patch version of the CID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_CID_SW_VERSION", "STAT_PATCH_VERSION_WERT", STAT_PATCH_VERSION_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_INTERNAL_STATES: { // 0x400F
if (datalen < 14) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_INTERNAL_STATES", 14);
break;
}
unsigned char STAT_CID_POWER_MODE = (RXBUF_UCHAR(0));
// Indicates if the CID is enabled by the head unit power mode / Indicates if the CID is enabled by the head unit
// power mode
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_CID_POWER_MODE", STAT_CID_POWER_MODE, "\"0-n\"");
unsigned short STAT_ERROR_FLAGS_WERT = (RXBUF_UINT(1));
// Indicates which internal error are active.Range: [0x0000¿0xFFFF] / Indicates which internal error are
// active.Range: [0x0000¿0xFFFF]
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_ERROR_FLAGS_WERT", STAT_ERROR_FLAGS_WERT, "");
unsigned char STAT_MAIN_STATE = (RXBUF_UCHAR(3));
// Main state of the CID state machine / Main state of the CID state machine
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_MAIN_STATE", STAT_MAIN_STATE, "\"0-n\"");
unsigned char STAT_OPERATION_STATE = (RXBUF_UCHAR(4));
// Operation state of the CID state machine / Operation state of the CID state machine
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_OPERATION_STATE", STAT_OPERATION_STATE, "\"0-n\"");
unsigned char STAT_INIT_STATE = (RXBUF_UCHAR(5));
// Initialization (startup) state of the CID state machine / Initialization (startup) state of the CID state
// machine
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_INIT_STATE", STAT_INIT_STATE, "\"0-n\"");
unsigned char STAT_COM_STATE = (RXBUF_UCHAR(6));
// State of the communication stack / State of the communication stack
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_COM_STATE", STAT_COM_STATE, "\"0-n\"");
unsigned char STAT_SCHEDULE_ID = (RXBUF_UCHAR(7));
// Schedule ID of communication stack. Range: [0x00¿0x04] 0xFF invalid / Schedule ID of communication stack.
// Range: [0x00¿0x04] 0xFF invalid
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_SCHEDULE_ID", STAT_SCHEDULE_ID, "\"0-n\"");
unsigned char STAT_FADE_STATE = (RXBUF_UCHAR(8));
// Fading state of the dimming module / Fading state of the dimming module
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_FADE_STATE", STAT_FADE_STATE, "\"0-n\"");
unsigned char STAT_FLASH_STATE = (RXBUF_UCHAR(9));
// Flash reading state of the GDC module / Flash reading state of the GDC module
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_FLASH_STATE", STAT_FLASH_STATE, "\"0-n\"");
unsigned char STAT_FLASH_DATA_CHANGED = (RXBUF_UCHAR(10));
// Indicates if the flash data of the connected CID has been changed and must be saved by the head unit /
// Indicates if the flash data of the connected CID has been changed and must be saved by the head unit
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_FLASH_DATA_CHANGED", STAT_FLASH_DATA_CHANGED, "\"0-n\"");
unsigned char STAT_DISPLAY_VOLTAGE = (RXBUF_UCHAR(11));
// Activation state of the display power supply / Activation state of the display power supply
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_DISPLAY_VOLTAGE", STAT_DISPLAY_VOLTAGE, "\"0-n\"");
unsigned char STAT_DISPLAY_ENABLE = (RXBUF_UCHAR(12));
// Activation state of the complete CID (also contained in Status Monitor) / Activation state of the complete CID
// (also contained in Status Monitor)
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_DISPLAY_ENABLE", STAT_DISPLAY_ENABLE, "\"0-n\"");
unsigned char STAT_DISPLAY_READY = (RXBUF_UCHAR(13));
// Indicated if CID is ready to display or not (also contained in Status Monitor) / Indicated if CID is ready to
// display or not (also contained in Status Monitor)
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_INTERNAL_STATES", "STAT_DISPLAY_READY", STAT_DISPLAY_READY, "\"0-n\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_CID_CODIERDATEN: { // 0x4010
if (datalen < 32) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_CID_CODIERDATEN", 32);
break;
}
unsigned short STAT_DIM_CURVE_X1_WERT = (RXBUF_UINT(0));
// Curve point X1 of the dimming curve. / Curve point X1 of the dimming curve.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_CURVE_X1_WERT", STAT_DIM_CURVE_X1_WERT, "");
unsigned short STAT_DIM_CURVE_X2_WERT = (RXBUF_UINT(2));
// Curve point X2 of the dimming curve. / Curve point X2 of the dimming curve.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_CURVE_X2_WERT", STAT_DIM_CURVE_X2_WERT, "");
unsigned short STAT_DIM_CURVE_X3_WERT = (RXBUF_UINT(4));
// Curve point X3 of the dimming curve. / Curve point X3 of the dimming curve.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_CURVE_X3_WERT", STAT_DIM_CURVE_X3_WERT, "");
unsigned short STAT_DIM_CURVE_Y1_WERT = (RXBUF_UINT(6));
// Curve point Y1 of the dimming curve. / Curve point Y1 of the dimming curve.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_CURVE_Y1_WERT", STAT_DIM_CURVE_Y1_WERT, "");
unsigned short STAT_DIM_CURVE_Y2_WERT = (RXBUF_UINT(8));
// Curve point Y2 of the dimming curve. / Curve point Y2 of the dimming curve.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_CURVE_Y2_WERT", STAT_DIM_CURVE_Y2_WERT, "");
unsigned short STAT_DIM_CURVE_Y3_WERT = (RXBUF_UINT(10));
// Curve point Y3 of the dimming curve. / Curve point Y3 of the dimming curve.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_CURVE_Y3_WERT", STAT_DIM_CURVE_Y3_WERT, "");
unsigned char STAT_DIM_TOLERANCE_ALPHA_WERT = (RXBUF_UCHAR(12));
// Width of dimming module tolerance band (dynamic part) / Width of dimming module tolerance band (dynamic part)
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_TOLERANCE_ALPHA_WERT", STAT_DIM_TOLERANCE_ALPHA_WERT, "");
unsigned char STAT_DIM_TOLERANCE_ABS_WERT = (RXBUF_UCHAR(13));
// Width of dimming module tolerance band (static part) / Width of dimming module tolerance band (static part)
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_TOLERANCE_ABS_WERT", STAT_DIM_TOLERANCE_ABS_WERT, "");
unsigned char STAT_DIM_DIFF_GAIN_WERT = (RXBUF_UCHAR(14));
// Amplification factor for brightness deviation / Amplification factor for brightness deviation
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_DIFF_GAIN_WERT", STAT_DIM_DIFF_GAIN_WERT, "");
unsigned char STAT_DIM_DIFF_THRESHOLD_WERT = (RXBUF_UCHAR(15));
// Threshold for luminous density deviation / Threshold for luminous density deviation
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_DIFF_THRESHOLD_WERT", STAT_DIM_DIFF_THRESHOLD_WERT, "");
unsigned char STAT_DIM_DIFF_BIAS_WERT = (RXBUF_UCHAR(16));
// Decay constant for dynamic damping / Decay constant for dynamic damping
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_DIFF_BIAS_WERT", STAT_DIM_DIFF_BIAS_WERT, "");
unsigned char STAT_DIM_DIFF_MAX_WERT = (RXBUF_UCHAR(17));
// Maximum time constant for local photo sensor filtering / Maximum time constant for local photo sensor
// filtering
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_DIFF_MAX_WERT", STAT_DIM_DIFF_MAX_WERT, "");
unsigned char STAT_DIM_DIFF_MIN_WERT = (RXBUF_UCHAR(18));
// Minimum time constant for local photo sensor filtering / Minimum time constant for local photo sensor
// filtering
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_DIFF_MIN_WERT", STAT_DIM_DIFF_MIN_WERT, "");
unsigned char STAT_DIM_UP_MIN_WERT = (RXBUF_UCHAR(19));
// Minimum time constant of dark to bright regulation / Minimum time constant of dark to bright regulation
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_UP_MIN_WERT", STAT_DIM_UP_MIN_WERT, "");
unsigned char STAT_DIM_DOWN_MIN_WERT = (RXBUF_UCHAR(20));
// Minimum time constant from bright to dark regulation / Minimum time constant of bright to dark regulation
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_DOWN_MIN_WERT", STAT_DIM_DOWN_MIN_WERT, "");
unsigned char STAT_DIM_MAX_OFFSET_BRIG_WERT = (RXBUF_UCHAR(21));
// Upper border of the brightness offset regulation range / Upper border of the brightness offset regulation
// range
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_MAX_OFFSET_BRIG_WERT", STAT_DIM_MAX_OFFSET_BRIG_WERT, "");
unsigned char STAT_DIM_FADE_TIME_T0_WERT = (RXBUF_UCHAR(22));
// Death time before fading starts (resolution 100ms). Range: [0x00¿0xFF] / Death time before fading starts
// (resolution 100ms). Range: [0x00¿0xFF]
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_FADE_TIME_T0_WERT", STAT_DIM_FADE_TIME_T0_WERT, "");
unsigned char STAT_DIM_FADE_TIME_T1_WERT = (RXBUF_UCHAR(23));
// Time to fade to current luminous density (resolution 100ms). Range: [0x00¿0x3F] / Time to fade to current
// luminous density (resolution 100ms). Range: [0x00¿0x3F]
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_FADE_TIME_T1_WERT", STAT_DIM_FADE_TIME_T1_WERT, "");
unsigned char STAT_DIM_FADE_TIME_T2_WERT = (RXBUF_UCHAR(24));
// Time to fade out (resolution 100ms). Range: [0x00¿0x3F] / Time to fade out (resolution 100ms). Range:
// [0x00¿0x3F]
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_FADE_TIME_T2_WERT", STAT_DIM_FADE_TIME_T2_WERT, "");
unsigned char STAT_DIM_FADE_EXPO_T1_WERT = (RXBUF_UCHAR(25));
// Fade in ramp curve exponent. 0 = linear, 1 = square, ... Range: [0x00¿0x04] / Fade in ramp curve exponent.
// 0=linear, 1=square, ... Range: [0x00¿0x04]
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_FADE_EXPO_T1_WERT", STAT_DIM_FADE_EXPO_T1_WERT, "");
unsigned char STAT_DIM_FADE_EXPO_T2_WERT = (RXBUF_UCHAR(26));
// Fade out ramp curve exponent. 0 = linear, 1 = square, ... Range: [0x00¿0x04] / Fade out ramp curve exponent.
// 0=linear, 1=square, ... Range: [0x00¿0x04]
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_FADE_EXPO_T2_WERT", STAT_DIM_FADE_EXPO_T2_WERT, "");
unsigned short STAT_DIM_FILT_CHANGE_SENSITIVITY_WERT = (RXBUF_UINT(27));
// Adjusts the reaction on strong signal changes depending on the time the input value is stable. 0 = no
// adjustment (old filter algorithm) 1-65535 = number of dim cycles the input value has to be stable Range:
// [0x0000¿0xFFFF] / Adjusts the reaction on strong signal changes depending on the time the input value is
// stable. 0 = no adjustment (old filter algorithm) 1-65535 = number of dim cycles the input value has to be
// stable Range: [0x0000¿0xFFFF]
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_FILT_CHANGE_SENSITIVITY_WERT", STAT_DIM_FILT_CHANGE_SENSITIVITY_WERT, "");
unsigned char STAT_DIM_MIN_OFFSET_BRIG_WERT = (RXBUF_UCHAR(29));
// Lower border of the brightness offset regulation range / Lower border of the brightness offset regulation
// range
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_DIM_MIN_OFFSET_BRIG_WERT", STAT_DIM_MIN_OFFSET_BRIG_WERT, "");
unsigned char STAT_ENDIANESS_ADAPTED_WERT = (RXBUF_UCHAR(30));
// Indicates if the endianess of the coding data block has been adapted or not / Indicates if the endianess of
// the coding data block has been adapted or not
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_ENDIANESS_ADAPTED_WERT", STAT_ENDIANESS_ADAPTED_WERT, "");
unsigned char STAT_PADDING_WERT = (RXBUF_UCHAR(31));
// Padding for further use / Padding for further use
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "CID_CODIERDATEN", "STAT_PADDING_WERT", STAT_PADDING_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_STATUS_CID_DETAIL_INFORMATION_EXTENDED: { // 0x4011
if (datalen < 24) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_STATUS_CID_DETAIL_INFORMATION_EXTENDED", 24);
break;
}
unsigned short STAT_CID_LOCATION_WERT_0X4011 = (RXBUF_UINT(0));
// Value of the location in the car / Value of the location in the car
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_CID_DETAIL_INFORMATION_EXTENDED", "STAT_CID_LOCATION_WERT_0X4011", STAT_CID_LOCATION_WERT_0X4011, "");
unsigned char STAT_SUPPLIER_NR_WERT = (RXBUF_UCHAR(8));
// Value of the supplier part number / Value of the supplier part number
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_CID_DETAIL_INFORMATION_EXTENDED", "STAT_SUPPLIER_NR_WERT", STAT_SUPPLIER_NR_WERT, "");
unsigned long STAT_SERIAL_NUMBER_WERT_0X4011 = (RXBUF_UINT32(9));
// Value of the serial number. / Value of the serial number.
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%lu%s\n", "NBT", "STATUS_CID_DETAIL_INFORMATION_EXTENDED", "STAT_SERIAL_NUMBER_WERT_0X4011", STAT_SERIAL_NUMBER_WERT_0X4011, "");
unsigned char STAT_PRODUCTION_YEAR_WERT = (RXBUF_UCHAR(13));
// Year of production of the CID / Year of production of the CID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_CID_DETAIL_INFORMATION_EXTENDED", "STAT_PRODUCTION_YEAR_WERT", STAT_PRODUCTION_YEAR_WERT, "\"HEX\"");
unsigned char STAT_PRODUCTION_MONTH_WERT = (RXBUF_UCHAR(14));
// Month of production of the CID / Month of production of the CID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_CID_DETAIL_INFORMATION_EXTENDED", "STAT_PRODUCTION_MONTH_WERT", STAT_PRODUCTION_MONTH_WERT, "\"HEX\"");
unsigned char STAT_PRODUCTION_DAY_WERT = (RXBUF_UCHAR(15));
// Day of production of the CID / Day of production of the CID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "STATUS_CID_DETAIL_INFORMATION_EXTENDED", "STAT_PRODUCTION_DAY_WERT", STAT_PRODUCTION_DAY_WERT, "\"HEX\"");
unsigned short STAT_HARDWARE_VERSION_WERT = (RXBUF_UINT(16));
// Hardware version of the CID / Hardware version of the CID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_CID_DETAIL_INFORMATION_EXTENDED", "STAT_HARDWARE_VERSION_WERT", STAT_HARDWARE_VERSION_WERT, "");
unsigned short STAT_DISPLAY_VERSION_WERT = (RXBUF_UINT(18));
// Display version of the CID / Display version of the CID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_CID_DETAIL_INFORMATION_EXTENDED", "STAT_DISPLAY_VERSION_WERT", STAT_DISPLAY_VERSION_WERT, "");
unsigned short STAT_MECHANICAL_VERSION_WERT = (RXBUF_UINT(20));
// Mechanical version of the CID / Mechanical version of the CID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_CID_DETAIL_INFORMATION_EXTENDED", "STAT_MECHANICAL_VERSION_WERT", STAT_MECHANICAL_VERSION_WERT, "");
unsigned short STAT_FLASH_DATA_VERSION_WERT = (RXBUF_UINT(22));
// Flash data version of the CID / Flash data version of the CID
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%u%s\n", "NBT", "STATUS_CID_DETAIL_INFORMATION_EXTENDED", "STAT_FLASH_DATA_VERSION_WERT", STAT_FLASH_DATA_VERSION_WERT, "");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_WLAN_SIGNAL_TEST_AP: { // 0x4044
if (datalen < 64) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_WLAN_SIGNAL_TEST_AP", 64);
break;
}
unsigned char STAT_WLAN_ERRORRATE_AP_1_WERT = (RXBUF_UCHAR(6));
// Error rate (0-100%) of the connected device 1 / Fehlerrate (0-100%) des verbundenen Gerät 1
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_AP_1_WERT", STAT_WLAN_ERRORRATE_AP_1_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_AP_1_WERT = (RXBUF_UCHAR(7)-255.0);
// Power of the connected device 1 / Power des verbundenen Gerät 1
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_DBM_AP_1_WERT", STAT_WLAN_ERRORRATE_DBM_AP_1_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_AP_2_WERT = (RXBUF_UCHAR(14));
// Error rate (0-100%) of the connected device 2 / Fehlerrate (0-100%) des verbundenen Gerät 2
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_AP_2_WERT", STAT_WLAN_ERRORRATE_AP_2_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_AP_2_WERT = (RXBUF_UCHAR(15)-255.0);
// Power of the connected device 2 / Power des verbundenen Gerät 2
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_DBM_AP_2_WERT", STAT_WLAN_ERRORRATE_DBM_AP_2_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_AP_3_WERT = (RXBUF_UCHAR(22));
// Error rate (0-100%) of the connected device 3 / Fehlerrate (0-100%) des verbundenen Gerät 3
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_AP_3_WERT", STAT_WLAN_ERRORRATE_AP_3_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_AP_3_WERT = (RXBUF_UCHAR(23)-255.0);
// Power of the connected device 3 / Power des verbundenen Gerät 3
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_DBM_AP_3_WERT", STAT_WLAN_ERRORRATE_DBM_AP_3_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_AP_4_WERT = (RXBUF_UCHAR(30));
// Error rate (0-100%) of the connected device 4 / Fehlerrate (0-100%) des verbundenen Gerät 4
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_AP_4_WERT", STAT_WLAN_ERRORRATE_AP_4_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_AP_4_WERT = (RXBUF_UCHAR(31)-255.0);
// Power of the connected device 4 / Power des verbundenen Gerät 4
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_DBM_AP_4_WERT", STAT_WLAN_ERRORRATE_DBM_AP_4_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_AP_5_WERT = (RXBUF_UCHAR(38));
// Error rate (0-100%) of the connected device 5 / Fehlerrate (0-100%) des verbundenen Gerät 5
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_AP_5_WERT", STAT_WLAN_ERRORRATE_AP_5_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_AP_5_WERT = (RXBUF_UCHAR(39)-255.0);
// Power of the connected device 5 / Power des verbundenen Gerät 5
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_DBM_AP_5_WERT", STAT_WLAN_ERRORRATE_DBM_AP_5_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_AP_6_WERT = (RXBUF_UCHAR(46));
// Error rate (0-100%) of the connected device 6 / Fehlerrate (0-100%) des verbundenen Gerät 6
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_AP_6_WERT", STAT_WLAN_ERRORRATE_AP_6_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_AP_6_WERT = (RXBUF_UCHAR(47)-255.0);
// Power of the connected device 6 / Power des verbundenen Gerät 6
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_DBM_AP_6_WERT", STAT_WLAN_ERRORRATE_DBM_AP_6_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_AP_7_WERT = (RXBUF_UCHAR(54));
// Error rate (0-100%) of the connected device 7 / Fehlerrate (0-100%) des verbundenen Gerät 7
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_AP_7_WERT", STAT_WLAN_ERRORRATE_AP_7_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_AP_7_WERT = (RXBUF_UCHAR(55)-255.0);
// Power of the connected device 7 / Power des verbundenen Gerät 7
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_DBM_AP_7_WERT", STAT_WLAN_ERRORRATE_DBM_AP_7_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_AP_8_WERT = (RXBUF_UCHAR(62));
// Error rate (0-100%) of the connected device 8 / Fehlerrate (0-100%) des verbundenen Gerät 8
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_AP_8_WERT", STAT_WLAN_ERRORRATE_AP_8_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_AP_8_WERT = (RXBUF_UCHAR(63)-255.0);
// Power of the connected device 8 / Power des verbundenen Gerät 8
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_AP", "STAT_WLAN_ERRORRATE_DBM_AP_8_WERT", STAT_WLAN_ERRORRATE_DBM_AP_8_WERT, "\"dBm\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT_WLAN_SIGNAL_TEST_WIFI_DIRECT: { // 0x4045
if (datalen < 64) {
ESP_LOGW(TAG, "Received %d bytes for %s, expected %d", datalen, "I3_PID_NBT_WLAN_SIGNAL_TEST_WIFI_DIRECT", 64);
break;
}
unsigned char STAT_WLAN_ERRORRATE_DIRECT_1_WERT = (RXBUF_UCHAR(6));
// Error rate (0-100%) of the connected device 1 / Fehlerrate (0-100%) des verbundenen Gerät 1
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DIRECT_1_WERT", STAT_WLAN_ERRORRATE_DIRECT_1_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_DIRECT_1_WERT = (RXBUF_UCHAR(7)-255.0);
// Power of the connected device 1 / Power des verbundenen Gerät 1
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DBM_DIRECT_1_WERT", STAT_WLAN_ERRORRATE_DBM_DIRECT_1_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_DIRECT_2_WERT = (RXBUF_UCHAR(14));
// Error rate (0-100%) of the connected device 2 / Fehlerrate (0-100%) des verbundenen Gerät 2
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DIRECT_2_WERT", STAT_WLAN_ERRORRATE_DIRECT_2_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_DIRECT_2_WERT = (RXBUF_UCHAR(15)-255.0);
// Power of the connected device 2 / Power des verbundenen Gerät 2
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DBM_DIRECT_2_WERT", STAT_WLAN_ERRORRATE_DBM_DIRECT_2_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_DIRECT_3_WERT = (RXBUF_UCHAR(22));
// Error rate (0-100%) of the connected device 3 / Fehlerrate (0-100%) des verbundenen Gerät 3
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DIRECT_3_WERT", STAT_WLAN_ERRORRATE_DIRECT_3_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_DIRECT_3_WERT = (RXBUF_UCHAR(23)-255.0);
// Power of the connected device 3 / Power des verbundenen Gerät 3
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DBM_DIRECT_3_WERT", STAT_WLAN_ERRORRATE_DBM_DIRECT_3_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_DIRECT_4_WERT = (RXBUF_UCHAR(30));
// Error rate (0-100%) of the connected device 4 / Fehlerrate (0-100%) des verbundenen Gerät 4
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DIRECT_4_WERT", STAT_WLAN_ERRORRATE_DIRECT_4_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_DIRECT_4_WERT = (RXBUF_UCHAR(31)-255.0);
// Power of the connected device 4 / Power des verbundenen Gerät 4
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DBM_DIRECT_4_WERT", STAT_WLAN_ERRORRATE_DBM_DIRECT_4_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_DIRECT_5_WERT = (RXBUF_UCHAR(38));
// Error rate (0-100%) of the connected device 5 / Fehlerrate (0-100%) des verbundenen Gerät 5
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DIRECT_5_WERT", STAT_WLAN_ERRORRATE_DIRECT_5_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_DIRECT_5_WERT = (RXBUF_UCHAR(39)-255.0);
// Power of the connected device 5 / Power des verbundenen Gerät 5
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DBM_DIRECT_5_WERT", STAT_WLAN_ERRORRATE_DBM_DIRECT_5_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_DIRECT_6_WERT = (RXBUF_UCHAR(46));
// Error rate (0-100%) of the connected device 6 / Fehlerrate (0-100%) des verbundenen Gerät 6
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DIRECT_6_WERT", STAT_WLAN_ERRORRATE_DIRECT_6_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_DIRECT_6_WERT = (RXBUF_UCHAR(47)-255.0);
// Power of the connected device 6 / Power des verbundenen Gerät 6
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DBM_DIRECT_6_WERT", STAT_WLAN_ERRORRATE_DBM_DIRECT_6_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_DIRECT_7_WERT = (RXBUF_UCHAR(54));
// Error rate (0-100%) of the connected device 7 / Fehlerrate (0-100%) des verbundenen Gerät 7
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DIRECT_7_WERT", STAT_WLAN_ERRORRATE_DIRECT_7_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_DIRECT_7_WERT = (RXBUF_UCHAR(55)-255.0);
// Power of the connected device 7 / Power des verbundenen Gerät 7
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DBM_DIRECT_7_WERT", STAT_WLAN_ERRORRATE_DBM_DIRECT_7_WERT, "\"dBm\"");
unsigned char STAT_WLAN_ERRORRATE_DIRECT_8_WERT = (RXBUF_UCHAR(62));
// Error rate (0-100%) of the connected device 8 / Fehlerrate (0-100%) des verbundenen Gerät 8
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DIRECT_8_WERT", STAT_WLAN_ERRORRATE_DIRECT_8_WERT, "\"%\"");
unsigned char STAT_WLAN_ERRORRATE_DBM_DIRECT_8_WERT = (RXBUF_UCHAR(63)-255.0);
// Power of the connected device 8 / Power des verbundenen Gerät 8
ESP_LOGD(TAG, "From ECU %s, pid %s: got %s=%x%s\n", "NBT", "WLAN_SIGNAL_TEST_WIFI_DIRECT", "STAT_WLAN_ERRORRATE_DBM_DIRECT_8_WERT", STAT_WLAN_ERRORRATE_DBM_DIRECT_8_WERT, "\"dBm\"");
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT__STEUERN_DELETE_PERSISTENCY_JACINTO: { // 0xFDE1
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT__STEUERN_DELETE_PERSISTENCY_INTEL_PLUS_SWT: { // 0xFDE2
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT__STEUERN_DELETE_PERSISTENCY_INTEL: { // 0xFDE3
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT__STEUERN_BACKUP_PERSISTENCY: { // 0xFDE5
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}
case I3_PID_NBT__STEUERN_RESTORE_PERSISTENCY: { // 0xFDE6
// ========== Add your processing here ==========
hexdump(rxbuf, type, pid);
break;
}