E83 X3 with the N52 seems to be wired similarly to the E46, and the E83 compressor seems to be shared with the E92 328 - so I imagine replicating that sort of scheme would work. E85 has a different IHKA module and doesn't have a relay, but otherwise seems to be wired similarly (granted it could be PWM). Though my gut says it just uses the PWM input at 100% duty cycle.
E46: https://www.newtis.info/tisv2/a/en/e...sensor/dOFPigR
E83: https://www.newtis.info/tisv2/a/en/e...ontrol/n64M9n1
E85: https://www.newtis.info/tisv2/a/en/e...ontrol/qAJ9b5n
Looking at both the E83 and E85, it seems like pin 21 on the DME is used to activate the compressor, while on the E9x it's used for the start/stop function. So flashing the E83/E85 software probably would change the behavior of the pin.
Probably not worth changing, but I think it's worth noting for future swaps.
Last edited by TerraPhantm; 08-15-2017 at 11:08 AM.
Did some more playing. Felt like I learned a lot. But when I go to write it up it seems very simplistic. I feel like others playing with KOMBIs on the bench must know this already and just haven't mentioned it. If this seems simplistic then sorry. I'm just slow sometimes.
Managed to get my KOMBI to run consistently with no error lights at all on and no errors in the check control. Got the RDC and SOS turned off. I only have a few errors in the KOMBI when I check using INPA. And they aren't ones that light error lights. How I got the RDC light and SOS light out was to code out those functions in the KOMBI. Sounds easy but for me I couldn't get NCS to connect to the KOMBI. Or any of my other modules. What I finally did was to manually enter a VO number. I used the one from my running car. Then I could select the KOMBI and code like normal. I disabled everything to do with the RDC and BMW assist. There is also a section for checking for alive messages (On of the things I disabled for RDC). I thought not having to send those would be nice. While there I set those to Disabled for the modules I don't have. With that done the cluster is quite happy. I should be able to cut back on some of the CAN messages I'm sending.
Using some software (forget which at the moment) I was able to find a command the JBE to activate the A/C compressor a short period of time (previously was commanding the DME to turn on the A/C). It looks like 12V is the peak voltage. Guessing 12V solid is full on and the PWM must reduce the load as needed. I could be wrong here but I got a 12v spike on the milti meter when commanding A/C on via the JBE.
Most definitely. I've read of other N52 E46 swaps out there. Perhaps some info can help them.
Made a little video of it working
https://youtu.be/MULT_hXlNC8
Hi,
I've read through this thread, and while the VAST majority of this is over my head, I know enough to be impressed with the work. I have what I hope is a simple question:
I'm adding an AIM Dash to a 128i car that is a race car build. The AIM can read and write CAN, and I need to be able to pull oil level from the sensor in the pan. Do you know the address to query to get that data?
Thank you!
https://www.reddit.com/r/CANBus/comm...meter_reading/ I am using the above website as reference and sending commands to engine ECU. I have a log from BMW engine ECU (below):
6F1 12 04 18 02 FF FF
6F1 12 04 18 02 FF FF
612 F1 10 17 58 07 4D FF 21 <DATA ERROR
6F1 12 30 00 00
612 F1 21 49 93 21 4A B8 21 <DATA ERROR
612 F1 22 4B F8 21 49 A3 21 <DATA ERROR
612 F1 23 4C B4 21 4C 18 21 <DATA ERROR
The log shows that 6F1 is the address for query to the engine ECU and 612 is the address for engine ECU response
Below are the Commands I send using PuTTY (similar to HyperTerminal):
AT Z (reset)
Reply: OK
AT SP 6 (set protocol 6, i.e. CAN 11/500)
Reply: OK
AT SH 6F1 (set header to 6F1)
Reply: OK
AT CRA 612 (receiver address set to 612 for engine)
Reply: OK
12 04 18 02 FF FF
Reply: NO DATA
12 18 02 FF FF
Reply: NO DATA
18 02 FF FF
Reply: NO DATA
I have tried all possible combinations but can't get the fault code. Can someone tell me the exact command I should hit to get BMW engine DTC?
I just want to read and clear DTCs
Sounds like you are trying to issue INPA commands through an OBDII reader. While it may or may not work it's like using a wrench as a hammer. Anyway. I hooked up INPA to my test rig and captured the can message it sends.
For reading the error codes Ignore the "CAN2" the rest is
ARBID;LEN B0 B1 B2 B3 B4 B5 B6 B7
CAN2 6F1;8; 12 2 1A 80 FF FF 0 0
CAN2 6F1;8; 12 30 0 2 0 0 0 0
CAN2 6F1;8; 12 4 18 2 FF FF 0 0
CAN2 6F1;8; 12 30 0 2 0 0 0 0
CAN2 6F1;8; 12 4 18 2 FF FF 0 0
CAN2 6F1;8; 12 30 0 2 0 0 0 0
CAN2 6F1;8; 12 4 18 2 FF FF 0 0
CAN2 6F1;8; 12 30 0 2 0 0 0 0
CAN2 6F1;8; 12 4 18 2 FF FF 0 0
CAN2 6F1;8; 12 30 0 2 0 0 0 0
CAN2 6F1;8; 12 4 18 2 FF FF 0 0
CAN2 6F1;8; 12 30 0 2 0 0 0 0
CAN2 6F1;8; 12 4 18 2 FF FF 0 0
CAN2 6F1;8; 12 30 0 2 0 0 0 0
Repeats indefinitely
To clear I think it is this command
6F1;8; 12 3 14 FF FF FF 0 0
Depending on what you are doing you may want to use OBDII commands (See OBDII wiki). Since that is what the ELM is designed to do. You might also have more luck posting in the diagnostic tools functions. As nothing in your request is E90 CAN BUS specific.
Good luck
Thaniel
Actually had a bit of a breakthrough this week. I injured my back so spent most of my holiday stuck sitting in a chair at home. So got out my test bench and started playing. Finally figured out how to turn on and off the warning lights. I've been hunting this quite a while.
I just cant wait for more info. I did put a 2004 BMW M57 in my nissan patrol, and can not figure out what can-id to read for activating the "check engine" lamp.
for the record,im using a arduino and canbus shield as interface to the nissan dash.
I'll send you a PM with the info I'm testing. Perhaps you can help me figure out a few more details.
Last night I played with it a bit more to ensure my tests were repeatable. Few things I noticed.
It appears that the KOMBI will come on when sent a DME messages with an RPM showing on it. Even if the CAS messages haven't been sent.
The error message is only sent if there is a message. Or in other words. No message means no errors. Which made finding it harder as it was rarely there on complete cars. And always there on my bench test :-)
So far I can only turn it on. It turns off a few seconds after the error message stops being sent. Which was also trouble in trying to find it. As I expected an immediate on and off.
More later
Thankyou for PM!!
If you look at this word-file, it is a sample taken from my M57 DDE with no engine connected. The ARBID for check engine is not showing the same value. Maybe its sending multiple error-messages?
you may try them, and see whats happening...
That does make sense if there is a delay in turning off, as it has some time to consume all data sent? (in this case with no engine connected, I guess its sending a hefty fault code)
https://1drv.ms/w/s!AlTw4-cBhgmKkglp7-GN2PXYNhNf
Daniel
Yes got the warning lights. Found that the warning lights from the DME are on ARBID 592. Though it appears that sending an Error ID from another module seems to work to.
I wrote a little about this on my blog. Might be easier for people to find later http://e46canbus.blogspot.com/2017/1...ng-lights.html
Little video of my test bench showing a few warning lights.
I think I said earlier that the light can't be forced off. Turns out I was wrong. I was trying to simulate the check engine bulb check before engine start. With no "off" message my light was staying on 17 seconds. Which wasn't right. And found that sending an on then sending an off did turn the light off. Notice how in the video the check engine light goes out at the same time I send RPM to 500.
In short this message turns the check engine on
ID = 0x592
Len = 8
B0 = 0x40
B1 = 0x22
B2 = 0
B3 = 0x31
B4 = 0xFF
B5 = 0xFF
B6 = 0xFF
B7 = 0xFF
Change B3 to 30 and it will force the light off. Change B1 to a different Error ID and it'll light other messages.
I think I now have enough to make an interface for an LS3 into an E90. Have started writing a program that combination. Classic Daily is working on a Engine swap and will test it out. I'm interested to see how it'll work. Will let you know how it goes.
Checking back on this thread as I am gaining momentum on my swap again. Looks as though you have made great progress!
I am wiring it up at the moment and will leave the DME connected for now and turn off whatever I can via NCS.
Interested to know if your test module will be activating the fuel pump via CAN or whether they will run an additional relay outside the bus?
Are you/they completely removing the DME?
Good questions. The car that was to be the first to try the E90 module is probably behind yours in the build process. So not many answers. But on the test bench the module is working really good:-) Perhaps I should video it.
Fuel pump. Probably better that the NEW ECU control it so it can be shut down if needed. Either way the Fuel pump in the E9x is controlled by the EKP via CAN bus. I did pick up an EKP for my test bench. But haven't decoded it's CAN bus messages yet. And I'm pushing the limit on CAN messages from one set of CAN bus chips. Any more and I think it would require 2 sets of CAN chips for the BMW side. A lot of words to say probably best to run a separate relay for the fuel pump.
On the positive side I did make a circuit for the module to sense the voltage. The DME broadcast the system's voltage to the rest of the car. It gets the voltage from the BSD but I haven't cracked that message stream either (it's not even CAN bus. It's a totally different thing.). The plan is for the module will be picking up the voltage from the power supply to and send that over the CAN bus. Not sure how important that it.
I expect the DME can be removed. The CAN bus is it's connection to the rest of the car. Once that is severed I can't believe it does much more.
Let us know how your projects progresses.
A video would be great! Thanks for the reply. One other thing i have struck is the start signal from the bmw. If i use the factory start button, I'm not sure if it will keep the motor engaged until it sees rpm at the dme. I haven't tested yet but will try next week.
I think the only other issues i forsee are the control of the factory bmw radiator fan and the aircon control. The ls2 ecu switches relays but the fan uses a pwm signal so i need to do some testing. I will let you know how it goes and will help however i can. I'll try and get a photo of where I'm at next week
Bit slow as I had removed a bread board from my setup to use in something else. Took the time to actually solder on some switches so it's a bit more permanent. But here it is
https://youtu.be/X3c811dexTA
I have 3 modules on this test setup (Sitting on top of the box). The right one is a CAS simulator, Middle is the LS3 to E90 module and the left is a LS3 Simulator.
The CAS simulator simulates the CAS can messages along with several other modules to keep the KOMBI happy and thinking it's in a car. This module is on the K-CAN.
The LS3 Modules Provides the CAN bus responses that an LS3 would make. And makes a Simulated RPM over the CAN bus like a running LS3 would. This is Connected to the LS3 to E90 Module Via CAN bus.
The LS3 to E90 modules translates the LS3 can to E90 can. This is connected to the BMW CAN bus.
Thaniel
So you've completed an N52 swap into E46? Did you use CAS or something from the E85/E83? My friend just picked up an E85 and are going bonkers about doing this swap.
This is a swap I am currently invested in, to get E46 with N52. The E85 I think will help with plumbing and putting the motor in because of the front subframe, but the electronics are a bit fuzzy. I have a CAS, key, and DME from an E9x with N52, although now that I see the E85 runs E46 era I think that might be the easier way to go. Terra or Thaniel, if you don't mind me asking, how would you guys approach this swap? Obtaining the E85 3.0Si DME could prove difficult but would definitely integrate easy with E46 sensors. Meanwhile the E9x DME is more accessible but uses many different forms of CAN. I'd rather re-pin all day.
Where can I find engine dependencies?
Here's a couple LS swaps on e90's already completed for reference.
http://www.e90post.com/forums/showthread.php?t=1330984
https://www.youtube.com/watch?v=_fpp4UpYEPc
https://www.youtube.com/watch?v=LT10-MJGitM
Sorry to drag up an old thread, but im starting a project a bit like this one for a bench setup.
I have a Cas3 (c3), with key, key holder, ribbon lead, jbbr and hvac as well as a kombi.
Ive made a loom up and can get the kombi to power on (not fully as im also getting the evl light on (so getting an elv unit set to me).
So once i have a semi working setup, i want to use a Kan board and uno (already bought), to emulate things like revs, speed, fuel and temp (if poss), if i could kill the kombi warnings that would be cool too.
I just need a bit of guidance with the uno sketch that i would need to use (the coding), i can code, but my experience is limited. if anyone has a sketch that i could download and use that would be fantastic. i can build small circuits with pots (for the dials etc), so that would not be a problem, if i could work from a diagram etc.
What i'd like an an end result is to have a uno/can shied, that could replace the cas/jbbr etc for my bench setup and save a bit of space on my kitchen table.... I'd just like to add, i do not want to do this for any sort commercial gain, its just a hobby for myself, i like to tinker.
Any replies would be very much appreciated.
Last edited by ccfj1; 07-03-2018 at 06:59 AM.
2010 e92 335i M-Sport, OEM Retrofits: - Dab, EPS individual audio, Rear blind, M3 Heated Interior, Dashcam, Digital Tv.
Duplicate entry
2010 e92 335i M-Sport, OEM Retrofits: - Dab, EPS individual audio, Rear blind, M3 Heated Interior, Dashcam, Digital Tv.
You can get some of the KOMBI warning lights out by coding out some of the things that it is looking for. Think I used NCS expert or something. Since this forum section is around engine swaps where KOMBI coding isn't needed, I didn't capture or detail that part of the KOMBI changes. But expect you can figure it out. The rest can be gleaned from info referenced here, my blog and the E90 can code from the "loopy bunny" site.
Think that should get you started.
Thaniel
Hi Thaniel,
I have soldered the plug up for the CAS, so the key works etc (kombi lights up), but as yet INPA, ncsexpert or ista-d does not connect to the soldered odb interface (i get a connection error h9000 something like that), I have a jbbr as well but not soldered that into the bench setup yet.
Im thinking i need to connect the cas and jbbr (so the jbbr acts as a gateway for can and k-bus), but not got that far, my cas needs an elv as well so waiting for that to turn up.
Ok, no problem.Since this forum section is around engine swaps where KOMBI coding isn't needed, I didn't capture or detail that part of the KOMBI changes.
I've gone through the sites you have mentioned and while the have a lot of information, they are light on sketches or coding examples on how to actually set the arduino up (coding wise).But expect you can figure it out. The rest can be gleaned from info referenced here, my blog and the E90 can code from the "loopy bunny" site.
I have no problem building and connecting oem modules together, soldering and so on, i just get stuck with the coding part (when i want to move on and build the bench emulator), this is just a hobby, i'm not doing this to build and make a emulator that i then sell (i'm not a business or anything), i just want to cut down and the amount of modules that i need to power on a bench setup, lol. for my e46 bench setup, i managed to get it all in a small box (power, ignition and i-bus power on (arduino nano for i-bus power on and module emulation).
It defiantly has, the sites you have mentioned and while the have a lot of information, but i will struggle with the arduino part.Think that should get you started.
Cheers for the reply.
Last edited by ccfj1; 07-06-2018 at 03:48 AM.
2010 e92 335i M-Sport, OEM Retrofits: - Dab, EPS individual audio, Rear blind, M3 Heated Interior, Dashcam, Digital Tv.
Bookmarks