Other projects have been taking my free time (replaced all the windows in my house and resided it). But now that it's cold and dark the pile of electronics in the other room have more appeal. But before I talk about that another picture of my E90.
IMG_3556.jpg
I had to fix the trans and cooling system replace the rims and the bumper cover and some misc other repairs. And it took forever to get the title changed from North Carolina-salvage to a Virginia "repaired" title. took so long that I converted my E46 EV back to a gas powered car and my son is driving that. And I'm keeping the E90 for me. Still need to tap the can bus so I grab some data samples. And I'm thinking I need to make an IPOD controller for it. Ah so many new projects.
Ok So forever ago I bought the fault tolerant chips. Being surface mount they were hard for me to deal with. But I made the nightmare mess and left the others sitting on my desk.
Good call. But I was afraid to solder them. I've not been good with surface mounts. But last night I decided to give it a try. Volia. It actually went pretty well. Haven't tried them yet but I think they will work. though this is all for K-can and not much use for engine swaps. But could be useful for my ipod controller :-)
IMG_2251.jpg
Glad to hear you are making progress. post up any new discoveries :-)
Thaniel
With the holidays I needed to clean up my test bench area. After tossing everything in a cardboard box I was unhappy. Was hoping to use some of my time off to try something. Yesterday I decided to take my first vacation day and use it to mount it all my E90 test stuff into an old computer tower. Need to do a little more to it to finish but it's quite portable now.
Tried to attach a pic of it but the forum keeps saying the biggest picture I can upload is like 2 Kb. So no sense in that.
Oh and I ordered an EKP module (fuel pump module). Found it was on the PT bus too. They were cheap and thought it could be interesting.
Thaniel
man...i have dreamed of an e90 ls swap for years. Looks like you maybe the one that could bring it to reality.
About what swap you think? engine from e90 to e46?
With the holidays I spent a little time messing around with this again. Here are a few things i learned.
The OBC wire on the Kombi:
Using various resistances to ground one can simiulate the buttons
1K ohms - Select button (one on on the end of the stalk)
2K ohms - Scroll up
3k ohms - Scroll down
Quite handy to be able to navigate through the menus of the KOMBI when having it by itself.
Also got my EKP. Sampling it by itself it sends ARBID's: 497 & 335. Not much luck decoding what they mean at the moment. But more interested in what DME messages are required to make it run the fuel pump. So far I have found it seems to reply differently if I send DME message 0xAA.
What else. Oh yah. One swapper putting an E90 engine into another car pointed out that there is no dipstick on the engine. After the swap checking the oil. Well is a problem. Can still be done via INPA but a bit of a drag. So started looking into that system. And one reasons I figured out how to use the Kombi selections. I wanted to see what the KOMBI said about oil level in my test setup. Anyway. Found that the oil level is sent to the DME from the oil level sensor via the BSD bus. the oil level sensor also sends the oil temperature (via this bus to the DME).
The BSD bus:
Found that in addition to the oil level/temperature sensor, the Alternator, Battery (IBS) and coolant pump are also on this same network. Something not that clear in the wiring diagrams or documentation. But looking at the diagrams carefully and then hooking the ohm meter to the DME and checking the two BSD outputs it shows it's all one BSD bus. The signal format and baud rate is supposed to be similar to kbus. But the data, parity and stop bits might be different. I connected to it on my test bench and collected some data. Not sure I have the data, parity and stop bits right. Might fool with this some more.
Back to the oil level. I found that the DME stores the last valid oil level and I see this on the test bench with INPA. And on my test bench it looks like the KOMBI is showing this plus "Inactive". As it knows the sensor isn't there for real. From what I've read it sounds like the oil level will be streamed once it gets a valid reading (bunch of requirements for it to get that). One of the can messages is probably reporting the oil level sensor is not functioning because the DME isn't getting a valid BSD signal from it. More to do.
That's funny that the old can code is there. Can it be turned on via Coding or does the DME have to be reprogrammed?
Last edited by Thaniel; 12-30-2016 at 11:50 AM.
Had a bit of a play with this myself as I am undergoing an ls swap in an e90. Started looking at arbids etc to find out which ones come from the DME. I looked at a wiring diagram and noted a serial line running from the DME to the ABS unit. I unplugged the connecter at the DME containing the CAN lines as well as this serial line and the car threw a number of trouble codes. I tried to simulate (primitively) all of the arbids I found from the DME but all of the faults remained. This was just with the key on (not running). May not be a problem for some as I'm not sure what the KOMBI will do but it is a pain for the iDrive as all of the codes come up on the screen.
Thinking that a new approach may be to disconnect the VAN lines from the KOMBI and install an Arduino inline to filter the messages..
Great to hear you hooked it up. But yes. That's what I would expect to happen. With the E46 the Can messages have very closely replicate what the DME sends out. Expect the E90 is the same. Many of the bytes are counters and they have to run at the right rates etc. so the other modules know that they can trust the data. I've been attempting to document many of the counters that I see. but I'm sure there is more trial and error and testing needed.
Were you able to read the codes and see what errors the ABS/DSC reported? If so then perhaps through testing and trying some different things we can get the can data stream close enough to eliminate them. With the E46 we tested from power off to power on and kept tweaking things until we could get the first few messages (maybe 100) the same with our simulated code as the DME. Then the other modules couldn't see the difference and didn't set errors.
It might be possible to put in a Gateway and alter some of the codes. But I'd suggest between the DME and the rest of the car. If the Kombi sees 600 RPM and the other modules see zero. I would expect some issues. I did try this technique with the E46 but didn't quickly get it to work. I didn't spend more than a few hours on it though.
Thaniel
Hi,
I have bought a BMW E90 Instrument Cluster (320d) to experiment on it. My problem is that I cannot make the speedometer and the engine RPM work properly. I have used the CAN-Bus ID's on http://www.loopybunny.co.uk/CarPC/k_can2.html. Does someone managed to do this please?
Appreciate any help that you could provide.
Thanks in advance,
Robert Buttigieg
Does it turn on at all? If not then I'd ask:
Are you sending the Terminal 15 on turn on message that the CAS sends? I've updated my post here. (http://e46canbus.blogspot.com/2015/11/e90-can-bus.html) with some specific messages I've used.
Are you confident your can bus equipment is working?
Thaniel
Hi Thaniel!
I'm amazed by your work! I would like to reproduce what you did, just to learn and teach CAN bus. I already have an E90 instrument cluster. I have microcontrollers with CAN buses and I also have CAN transceivers (although they are running on 3.3V). I also have experience with coding. What I'm still missing, is a pinout description for the instrument cluster. I also need information on this bus. Is it a traditional CAN bus? Could I use it with my 3.3V CAN transceiver (which should work with 5V devices as well).
Could you help me a bit with diagrams or codes? I found many of your forum posts, but I cannot get this information.
Sincerely,
JR
Thanks
Google "BMW WDS" there are websites with wiring diagrams posted. In there are pin outs. It's a bit confusing to find things at first. But you'll get it. It is what I use. If you get stuck search the forums. There is lot of discussion about wiring diagrams.
Post 6 in this thread I think provides this information. https://www.bimmerforums.com/forum/s...5#post29259955
Suppose this would depend on what micro controller and power supply you are using. It doesn't have anything to do with the can bus side. I'd suggest looking at the spec pages for the chips and making sure you supply the right voltage to the chips.
Diagrams? The BMW diagrams are easily found. The chip spec pages generally have diagrams on how to wire and use that transceiver. There really isn't that much more too it. Can bus is refreshingly simple. Decoding the BMW data stream is where the challenge is.
Think you have what you need to start.
Thaniel
First of all sorry for my late reply.
Yes, it does turn on. I have used both the 0x130 CAN message from http://www.festival.loopybunny.co.uk/CarPC/k_can.html and your code snippet from your updated post and the results are the same i.e. several warning lights were switched on including the orange exclamation point above the mileage, ignition problems signal, ABS brake signal, DTC, tyre failure and the service due signal.
My setup consists of a CAN-Bus Shield attached to an Arduino MEGA 2560 and connected to the BMW E90 Instrument Cluster. I think that my CAN-Bus equipment is working properly because when I sent the 0x21A CAN Message to switch on the lights, it worked.
I think that the problem in getting the gauges work might be that I am not sending the messages at the right time intervals.
Robert
Last edited by RobertButtigieg; 02-08-2017 at 10:19 AM.
Hi! I was able to connect successfully to the KCAN bus with a non fault tolerant CAN transceiver. I pulled the CAN_H to the ground and removed the terminating resistors and it looks like that the transceiver tolerated it. I guess it would not go too far, but it is working on my desk. Using a protocol analyzer, I can see the messages with an ACK, so I guess the communication is OK.
Turning to the protocol. If I use the T15 (0x130) and light (0x21A) messages only, then the dashboard come alive. Using the T15 values from link mentioned in the previous post, the dashboard lights up and there is nothing more. Using the T15 values coming from the Thaniel's code snippet, there are various warning signals also. Unfortunately I still cannot move the pointers by any messages.
I will test more messages later.
JR
I wouldn't jump to that conclusion yet :-) Scan the KOMBI for codes and I expect it has can bus errors. BMW does a lot of checking to ensure everything is ok. I would be very surprised if the wrong voltage transceiver and grounding half the K-can bus will goes unnoticed even if traffic is being passed. Based on other BMW can bus experience a typical response from the modules is to ignore all messages that seem suspicious.
Last edited by Thaniel; 03-08-2017 at 05:04 PM.
Thaniel, I was digging through tool32 and found this table that seems to define what many of the various CAN IDs are for, and where they originate. Might be helpful
Code:CAN_ID_DEZ CAN_ID_HEX CAN_ID_NAME DIAG_ID_DEZ DIAG_ID_HEX SG_NAME 0 0x00 unbekannt 0 0x00 Sender unbekannt 949 0x3B5 Status Wasserventil [6] 120 0x78 IHKA 957 0x3BD Status Verbraucherabschaltung [2] 114 0x72 KBM 250 0xFA Steuerung Fensterheber FAT [10] 0 0x0 KGM 251 0xFB Steuerung Fensterheber BFT [5] 0 0x0 KGM 252 0xFC Steuerung Fensterheber FATH [5] 114 0x72 KBM 253 0xFD Steuerung Fensterheber BFTH [5] 114 0x72 KBM 168 0xA8 Drehmoment 1 K-CAN [10] 18 0x12 DME1/DDE1 169 0xA9 Drehmoment 2 (10) 18 0x12 DME1/DDE1 170 0xAA Drehmoment 3 K-CAN [10] 18 0x12 DME1/DDE1 172 0xAC Radmoment Antriebsstrang 2 [5] 18 0x12 DME1/DDE1 173 0xAD Verzögerungsanforderung ACC [9] 28 0x1C LDM 173 0xAD Verzögerungsanforderung ACC [9] 33 0x21 ACC_Modul/ACC+NAVI 179 0xB3 Steuerung Lenkunterstützung [2] 22 0x16 AFS 180 0xB4 Radmoment Antriebsstrang 1 [4] 18 0x12 DME1/DDE1 181 0xB5 Drehmomentanforderung EGS [9] 24 0x18 EGS_MECH+NAVI/EGS_MECH 182 0xB6 Drehmomentanforderung DSC [7] 41 0x29 DXC_RB/DSC_RB/DSC_CT 183 0xB7 Drehmomentanforderung ACC [10] 28 0x1C LDM 183 0xB7 Drehmomentanforderung ACC [10] 33 0x21 ACC_Modul/ACC+NAVI 184 0xB8 Drehmomentanforderung DKG [2] 24 0x18 DKG 185 0xB9 Drehmomentanforderung AFS [3] 22 0x16 AFS 186 0xBA Getriebedaten [20] 24 0x18 SMG_M/SMG/EGS_MECH+NAVI/EGS_MECH/DKG 187 0xBB Sollmomentanforderung [7] 41 0x29 DXC_RB 188 0xBC Status Sollmomentumsetzung [7] 25 0x19 VGSG 189 0xBD Drehmomentanforderung SSG [6] 24 0x18 SMG_M/SMG 190 0xBE Alive Zähler [12] 35 0x23 ARS_Modul 191 0xBF Anforderung Radmoment Antriebsstrang [6] 28 0x1C LDM 192 0xC0 Alive Zentrales Gateway [1] 0 0x0 KGM 193 0xC1 Alive Zähler Telefon [3] 54 0x36 TEL_JAP/TEL_BPI 196 0xC4 Lenkradwinkel K-CAN [13] 41 0x29 DXC_RB/DSC_RB/DSC_CT 200 0xC8 Lenkradwinkel Oben K-CAN [6] 2 0x2 SZL_LWS 206 0xCE Radgeschwindigkeit K-CAN [4] 41 0x29 DXC_RB/DSC_RB/DSC_CT 210 0xD2 Bedienung Sitzverstellung BF [6] 101 0x65 SZM_MIT_KBUS/SZM 213 0xD5 Anforderung Radmoment Bremse [6] 28 0x1C LDM 215 0xD7 Alive Zähler Sicherheit [2] 1 0x1 ACSM 218 0xDA Bedienung Sitzverstellung FA [6] 101 0x65 SZM_MIT_KBUS/SZM 225 0xE1 Radmoment Bremse [3] 41 0x29 DXC_RB/DSC_RB 226 0xE2 Status Zentralverriegelung BFT [11] 0 0x0 KGM 230 0xE6 Status Zentralverriegelung BFTH [11] 114 0x72 KBM 234 0xEA Status Zentralverriegelung FAT [11] 0 0x0 KGM 238 0xEE Status Zentralverriegelung FATH [11] 114 0x72 KBM 242 0xF2 Status Zentralverriegelung HK [13] 114 0x72 KBM 246 0xF6 Steuerung Außenspiegel [9] 0 0x0 KGM 304 0x130 Klemmenstatus [19] 64 0x40 CAS 309 0x135 Steuerung Crashabschaltung EKP [1] 1 0x1 ACSM 351 0x15F Anforderung Winkel FFP [6] 28 0x1C LDM 370 0x172 Quittierung Anforderung Kombi [1] 98 0x62 M_ASK/CCC_GW 400 0x190 Anzeige ACC [13] 28 0x1C LDM 400 0x190 Anzeige ACC [13] 33 0x21 ACC_Modul/ACC+NAVI 402 0x192 Bedienung Getriebewahlschalter [16] 2 0x2 SZL_LWS 403 0x193 Anzeige ACC DCC [4] 28 0x1C LDM 404 0x194 Bedienung Tempomat/ACC [13] 2 0x2 SZL_LWS 408 0x198 Bedienung Getriebewahlschalter 2 [2] 94 0x5E GWS 414 0x19E Status DSC K-CAN [19] 41 0x29 DXC_RB/DSC_RB/DSC_CT 416 0x1A0 Geschwindigkeit K-CAN [14] 41 0x29 DXC_RB/DSC_RB/DSC_CT 418 0x1A2 Getriebedaten 2 [6] 24 0x18 EGS_MECH+NAVI/EGS_MECH/DKG 419 0x1A3 Rohdaten Längsbeschleunigung [3] 24 0x18 SMG_M 422 0x1A6 Wegstrecke [6] 41 0x29 DXC_RB/DSC_RB/DSC_CT 426 0x1AA Effekt ErgoCommander [10] 98 0x62 M_ASK/CCC_GW 428 0x1AC Status ARS-Modul [13] 35 0x23 ARS_Modul 436 0x1B4 Status Kombi [14] 96 0x60 Kombi 437 0x1B5 Wärmestrom/Lastmoment Klima [14] 120 0x78 IHKA 438 0x1B6 Wärmestrom Motor [11] 18 0x12 DME1/DDE1 440 0x1B8 Bedienung ErgoCommander [6] 103 0x67 ZBE_LO/ZBE 450 0x1C2 Abstandsmeldung PDC [5] 100 0x64 PDC 451 0x1C3 Abstandsmeldung 2 PDC [3] 100 0x64 PDC 454 0x1C6 Akustikmeldung PDC [5] 100 0x64 PDC 464 0x1D0 Motordaten [13] 18 0x12 DME1/DDE1 466 0x1D2 Anzeige Getriebedaten [22] 24 0x18 SMG_M/SMG/EGS_MECH+NAVI/EGS_MECH/DKG 470 0x1D6 Bedienung Taster Audio/Telefon [12] 2 0x2 SZL_LWS 472 0x1D8 Bedienung Klima Luftverteilung FA [13] 98 0x62 M_ASK/CCC_GW 473 0x1D9 Bedienung Taster M-Drive [2] 2 0x2 SZL_LWS 474 0x1DA Bedienung Klima Fernwirken [5] 64 0x40 CAS 476 0x1DC Bedienung Schichtung Sitzheizung [1] 98 0x62 M_ASK/CCC_GW 480 0x1E0 Bedienung Klima Luftverteilung BF [7] 98 0x62 M_ASK/CCC_GW 482 0x1E2 Bedienung Klima Front [11] 98 0x62 M_ASK/CCC_GW 487 0x1E7 Bedienung Sitzheizung/Sitzklima FA [7] 101 0x65 SZM_MIT_KBUS/SZM 488 0x1E8 Bedienung Sitzheizung/Sitzklima BF [7] 101 0x65 SZM_MIT_KBUS/SZM 490 0x1EA Bedienung Lenksäulenverstellung [5] 2 0x2 SZL_LWS 491 0x1EB Bedienung Aktivsitz FA [3] 101 0x65 SZM_MIT_KBUS/SZM 492 0x1EC Bedienung Aktivsitz BF [3] 101 0x65 SZM_MIT_KBUS/SZM 493 0x1ED Bedienung Lehnenbreitenverstellung Aktiv FA [2] 101 0x65 SZM_MIT_KBUS/SZM 494 0x1EE Bedienung Lenkstockstaster [6] 2 0x2 SZL_LWS 495 0x1EF Bedienung Lehnenbreitenverstellung Aktiv BF [2] 101 0x65 SZM_MIT_KBUS/SZM 498 0x1F2 Bedienung Sitzmemory BF [3] 101 0x65 SZM_MIT_KBUS/SZM 499 0x1F3 Bedienung Sitzmemory FA [4] 101 0x65 SZM_MIT_KBUS/SZM 500 0x1F4 Fernbedienung Sitzmemory BF [2] 255 0xFF unbekannt 502 0x1F6 Blinken [6] 112 0x70 LM 508 0x1FC Status AFS [4] 22 0x16 AFS 510 0x1FE Crash [12] 1 0x1 ACSM 512 0x200 Regelgeschwindigkeit Stufentempomat [7] 18 0x12 DME1/DDE1 514 0x202 Dimmung [10] 112 0x70 LM 517 0x205 Akustikanforderung Kombi [3] 96 0x60 Kombi 518 0x206 Steuerung Anzeige Shiftlights [1] 18 0x12 DME1 523 0x20B Memoryverstellung [6] 101 0x65 SZM_MIT_KBUS 523 0x20B Memoryverstellung [6] 109 0x6D SM_FA 524 0x20C Steuerung Lenksäule (4) 109 0x6D SM_FA 525 0x20D Position Lenksäule (5) 101 0x65 SZM_MIT_KBUS/SZM 528 0x210 Bedienung HUD [7] 98 0x62 M_ASK/CCC_GW 529 0x211 Status HUD [7] 61 0x3D HUD 530 0x212 Höhenstände Luftfeder [8] 56 0x38 EHC 538 0x21A Lampenzustand [13] 112 0x70 LM 540 0x21C Bedienung Night-Vision [2] 98 0x62 CCC_GW 542 0x21E Status Night-Vision [2] 87 0x57 NVC 550 0x226 Regensensor-Wischergeschwindigkeit [8] 69 0x45 RLS 550 0x226 Regensensor-Wischergeschwindigkeit [8] 112 0x70 LM 552 0x228 Bedienung Sonderfunktion [8] 98 0x62 M_ASK/CCC_GW 552 0x228 Bedienung Sonderfunktion [8] 99 0x63 CCC_MM 554 0x22A Status BFS [10] 110 0x6E SM_BF 558 0x22E Status BFSH [7] 255 0xFF unbekannt 562 0x232 Status FAS [10] 109 0x6D SM_FA 566 0x236 Status FASH [7] 255 0xFF unbekannt 567 0x237 Status Lehnenbreitenverstellung Aktiv BF [3] 90 0x5A aLBV_BF 569 0x239 Status Lehnenbreitenverstellung Aktiv FA [3] 89 0x59 aLBV_FA 570 0x23A Status Funkschlüssel [13] 64 0x40 CAS 571 0x23B Status Klima Front Erweitert [1] 120 0x78 IHKA 572 0x23C Status Bedienung Sitzkomfort FA [1] 109 0x6D SM_FA 575 0x23F Status Bedienung Sitzkomfort BF [1] 110 0x6E SM_BF 578 0x242 Status Klima Front [11] 120 0x78 IHKA 586 0x24A Status PDC [6] 100 0x64 PDC 594 0x252 Wischerstatus [8] 114 0x72 KBM 598 0x256 Challenge Passive Access [10] 64 0x40 CAS 600 0x258 Status Transmission Passive Access [4] 39 0x27 PGS 604 0x25C Bedienung Klima Zusatzprogramme [2] 98 0x62 M_ASK/CCC_GW 619 0x26B Bedienung Rollos BF [2] 255 0xFF unbekannt 620 0x26C Bedienung Rollos FA [2] 0 0x0 KGM 621 0x26D Bedienung Rollos MK [1] 255 0xFF unbekannt 622 0x26E Steuerung FH/SHD Zentrale (Komfort) [10] 64 0x40 CAS 623 0x26F Bedienung Rollos BFH [2] 255 0xFF unbekannt 624 0x270 Bedienung Rollos FAH [2] 255 0xFF unbekannt 632 0x278 Navigationsgraph [3] 98 0x62 CCC_GW 634 0x27A Synchronisation Navigationsgraph [4] 98 0x62 CCC_GW 638 0x27E Status Verdeck Cabrio [7] 36 0x24 CVM_V 644 0x284 Steuerung Fernstart Sicherheitsfahrzeug [8] 64 0x40 CAS 645 0x285 Steuerung Rollos [3] 101 0x65 SZM_MIT_KBUS/SZM 652 0x28C Bedienung Taster Vertikaldynamik [2] 94 0x5E GWS 656 0x290 Steuerung Reaktion Wasserstoff-Fahrzeug [1] 255 0xFF unbekannt 658 0x292 Steuerung Fernlicht-Assistent [2] 95 0x5F FLA 671 0x29F Fernbedienung FondCommander [5] 64 0x40 CAS 672 0x2A0 Steuerung Zentralverriegelung [10] 64 0x40 CAS 674 0x2A2 Bedienung Klima Standfunktionen [5] 98 0x62 M_ASK/CCC_GW 676 0x2A4 Bedienung Personalisierung [8] 98 0x62 M_ASK/CCC_GW 678 0x2A6 Bedienung Wischertaster [12] 2 0x2 SZL_LWS 690 0x2B2 Raddrücke K-CAN [1] 41 0x29 DXC_RB/DSC_RB/DSC_CT 691 0x2B3 Beschleunigungsdaten [2] 41 0x29 DXC_RB/DSC_RB/DSC_CT 692 0x2B4 DWA-Alarm [4] 65 0x41 DWA 694 0x2B6 Steuerung Hupe DWA [3] 65 0x41 DWA 696 0x2B8 Bedienung Bordcomputer [3] 98 0x62 M_ASK/CCC_GW 698 0x2BA Stoppuhr (3) 96 0x60 Kombi 704 0x2C0 LCD-Leuchtdichte [7] 96 0x60 Kombi 714 0x2CA Außentemperatur [9] 96 0x60 Kombi 718 0x2CE Steuerung Monitor [4] 98 0x62 M_ASK/CCC_GW 725 0x2D5 Status Heizung Heckscheibe [1] 120 0x78 IHKA 730 0x2DA Status Heckklappenlift [2] 107 0x6B HKL 738 0x2E2 Status Einstellung Video Night-Vision [1] 87 0x57 NVC 740 0x2E4 Status Anhänger (8) 113 0x71 AHM 742 0x2E6 Status Klima Luftverteilung FA [13] 120 0x78 IHKA 746 0x2EA Status Klima Luftverteilung BF [9] 120 0x78 IHKA 748 0x2EC Status Klima SH/ZH Zusatzwasserpumpe [14] 122 0x7A SH_ZH 750 0x2EE Status Klima Zusatzprogramme [2] 120 0x78 IHKA 752 0x2F0 Status Klima Standfunktionen [12] 120 0x78 IHKA 756 0x2F4 Steuerung Klima SH/ZH Zusatzwasserpumpe [13] 120 0x78 IHKA 758 0x2F6 Steuerung Licht [7] 114 0x72 KBM 759 0x2F7 Einheiten [10] 98 0x62 M_ASK/CCC_GW 759 0x2F7 Einheiten [10] 99 0x63 CCC_MM 760 0x2F8 Uhrzeit/Datum [12] 96 0x60 Kombi 762 0x2FA Sitzbelegung Gurtkontakte (14) 1 0x1 ACSM 764 0x2FC ZV und Klappenzustand [11] 64 0x40 CAS 772 0x304 Status Gang [13] 24 0x18 SMG_M/SMG/EGS_MECH+NAVI/EGS_MECH/DKG 774 0x306 Fahrzeugneigung [2] 112 0x70 LM 776 0x308 Status MSA [2] 18 0x12 DME1/DDE1 784 0x310 Außentemperatur/Relativzeit [10] 96 0x60 Kombi 785 0x311 Nachtankmenge [3] 96 0x60 Kombi 786 0x312 Service Call Teleservice [2] 96 0x60 Kombi 787 0x313 Status Service Call Teleservice [3] 54 0x36 TEL_BPI 787 0x313 Status Service Call Teleservice [3] 98 0x62 M_ASK/CCC_GW 788 0x314 Status Fahrlicht [9] 69 0x45 RLS 788 0x314 Status Fahrlicht [9] 112 0x70 LM 789 0x315 Fahrzeugmodus [7] 101 0x65 SZM_MIT_KBUS/SZM 791 0x317 Bedienung Taster PDC [1] 101 0x65 SZM_MIT_KBUS/SZM 792 0x318 Status Antennen Passive Access [7] 39 0x27 PGS 793 0x319 Bedienung Taster RDC [4] 101 0x65 SZM 796 0x31C Status Reifendruck [6] 32 0x20 RDC 797 0x31D Status Reifenpannenanzeige [6] 41 0x29 DXC_RB/DSC_RB/DSC_CT 802 0x322 Dämpferstrom [2] 57 0x39 EDCK_Modul 806 0x326 Status Dämpferprogramm [9] 57 0x39 EDCK_Modul 808 0x328 Relativzeit [9] 96 0x60 Kombi 810 0x32A Steuerung ALC [2] 112 0x70 LM 813 0x32D Anzeige HDC [3] 41 0x29 DXC_RB 814 0x32E Status Klima Interne Regelinfo [6] 120 0x78 IHKA 816 0x330 Kilometerstand/Reichweite [5] 96 0x60 Kombi 817 0x331 Programmierung Stufentempomat [2] 98 0x62 M_ASK/CCC_GW 818 0x332 Fahreranzeige Drehzahlbereich [4] 18 0x12 DME1/DDE1 821 0x335 Status Elektrische Kraftstoffpumpe [3] 23 0x17 EKP 822 0x336 Anzeige Checkcontrol-Meldung (Rolle) [3] 96 0x60 Kombi 823 0x337 Status Kraftstoffregelung DME [1] 18 0x12 DME1 824 0x338 Steuerung Anzeige Checkcontrol-Meldung [7] 96 0x60 Kombi 825 0x339 Status Anzeige Funktionen Extern [1] 98 0x62 M_ASK/CCC_GW 826 0x33A Status Monitor Front [3] 115 0x73 CID_C_H/CID_C 840 0x348 Übereinstimmung Navigationsgraph [4] 98 0x62 CCC_GW 842 0x34A Navigation GPS 1 [5] 98 0x62 CCC_GW 843 0x34B Status Sitzlehnenverriegelung FA (3) 101 0x65 SZM_MIT_KBUS 843 0x34B Status Sitzlehnenverriegelung FA (3) 109 0x6D SM_FA 844 0x34C Navigation GPS 2 [5] 98 0x62 CCC_GW 845 0x34D Status Sitzlehnenverriegelung BF [2] 101 0x65 SZM_MIT_KBUS 845 0x34D Status Sitzlehnenverriegelung BF [2] 110 0x6E SM_BF 846 0x34E Navigation System Information [6] 98 0x62 CCC_GW 858 0x35A Termin Condition Based Service [2] 98 0x62 M_ASK/CCC_GW 860 0x35C Status Bordcomputer [5] 96 0x60 Kombi 862 0x35E Daten Bordcomputer (Reisedaten) [5] 96 0x60 Kombi 864 0x360 Daten Bordcomputer (Fahrtbeginn) [2] 96 0x60 Kombi 866 0x362 Daten Bordcomputer (Durchschnittswerte) [4] 96 0x60 Kombi 868 0x364 Daten Bordcomputer (Ankunft) [2] 96 0x60 Kombi 870 0x366 Anzeige Kombi/Externe Anzeige [3] 96 0x60 Kombi 871 0x367 Steuerung Anzeige Bedarfsorientierter Service [6] 96 0x60 Kombi 884 0x374 Radtoleranzabgleich [7] 41 0x29 DXC_RB/DSC_RB/DSC_CT 886 0x376 Status Verschleiß Lamelle [3] 25 0x19 VGSG 896 0x380 Fahrgestellnummer [5] 64 0x40 CAS 897 0x381 Elektronischer Motorölmessstab [10] 18 0x12 DME1/DDE1 898 0x382 Elektronischer Motorölmessstab M [1] 18 0x12 DME1/DDE1 904 0x388 Fahrzeugtyp [13] 64 0x40 CAS 910 0x38E Startdrehzahl [1] 18 0x12 DME1/DDE1 916 0x394 RDA Anfrage/Datenablage [5] 96 0x60 Kombi 917 0x395 Codierung Powermanagement [2] 64 0x40 CAS 920 0x398 Bedienung Fahrwerk [14] 98 0x62 M_ASK/CCC_GW 921 0x399 Status M-Drive [2] 18 0x12 DME1 924 0x39C EBA Datenanforderung [5] 255 0xFF unbekannt 926 0x39E Bedienung Uhrzeit/Datum [1] 98 0x62 M_ASK/CCC_GW 928 0x3A0 Fahrzeugzustand [4] 0 0x0 KGM 931 0x3A3 Anforderung Remote Services [2] 98 0x62 M_ASK/CCC_GW 940 0x3AC Nachlaufzeit Klemme 30 fehlergesteuert [2] 0 0x0 KGM 944 0x3B0 Status Gang Rückwärts [2] 112 0x70 LM 945 0x3B1 Getriebedaten 3 [2] 24 0x18 EGS_MECH/DKG 947 0x3B3 Powermanagement Verbrauchersteuerung [8] 18 0x12 DME1/DDE1 948 0x3B4 Powermanagement Batteriespannung [11] 18 0x12 DME1/DDE1 950 0x3B6 Position Fensterheber FAT [6] 0 0x0 KGM 951 0x3B7 Position Fensterheber FATH [5] 114 0x72 KBM 952 0x3B8 Position Fensterheber BFT [6] 0 0x0 KGM 953 0x3B9 Position Fensterheber BFTH [5] 114 0x72 KBM 954 0x3BA Position SHD [10] 68 0x44 SHD/MDS 958 0x3BE Nachlaufzeit Stromversorgung [5] 64 0x40 CAS 959 0x3BF Position Fensterheber Heckscheibe [1] 36 0x24 CVM_V 960 0x3C0 Konfiguration FAS [3] 109 0x6D SM_FA 961 0x3C1 Konfiguration BFS [3] 110 0x6E SM_BF 970 0x3CA Konfiguration M-Drive [2] 98 0x62 M_ASK/CCC_GW 979 0x3D3 Status Solarsensor [1] 112 0x70 LM 980 0x3D4 Konfiguration Zentralverriegelung CKM [3] 98 0x62 M_ASK/CCC_GW 981 0x3D5 Status Zentralverriegelung CKM [4] 64 0x40 CAS 982 0x3D6 Konfiguration DWA CKM [1] 98 0x62 M_ASK/CCC_GW 983 0x3D7 Status DWA CKM [2] 65 0x41 DWA 984 0x3D8 Konfiguration RLS CKM [3] 98 0x62 M_ASK/CCC_GW 985 0x3D9 Status RLS CKM [4] 69 0x45 RLS 985 0x3D9 Status RLS CKM [4] 112 0x70 LM 986 0x3DA Konfiguration Memorypositionen CKM [1] 98 0x62 M_ASK/CCC_GW 987 0x3DB Status Memorypositionen CKM [3] 101 0x65 SZM_MIT_KBUS 987 0x3DB Status Memorypositionen CKM [3] 109 0x6D SM_FA 988 0x3DC Konfiguration Licht CKM [3] 98 0x62 M_ASK/CCC_GW 989 0x3DD Status Licht CKM [4] 112 0x70 LM 990 0x3DE Konfiguration Klima CKM [5] 98 0x62 M_ASK/CCC_GW 991 0x3DF Status Klima CKM [6] 120 0x78 IHKA 992 0x3E0 Konfiguration ALC CKM [1] 98 0x62 M_ASK/CCC_GW 993 0x3E1 Status ALC CKM [1] 112 0x70 LM 994 0x3E2 Konfiguration Heckklappe CKM [1] 98 0x62 M_ASK/CCC_GW 995 0x3E3 Status Heckklappe CKM [1] 107 0x6B HKL 1001 0x3E9 Marker 1 [1] 255 0xFF unbekannt 1002 0x3EA Marker 2 [3] 126 0x7E Diagnosetool_K_CAN_System 1003 0x3EB Marker 3 [1] 125 0x7D Diagnosetool_PT_CAN 1006 0x3EE Anforderung Fehlermeldung [1] 255 0xFF unbekannt 1007 0x3EF OBD Daten Motor (3) 18 0x12 DME1/DDE1 1008 0x3F0 Konfiguration Licht Erweitert CKM [1] 98 0x62 M_ASK/CCC_GW 1009 0x3F1 Status Licht Erweitert CKM [1] 112 0x70 LM 1012 0x3F4 Konfiguration Laderaumabdeckung CKM [1] 98 0x62 M_ASK/CCC_GW 1013 0x3F5 Status Laderaumabdeckung CKM [1] 114 0x72 KBM 1022 0x3FE Anforderung CAN_Testtool SI-Bus [5] 126 0x7E Diagnosetool_K_CAN_System 1280 0x500 Datentransfer [1] 112 0x70 LM 1280 0x500 Datentransfer [1] 120 0x78 IHKA 1984 0x7C0 CAS Programmierung Bandende 1 (3) 64 0x40 CAS 1985 0x7C1 CAS Programmierung Bandende 2 (3) 255 0xFF TOOL_BANDENDE_CAS 1986 0x7C2 CAS Applikationsnachricht 1 (3) 64 0x40 CAS 1987 0x7C3 CAS Applikationsnachricht 2 (3) 255 0xFF TOOL_BANDENDE_CAS 1152 0x480 Netzwerkmanagement 0 0x0 KGM 1153 0x481 Netzwerkmanagement 1 0x1 ACSM 1154 0x482 Netzwerkmanagement 2 0x2 SZL_LWS 1170 0x492 Netzwerkmanagement 18 0x12 DDE1/DME1 1174 0x496 Netzwerkmanagement 22 0x16 AFS 1175 0x497 Netzwerkmanagement 23 0x17 EKP 1176 0x498 Netzwerkmanagement 24 0x18 DKG/EGS_MECH/EGS_MECH+NAVI/SMG/SMG_M 1177 0x499 Netzwerkmanagement 25 0x19 VGSG 1179 0x49B Netzwerkmanagement 27 0x1B VVT1 1180 0x49C Netzwerkmanagement 28 0x1C LDM 1182 0x49E Netzwerkmanagement 30 0x1E VVT2 1184 0x4A0 Netzwerkmanagement 32 0x20 RDC 1185 0x4A1 Netzwerkmanagement 33 0x21 ACC+NAVI/ACC_Modul 1187 0x4A3 Netzwerkmanagement 35 0x23 ARS_Modul 1188 0x4A4 Netzwerkmanagement 36 0x24 CVM_V 1189 0x4A5 Netzwerkmanagement 37 0x25 RSC_VDA/SC_CT/SC_VDA 1191 0x4A7 Netzwerkmanagement 39 0x27 PGS 1193 0x4A9 Netzwerkmanagement 41 0x29 DSC_CT/DSC_RB/DXC_RB 1206 0x4B6 Netzwerkmanagement 54 0x36 TEL_BPI/TEL_JAP/TEL_MULF 1207 0x4B7 Netzwerkmanagement 55 0x37 AMP_TOP 1208 0x4B8 Netzwerkmanagement 56 0x38 EHC 1209 0x4B9 Netzwerkmanagement 57 0x39 EDCK_Modul 1210 0x4BA Netzwerkmanagement 58 0x3A KHM 1211 0x4BB Netzwerkmanagement 59 0x3B JNAV 1212 0x4BC Netzwerkmanagement 60 0x3C CDC 1213 0x4BD Netzwerkmanagement 61 0x3D HUD 1216 0x4C0 Netzwerkmanagement 64 0x40 CAS 1217 0x4C1 Netzwerkmanagement 65 0x41 DWA 1220 0x4C4 Netzwerkmanagement 68 0x44 MDS/SHD 1221 0x4C5 Netzwerkmanagement 69 0x45 RLS/RLS 1227 0x4CB Netzwerkmanagement 75 0x4B VM 1232 0x4D0 Netzwerkmanagement 80 0x50 Notstrom-Sirene 1235 0x4D3 Netzwerkmanagement 83 0x53 IBOC 1236 0x4D4 Netzwerkmanagement 84 0x54 SDARS 1237 0x4D5 Netzwerkmanagement 85 0x55 ISpeechBox 1239 0x4D7 Netzwerkmanagement 87 0x57 NVC 1241 0x4D9 Netzwerkmanagement 89 0x59 aLBV_FA 1242 0x4DA Netzwerkmanagement 90 0x5A aLBV_BF 1243 0x4DB Netzwerkmanagement 91 0x5B DAB 1244 0x4DC Netzwerkmanagement 92 0x5C Behoerde 1245 0x4DD Netzwerkmanagement 93 0x5D TLC 1246 0x4DE Netzwerkmanagement 94 0x5E GWS 1247 0x4DF Netzwerkmanagement 95 0x5F FLA 1248 0x4E0 Netzwerkmanagement 96 0x60 Kombi 1250 0x4E2 Netzwerkmanagement 98 0x62 CCC_GW/M_ASK 1251 0x4E3 Netzwerkmanagement 99 0x63 CCC_MM 1252 0x4E4 Netzwerkmanagement 100 0x64 PDC 1253 0x4E5 Netzwerkmanagement 101 0x65 SZM/SZM_MIT_KBUS 1255 0x4E7 Netzwerkmanagement 103 0x67 ZBE/ZBE_LO 1259 0x4EB Netzwerkmanagement 107 0x6B HKL 1261 0x4ED Netzwerkmanagement 109 0x6D SM_FA/SM_FA_KBUS 1262 0x4EE Netzwerkmanagement 110 0x6E SM_BF/SM_BF_KBUS 1264 0x4F0 Netzwerkmanagement 112 0x70 LM/LM_ALC 1265 0x4F1 Netzwerkmanagement 113 0x71 AHM 1266 0x4F2 Netzwerkmanagement 114 0x72 KBM 1267 0x4F3 Netzwerkmanagement 115 0x73 CID_C/CID_C_H 1272 0x4F8 Netzwerkmanagement 120 0x78 IHKA 1274 0x4FA Netzwerkmanagement 122 0x7A SH_ZH 1277 0x4FD Netzwerkmanagement 125 0x7D Diagnosetool_PT_CAN 1278 0x4FE Netzwerkmanagement 126 0x7E Diagnosetool_K_CAN_System 1289 0x509 Netzwerkmanagement 137 0x89 Xenon_Scheinwerfer_Links_ALC 1290 0x50A Netzwerkmanagement 138 0x8A Xenon_Scheinwerfer_Rechts_ALC 1291 0x50B Netzwerkmanagement 139 0x8B CNV 1393 0x571 Netzwerkmanagement 241 0xF1 Diagnosedose 1408 0x580 Dienste 0 0x0 KGM 1409 0x581 Dienste 1 0x1 ACSM 1410 0x582 Dienste 2 0x2 SZL_LWS 1426 0x592 Dienste 18 0x12 DDE1/DME1 1430 0x596 Dienste 22 0x16 AFS 1431 0x597 Dienste 23 0x17 EKP 1432 0x598 Dienste 24 0x18 DKG/EGS_MECH/EGS_MECH+NAVI/SMG/SMG_M 1433 0x599 Dienste 25 0x19 VGSG 1435 0x59B Dienste 27 0x1B VVT1 1436 0x59C Dienste 28 0x1C LDM 1438 0x59E Dienste 30 0x1E VVT2 1440 0x5A0 Dienste 32 0x20 RDC 1441 0x5A1 Dienste 33 0x21 ACC+NAVI/ACC_Modul 1443 0x5A3 Dienste 35 0x23 ARS_Modul 1444 0x5A4 Dienste 36 0x24 CVM_V 1445 0x5A5 Dienste 37 0x25 RSC_VDA/SC_CT/SC_VDA 1447 0x5A7 Dienste 39 0x27 PGS 1449 0x5A9 Dienste 41 0x29 DSC_CT/DSC_RB/DXC_RB 1462 0x5B6 Dienste 54 0x36 TEL_BPI/TEL_JAP/TEL_MULF 1463 0x5B7 Dienste 55 0x37 AMP_TOP 1464 0x5B8 Dienste 56 0x38 EHC 1465 0x5B9 Dienste 57 0x39 EDCK_Modul 1466 0x5BA Dienste 58 0x3A KHM 1467 0x5BB Dienste 59 0x3B JNAV 1468 0x5BC Dienste 60 0x3C CDC 1469 0x5BD Dienste 61 0x3D HUD 1472 0x5C0 Dienste 64 0x40 CAS 1473 0x5C1 Dienste 65 0x41 DWA 1476 0x5C4 Dienste 68 0x44 MDS/SHD 1477 0x5C5 Dienste 69 0x45 RLS/RLS 1483 0x5CB Dienste 75 0x4B VM 1488 0x5D0 Dienste 80 0x50 Notstrom-Sirene 1491 0x5D3 Dienste 83 0x53 IBOC 1492 0x5D4 Dienste 84 0x54 SDARS 1493 0x5D5 Dienste 85 0x55 ISpeechBox 1495 0x5D7 Dienste 87 0x57 NVC 1497 0x5D9 Dienste 89 0x59 aLBV_FA 1498 0x5DA Dienste 90 0x5A aLBV_BF 1499 0x5DB Dienste 91 0x5B DAB 1500 0x5DC Dienste 92 0x5C Behoerde 1501 0x5DD Dienste 93 0x5D TLC 1502 0x5DE Dienste 94 0x5E GWS 1503 0x5DF Dienste 95 0x5F FLA 1504 0x5E0 Dienste 96 0x60 Kombi 1506 0x5E2 Dienste 98 0x62 CCC_GW/M_ASK 1507 0x5E3 Dienste 99 0x63 CCC_MM 1508 0x5E4 Dienste 100 0x64 PDC 1509 0x5E5 Dienste 101 0x65 SZM/SZM_MIT_KBUS 1511 0x5E7 Dienste 103 0x67 ZBE/ZBE_LO 1515 0x5EB Dienste 107 0x6B HKL 1517 0x5ED Dienste 109 0x6D SM_FA/SM_FA_KBUS 1518 0x5EE Dienste 110 0x6E SM_BF/SM_BF_KBUS 1520 0x5F0 Dienste 112 0x70 LM/LM_ALC 1521 0x5F1 Dienste 113 0x71 AHM 1522 0x5F2 Dienste 114 0x72 KBM 1523 0x5F3 Dienste 115 0x73 CID_C/CID_C_H 1528 0x5F8 Dienste 120 0x78 IHKA 1530 0x5FA Dienste 122 0x7A SH_ZH 1533 0x5FD Dienste 125 0x7D Diagnosetool_PT_CAN 1534 0x5FE Dienste 126 0x7E Diagnosetool_K_CAN_System 1545 0x609 Dienste 137 0x89 Xenon_Scheinwerfer_Links_ALC 1546 0x60A Dienste 138 0x8A Xenon_Scheinwerfer_Rechts_ALC 1547 0x60B Dienste 139 0x8B CNV 1649 0x671 Dienste 241 0xF1 Diagnosedose 4095 0xFFF unbekannt 255 0xFF Sender unbekannt
I should also note that the table is from an E60 file. The identifications should still be correct, but some of the source modules may not match your data since the JBE module in the E90s combines the functionality of a few different modules in the E60.
I can't find a similar table in any of the JBE prg files.
Good to know. Bet a lot of it is similar.
Already see some Can ID's the list I want to capture and try.....
The communication should be OK, I can't see any errors using a protocol analyzer, all messages are ACKed. The fault tolerant side using a single line (the other is not connected), while the ground pulled CAN line shifts the signal to the 0-2.3V values, which should be anough for the fault tolerance. The only problem is the lack of the terminal resistors, however it looks like, that this small wire survives without them. I already have the fault tolerant transceivers, so I will change to that soon.
I think I made some small progress again. I can move the fuel indicator. I didn't find out what are the right values, but it is moving. Also, if you give wrong values, it will stop and display empty fuel. I was also able to set speed. I think I understand the counter in the messages. The problem again is that the pointer moves and then returns to zero. It should be again some kind of error detection, probably a lack of other values. If I set the pointer before ignition, it does not move at all. I made a short movie on it and I can share my code (using mbed) in PM as well.
The KOMBI doesn't just blindly put the values up on the gauge. If they don't make sense it believes they are in error and ignores them. I read this example in an BMW E46 document and expect they continued this for the E9x. Example the Fuel cannot go down rapidly. The engine can only use the fuel so fast. It can only go UP fast (filling the tank). If the fuel level drops quickly in the E46 it assumes a bad fuel sender and then switches to calculating the remaining fuel based on fuel consumption measurements instead of the fuel level measurement until the car is shut off again. There are computers in there. It's not a free for all :-)
Yah I fooled with it a bit the other day and There must be a bit more to that speed message than what posted. I would recommend getting some samples of that message and trying to find the details. I'm more interested in simulating the DME than the whole car or I'd look at it :-) but it is interesting. If you find the key to that message feel free to share here.
Hi,
I have managed to send the 0x130 (every 100ms) and 0x26E (every 200ms) messages to wake up the KOMBI. However, it is doing some kind of reset since it is continuously beeping and flashing error lights. In fact, when I send the RPM message of 1500RPM, the needle goes from 0 to 1500, back to 0 and again to 1500 repetitively.
I am trying to make the KOMBI pretend that it is in a real car with its engine running i.e. displaying the time and odometer. Maybe the KOMBI is waiting for some specific messages other than the 0x130 and 0x26E.
Does anyone have this problem, please? If yes, how did you managed to solve it, please?
Thanks,
Robert
In the data TerraPhantm supplied it suggested that ARBID 381 might be the one to try for oil level "0x381 Elektronischer Motorölmessstab"
I finally gave it a try. I hunted through some logs and found that it is sent VERY seldom. Every few min. So many logs didn't capture it at all. Anyway it does control the oil level. Seems that the bar and the message are controlled separately. Or in other words I could have the bar at min but make the words Say OK. or +1Qt or >Max. And I could make the bar go to the middle. Haven't yet found how to make it go to full. Though I tried several combinations and none worked.
0x381 is a 2 byte message
B0 -> 19= Bar at min, 35 is bar at half
B1 -> F0 = "OK", F1 = ">MAX", F2 = "+1qt"
I took pictures but it looks just like it does in the car.
Oh. While I had it on I hooked up INPA and read the error messages in the KOMBI. There were tons complaining of missing can messages from all kinds of modules and some from my being mean to it while testing (Think all those cleared).
Thaniel
Bookmarks