Page 36 of 37 FirstFirst ... 11262728293031323334353637 LastLast
Results 876 to 900 of 903

Thread: E46 Can bus project.

  1. #876
    Join Date
    Nov 2005
    Location
    Dublin, VA
    Posts
    1,858
    My Cars
    E46, E53, E90, GSXR, MR2
    Quote Originally Posted by Leinad78 View Post
    So, according to the Driver Information Internet pdf file, the cluster gets VIN data by the steering angle sensor. So the VIN is already on shared on the bus, does it get read from the DME?
    Yes the VIN is transmitted on the CAN bus. But not over and over. I believe it will be seen in ARBID 0x610. Was this mentioned before? I'm not sure. Anyway I looked at my notes and found this statement
    "Appears that there is a 0x610 request from the ABS in a remote frame (RTR bit set). Response from the IKE Contains VIN." Or in other words I observed a remote frame request from the ABS computer and the IKE sent a 0x610 response containing the vin. If memory serves I sent the remote frame from one of my devices and the IKE also responded with the VIN. It could be that other modules could send a remote frame request and perhaps other modules would answer. Not sure. Didn't see the need to chase that. But I don't think the DME asks for the VIN.

    Hope that helps.

  2. #877
    Join Date
    Jul 2007
    Location
    Philadelphia, PA
    Posts
    5,505
    My Cars
    2005 M3 & 2004 330i
    Quote Originally Posted by Leinad78 View Post
    So, according to the Driver Information Internet pdf file, the cluster gets VIN data by the steering angle sensor. So the VIN is already on shared on the bus, does it get read from the DME?
    As far as I can tell, the DME doesn't broadcast its VIN over the CAN-bus.

  3. #878
    Join Date
    Jul 2011
    Location
    Ger
    Posts
    71
    My Cars
    2002 325Ci
    Quote Originally Posted by TerraPhantm View Post
    As far as I can tell, the DME doesn't broadcast its VIN over the CAN-bus.
    Indeed, it does not broadcast it. Just looking for a way to read it into the DME if itīs already available.

  4. #879
    Join Date
    Jun 2018
    Location
    Greater Poland, Poland
    Posts
    2
    My Cars
    '97 E39 528i Sedan
    Hey
    I am trying to drive E46 Diesel MotoMeter Instrument Cluster. I have successfully managed to obtain CAN connection so I can drive RPM gauge and other stuff. Speedometer it's not a problem too.

    But what I am struggling with is KBus.
    I am not sure if I broke something. I can't fully measure a signal coming from KBus line from the cluster because I don't have any oscilloscope but using multimeter (please don't blame me) it seems like there is no voltage at all, like 0.02V.

    I can't hardly find any documentation about KBus but as far as I know at the moment connection circuit looks identical like IBus (if I understand correctly) so I made this circuit.

    You should be familiar because it was made from one of you guys



    At first I made whole circuit except the power line for Arduino which was powered from the computer. It looked like no data was flowing to the RX of Arduino nothing showed up on serial monitor even any garbage which should show up I guess.
    On the TX side (KBus RX) when I measured voltage (via multimeter) on a KBus line it seems like octocoupler is working and the voltage was dropping for a short moments (I don't remember if I used any pullup resistor from 12V to KBus line) .

    Secondly I made only a half for sending data to KBus from Arduino and it acted the same. So it didn't work at all. Nothing was changed on the cluster. I was sending set Time and Full beam codes.
    You can see my arduino code below.

    #define kbus Serial



    void setup() {
    // put your setup code here, to run once:
    kbus.begin(9600, SERIAL_8E1);
    // put your main code here, to run repeatedly:


    }

    void sendKbus(byte *data)
    {
    int end_i = data[1]+2 ;
    data[end_i-1] = iso_checksum(data, end_i-1);
    kbus.write(data, end_i + 1);
    }


    byte iso_checksum(byte *data, byte len)//len is the number of bytes (not the # of last byte)
    {
    byte crc=0;
    for(byte i=0; i<len; i++)
    {
    crc=crc^data[i];
    }
    return crc;
    }

    void loop() {
    byte mes1[] = {0xD0, 0x08, 0xBF, 0x5B, 0x00, 0x00, 0x00 | 0x04, 0x00, 0x00, 0x58, 0x00};

    //byte mes1[] = {0x3b, 0x06, 0x80, 0x40, 0x01, 0x0C, 0x3B, 0x00, 0x00, 0x00, 0x00};
    sendKbus(mes1);

    delay(1000);
    }

    I have no idea why it doesn't work but as I wrote earlier there is no voltage on the Kbus now. I am not sure if I have to use pullup resistor from 12V+ power line but I tried that too with the same results.

    I may not need this KBus connection because the only thing I want from my cluster is backlight... All the lights (like Check engine etc.) works but there is no backlight under the speedo and rpm... I don't know if it needs any signal from light switch to think that the lights are on.

    Please help, you are the best.

  5. #880
    Join Date
    Nov 2005
    Location
    Dublin, VA
    Posts
    1,858
    My Cars
    E46, E53, E90, GSXR, MR2
    Quote Originally Posted by Aftermathx25 View Post
    there is no voltage on the Kbus now.
    The I/K bus idle high (near 12V+). If there is no voltage your kbus is not functioning properly. And you may as well stop there. If you are testing on the bench it is likely you will need a pull up resistor (might try 220-330 ohm). The actual resistance will likely depend on which modules you have attached to the bus. If in the car the K-bus do not add a pull up resistor as the car has this covered. If you haven't already, try your circuit and program on the complete car. Not just the bench.

  6. #881
    Join Date
    Jun 2018
    Location
    Greater Poland, Poland
    Posts
    2
    My Cars
    '97 E39 528i Sedan
    Quote Originally Posted by Thaniel View Post
    The I/K bus idle high (near 12V+). If there is no voltage your kbus is not functioning properly. And you may as well stop there. If you are testing on the bench it is likely you will need a pull up resistor (might try 220-330 ohm). The actual resistance will likely depend on which modules you have attached to the bus. If in the car the K-bus do not add a pull up resistor as the car has this covered. If you haven't already, try your circuit and program on the complete car. Not just the bench.
    Ok, but I do not have an E46, I have E39 now. I want to use this cluster to make simulator.

  7. #882
    Join Date
    Nov 2005
    Location
    Dublin, VA
    Posts
    1,858
    My Cars
    E46, E53, E90, GSXR, MR2
    Quote Originally Posted by Aftermathx25 View Post
    Ok, but I do not have an E46, I have E39 now. I want to use this cluster to make simulator.
    The i/k bus, ibus or kbus physical layer (voltages, baud rates etc.) are the same. No matter what car it is in. The messages packets might differ in content. But reading the data from the voltages is the same. Most of the documents I've read for i/kbus that I've used at the start of my ipod project were for written for E39's.

  8. #883
    Join Date
    Mar 2018
    Location
    The Netherlands
    Posts
    6
    My Cars
    2001 318Ci Executive
    Quote Originally Posted by Thaniel View Post
    The i/k bus, ibus or kbus physical layer (voltages, baud rates etc.) are the same. No matter what car it is in. The messages packets might differ in content. But reading the data from the voltages is the same. Most of the documents I've read for i/kbus that I've used at the start of my ipod project were for written for E39's.
    thank you for all your work in this thread, I had a CAN-bus school project aimed at the E46 and this was a great help.
    We made the cluster compatible with the game BeamNG.
    (Also wrote a tool that can send the info from the game to an Arduino with canshield)


    We want the indicators and warning lights in the cluster (that work with the k-bus/k-line) to work as well but we cant figure that out.... do you know how to do that??

  9. #884
    Join Date
    Dec 2015
    Location
    The Moon
    Posts
    4
    My Cars
    e63 645
    Has anyone tried sniffing an EGS from an automatic car?

    would love to be able to control (read re-purpose) the current gear indicator, P/N/D and little cog for current selected engine map and launch control / pit limiter active...

  10. #885
    Join Date
    Dec 2015
    Location
    The Moon
    Posts
    4
    My Cars
    e63 645
    well, i did it myself


    message 0x43F

    byte 0 = 0x81 //doesn't do anything to the ike

    byte 1 = 0x01 where;
    01 = first gear
    02= second gear
    03 = third gear
    04 = fourth gear
    05 = D
    06 = N
    07 = R
    08 = P
    09 = 5
    0A = 6

    byte 2 = 0xFF where;
    FF = no display
    00 = E
    39 = M
    40 = S

    byte 3 = 0xFF //doesn't do anything to the ike

    byte 4 = 0x00 //doesn't do anything to the ike

    byte 5 = 0x80 where;
    80 = clears the gear warning picture - all other values bring it on

    byte 6 = 0xFF //doesn't do anything to the ike

    byte 7 = 0x00 //doesn't do anything to the ike



    so yeah, run any auto / sequential box on a dash from an auto car

  11. #886
    Join Date
    Nov 2005
    Location
    Dublin, VA
    Posts
    1,858
    My Cars
    E46, E53, E90, GSXR, MR2
    Quote Originally Posted by Master0wn3r View Post
    We want the indicators and warning lights in the cluster (that work with the k-bus/k-line) to work as well but we cant figure that out.... do you know how to do that??
    Yes. As you say it is on the i/k bus. Just need to build a device that can send on that Link below gives some info on how to do it for an ardunio
    http://e46canbus.blogspot.com/2014/0...r-arduino.html

    and on the page below is a link to some software that makes it work. You might also have a look at the ipod link in my signature. THe controls are all on the i/kbus. More info there about i/kbus interfacing.
    http://e46canbus.blogspot.com/2014/0...ly-living.html

    Quote Originally Posted by gk73a View Post
    well, i did it myself


    so yeah, run any auto / sequential box on a dash from an auto car
    Great stuff. Thanks for adding to the thread.

  12. #887
    Join Date
    Nov 2018
    Location
    Lake Orion, MI
    Posts
    1
    My Cars
    1971 Simca 1204
    I've been following this thread for while now and am very impressed with the level of reverse engineering that has taken place. I had to register just to say "good job". :-)

    Reverse engineering a CAN bus is no easy task. It's takes a special kind of masochism to take this on.

    Additionally, I was wondering if anybody has information on the GM side of the equation. I have an E40 PCM (ECU) from an LS2 engine (LH6 5.3L from a GMC Envoy, but the controllers are the same) and I'm looking for CAN message definitions for what the high speed GMLAN bus is spitting out.

    In the meantime, this this is what I've been able to accomplish with my E39 cluster to date. Enjoy:

    https://www.facebook.com/andrew.bayl...19425600734934

  13. #888
    Join Date
    Nov 2005
    Location
    Dublin, VA
    Posts
    1,858
    My Cars
    E46, E53, E90, GSXR, MR2
    Nice work.

    Yah I've done a bit on the GM side. But this being a BMW forum I've not posted it in this forum. But if just trying to run the gauges the values can be had using OBDII PID's. OBDII info is easily accessible in wiki's.

    THaniel.

    Quote Originally Posted by B@yley View Post
    I've been following this thread for while now and am very impressed with the level of reverse engineering that has taken place. I had to register just to say "good job". :-)

    Reverse engineering a CAN bus is no easy task. It's takes a special kind of masochism to take this on.

    Additionally, I was wondering if anybody has information on the GM side of the equation. I have an E40 PCM (ECU) from an LS2 engine (LH6 5.3L from a GMC Envoy, but the controllers are the same) and I'm looking for CAN message definitions for what the high speed GMLAN bus is spitting out.

    In the meantime, this this is what I've been able to accomplish with my E39 cluster to date. Enjoy:

    https://www.facebook.com/andrew.bayl...19425600734934

  14. #889
    Join Date
    Dec 2006
    Location
    Norway
    Posts
    28
    My Cars
    e46 332ti,e46 325ti,f31
    Made an upgrade of my mk60-emulators to also support the IKE gateway-function towards the EWS. Until now, if one wanted to run without the IKE, but with mss54, lws and gyro, on had to go for EWS delete in the mss54. Switched to the atMega1284p-mu in my design (due to two serial interfaces on board the cpu) and made a new solution. Pleased to hear from the enthusiast that installed it in his car, that it work without any issues.











    Happiness isn't around the corner - happiness is the corner!

  15. #890
    Join Date
    Jan 2009
    Location
    In the Darkness, where fear and knowing are one
    Posts
    679
    My Cars
    1987 Fiero GT
    So this would let you do an S54 (or S62?) swap into an E30 without EWS delete?

  16. #891
    Join Date
    Dec 2006
    Location
    Norway
    Posts
    28
    My Cars
    e46 332ti,e46 325ti,f31
    Quote Originally Posted by DarkSideofWill View Post
    So this would let you do an S54 (or S62?) swap into an E30 without EWS delete?
    This would let you do an S54 swap into an E30 without EWS delete. I have no experience with the S62.
    Happiness isn't around the corner - happiness is the corner!

  17. #892
    Join Date
    Jan 2013
    Location
    Russia
    Posts
    14
    My Cars
    E46 330 ESS Touring
    Decided to share that my imBMW.net open-source project (that previously supported only iBus and dBus DS2) now supports CAN-BUS, that allows for example to install CAN-BUS-controlled "full comfort" seats from e65/e66 into any iBus-controlled BMW e38/e39/e46/e53/etc:



    Of course, it allows to communicate with any other CAN-BUS/iBus/dBus ECUs.

    oHS6GP-fnUg.jpg

    And since it's Open Source, you could build your own non-commercial fork, like others did: https://vk.com/album-67915700_260588402
    E46 M54B30 MT Touring = ESS TwinScrew + SS Headers + S38 Flywheel&Clutch + MFactory LSD 3.07 + Koni Sport + Eibach Pro + ///M3-Look
    =============================
    imBMW.net = BMW + iBus + .NET MF + .NET PCL & UWP + Bluetooth + Arduino + STM32 + music + handsfree + DIY + DBus DS2 DME Logging + etc...

  18. #893
    Join Date
    Nov 2005
    Location
    Dublin, VA
    Posts
    1,858
    My Cars
    E46, E53, E90, GSXR, MR2
    Quote Originally Posted by MadToha View Post
    Decided to share that my imBMW.net open-source project (that previously supported only iBus and dBus DS2) now supports CAN-BUS, that allows for example to install CAN-BUS-controlled "full comfort" seats from e65/e66 into any iBus-controlled BMW e38/e39/e46/e53/etc:

    Of course, it allows to communicate with any other CAN-BUS/iBus/dBus ECUs.


    And since it's Open Source, you could build your own non-commercial fork, like others did: https://vk.com/album-67915700_260588402
    Great stuff.

    You might consider posting in my E90 thread as well. The E65 has a lot in common with the E9x. From time to time people ask about the seat messages.

    Thaniel

  19. #894
    Join Date
    Jan 2013
    Location
    Russia
    Posts
    14
    My Cars
    E46 330 ESS Touring
    Done
    E46 M54B30 MT Touring = ESS TwinScrew + SS Headers + S38 Flywheel&Clutch + MFactory LSD 3.07 + Koni Sport + Eibach Pro + ///M3-Look
    =============================
    imBMW.net = BMW + iBus + .NET MF + .NET PCL & UWP + Bluetooth + Arduino + STM32 + music + handsfree + DIY + DBus DS2 DME Logging + etc...

  20. #895
    Join Date
    Nov 2018
    Location
    Munich, Germany
    Posts
    5
    My Cars
    E30 V8, Z3 E36/7 V8, Z4

    Z85 35is

    Hey to all,
    my name is Andreas, I have a 2003 Z4 M54B30, beautiful car, no need to change anything. But anybody sold me his N54B30T with not even 40t mls on it. Until this engine is pretty simular to the N52, the mechanical part of the swap shouldnt be that diffucult. I alredy built a E30 M60 and a Z3 Coupe M62.
    That is why i am working on the can bus the last two month. Thanks to the great work of Thaniel and TerraPhantm and lots of others, there is alredy a lot of work done.

    The engine in my car is still original, so I could listen to the original bus communication. I started with DSC communication, and worked on 0x153. This is what i found yet:
    NK_153.JPG
    ARS_MSR.JPG

    I also found some accelerations on 0x1F3, not 100% shure actually.
    NK_1F3.JPG


    I am also working on a dokument, that contains all messages and signals that we know yet, I will share it when i finished it. I try to keep as close on original notation than possible.

    I also started to code a programm for my arduino nano to simulate the four DME signals. The next step will be that I cut the can wires and try to simulate the MS45 DME.

    Best regards
    Andreas
    Attached Images Attached Images
    Last edited by Maxster; 03-07-2019 at 10:49 AM.

  21. #896
    Join Date
    Jan 2013
    Location
    Russia
    Posts
    14
    My Cars
    E46 330 ESS Touring
    Wow Maxster! It would be great if you make a doc with all can messages of N54 to build a bit different project: install DCT from N54 to M54
    E46 M54B30 MT Touring = ESS TwinScrew + SS Headers + S38 Flywheel&Clutch + MFactory LSD 3.07 + Koni Sport + Eibach Pro + ///M3-Look
    =============================
    imBMW.net = BMW + iBus + .NET MF + .NET PCL & UWP + Bluetooth + Arduino + STM32 + music + handsfree + DIY + DBus DS2 DME Logging + etc...

  22. #897
    Join Date
    Nov 2018
    Location
    Munich, Germany
    Posts
    5
    My Cars
    E30 V8, Z3 E36/7 V8, Z4
    Hi MadToha,
    i will be really glad, if I get my N54 with the manual transmission fully working. But when you get the DCT with the M54 working, i will defenetly also change my MT against the 436 DCT. The Engine that I have is from a E89 35is with DCT. A couble month ago, I was able to testdrive that DCT, it really is a great transmission.
    From my actual point of view, I think it is a big challenge getting the DCT in a different environment to work, and at the same time on a much older engine? As far as I know, the M54 and S54 with SMG2 had an owen can communication exclusively for DME-EGS. Listening that can on a series E46/E85 with SMG could maybe the best way.

    Let me know of any progress you made, I am really interested.

    Best regards

  23. #898
    Join Date
    Nov 2018
    Location
    Munich, Germany
    Posts
    5
    My Cars
    E30 V8, Z3 E36/7 V8, Z4

    Z85 35is

    Attached you can find my collection of all signals I found in this thread, in some other forums and the signals I figured out by myselfe. Until this is the first time I do something like that, please handle that datas with care. If any changes are neccessary or any mistakes found or anybody wants to add anything, let me know.
    NK_CAN11h.pdf

    The last couple weeks, Im struggling with my program on the arduino. My ECUs do particular not accept the Can messages I sent them. At the same time my can modules are stopping to send anything partial for about 500ms. Hope I can find the problem at any time.

    Best regards

  24. #899
    Join Date
    Jun 2005
    Location
    Charlotte
    Posts
    368
    My Cars
    e46 M3
    Thanks for this information and your time spent on it.

  25. #900
    Join Date
    Nov 2018
    Location
    Munich, Germany
    Posts
    5
    My Cars
    E30 V8, Z3 E36/7 V8, Z4
    Hey to all,
    the last days I was able to get rid of all MILs and simulate RPM and everything else to the IKE. Unfortunately I still have a stupid problem, which causes a jumping rpm needle.

    The problem is that the messages send from my arduino UNO with mcp2515, just appear on the CAN with the first two Data bytes (B0 and B1). I was able to figure out, that this happens, when one of the messages from my arduino is the first message after 0x280 the short message with two bytes. I am pretty sure, that this is not caused of any error in the code.

    Here one example
    Fehler.PNG

    When one message from the car is between 0x280 and 0x316 everything seems to be OK
    io.PNG

    I also found some examples where 0x316 follows on 0x280 and 0x316 had all 8 Data bytes
    iO_280.PNG

    Here is also my complete log file, maybe one of the more experienced guys could take a look at it:
    Z85_Arduino_ohne_DME (2).7z.txt


    Thanks a lot.
    Last edited by Maxster; 05-09-2019 at 02:06 AM.

Page 36 of 37 FirstFirst ... 11262728293031323334353637 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •