Page 9 of 10 FirstFirst 12345678910 LastLast
Results 201 to 225 of 228

Thread: E90 Can bus project (E60, E65, E87....)

  1. #201
    Join Date
    Mar 2019
    Location
    Lithuania
    Posts
    38
    My Cars
    E92
    It seems that E60 has only 2 buttons "Check" and "BC" and they are sent by CAN bus. But since it does not have up and down it seems that it does not have menu in instrument cluster, so emulating buttons on E60 are not that useful.

  2. #202
    Join Date
    Nov 2013
    Location
    Jersey City, NJ
    Posts
    27
    My Cars
    M73 engine and E65 760
    The link in the first post seems to be broken? working link https://www.loopybunny.co.uk/CarPC/k_can.html ?

  3. #203
    Join Date
    Nov 2013
    Location
    Jersey City, NJ
    Posts
    27
    My Cars
    M73 engine and E65 760
    Great project! I have an E66 and a very ambitious goal of running it on my own ECU I hope to learn a lot here!

    One of the areas of my interest is HDEV modules. Those are on Local-CAN, not sure what BMW models had Local-CAN and how much is known about Local-CAN traffic.

  4. #204
    Join Date
    Nov 2013
    Location
    Jersey City, NJ
    Posts
    27
    My Cars
    M73 engine and E65 760
    Quote Originally Posted by HeinrichG View Post
    I own an E65 instrument cluster
    Do you have two sets of all this with one set actually attached to a driving E65?

    Anyway Heinrich and I both have driving 760 vehicles and at the moment we are focusing on 6HP control. The overall pipe dream is to have N73 controlled by rusEFI ECU and have the whole vehicle driving.

    Only recording of two buses at https://github.com/HeinrichG-V12/E65_ReverseEngineering so far.

  5. #205
    Join Date
    Jan 2013
    Location
    Russia
    Posts
    22
    My Cars
    E46 330 ESS Touring
    E65_ReverseEngineering repo is private
    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...

  6. #206
    Join Date
    Nov 2013
    Location
    Jersey City, NJ
    Posts
    27
    My Cars
    M73 engine and E65 760
    Quote Originally Posted by MadToha View Post
    E65_ReverseEngineering repo is private
    fixed!

  7. #207
    Join Date
    Nov 2005
    Location
    Kilmarnock, VA
    Posts
    1,873
    My Cars
    E53, E90, Triumph GT6
    Quote Originally Posted by rusefi View Post
    Do you have two sets of all this with one set actually attached to a driving E65?

    Anyway Heinrich and I both have driving 760 vehicles and at the moment we are focusing on 6HP control. The overall pipe dream is to have N73 controlled by rusEFI ECU and have the whole vehicle driving.

    Only recording of two buses at https://github.com/HeinrichG-V12/E65_ReverseEngineering so far.
    Nice work!

  8. #208
    Join Date
    Apr 2022
    Location
    Albania Tirana
    Posts
    1
    My Cars
    BMW E65
    Can you send me the same INFO as i am doing the same mod. Thanks

  9. #209
    Join Date
    Dec 2021
    Location
    Dousman, WI
    Posts
    2
    My Cars
    2010 BMW 328i Coupe
    I have an e90 sitting around to test on. I'm trying to get some e92 sport seats working for a street rod install. I have an arduino Uno and a can-shield. We modified it with the 1055 fault tolerant can chip. I'm probing the CAN wires on the back of the control unit in the center dash. I'm using the basic script from the arduino library to try and read what's on the canbus. I'm set at 100kbps, which is what the Kcan should be based on what I was reading here. All I get right now in the message window when running the arduino is the Can init OK! message.

    Where do I go from here to figure out how to get it working? I was looking to find the messages needed on the e90 so I can build the arduino to run the e92 seats on an independent canbus in the street rod.

  10. #210
    Join Date
    Dec 2021
    Location
    Dousman, WI
    Posts
    2
    My Cars
    2010 BMW 328i Coupe
    Quote Originally Posted by Steve Pertzsch View Post
    I have an e90 sitting around to test on. I'm trying to get some e92 sport seats working for a street rod install. I have an arduino Uno and a can-shield. We modified it with the 1055 fault tolerant can chip. I'm probing the CAN wires on the back of the control unit in the center dash. I'm using the basic script from the arduino library to try and read what's on the canbus. I'm set at 100kbps, which is what the Kcan should be based on what I was reading here. All I get right now in the message window when running the arduino is the Can init OK! message.

    Where do I go from here to figure out how to get it working? I was looking to find the messages needed on the e90 so I can build the arduino to run the e92 seats on an independent canbus in the street rod.
    @Thaniel did you have these messages logged in your notes somewhere?

  11. #211
    Join Date
    Oct 2022
    Location
    Dominican Republic
    Posts
    1
    My Cars
    BMW e46 318i
    hey nathaniel, i have been looking at your work on the e46 can bus project and i have a few questions about it. could you give me your email.

  12. #212
    Join Date
    May 2017
    Location
    Germany
    Posts
    149
    My Cars
    1995 E36 328i
    I logged the communication between INPA and an E91 with a DCAN interface. Below (rename to .zip) are the traces what the interface sent (write) and what the car sent back (read). I connected with INPA to the cluster and read some live values and then did the same to the ECU (MSD80). Maybe its useful for somebody.
    Attached Files Attached Files

  13. #213
    Join Date
    Dec 2022
    Location
    Craiova
    Posts
    1
    My Cars
    BMW E36, E90, E65
    Quote Originally Posted by HeinrichG View Post
    Hello Thaniel,

    nice project and very nice work!

    I'm own an E65 instrument cluster and would like to control them, on the start just rpm and speed. Could you say me the can messages, which you used to set rpm and speed?

    I've build a small test environment on my desk:





    The whole thing is up and running, I'm able to read errors and so one. But, I'm not able to set any values (ie fuel consumption, speed, rpm, ...)

    @RobertButtigieg: = 0x130 is "ignition status" and have to be send every 100ms.

    @TerraPhantm: In which directory/file did you find this codes?
    Hi Heinrich,
    can you please tell me if you managed to move the needles on the BMW E65 clocks? if you succeeded, how did you do it? I have tried in every way, I can only turn them on, signal, light them and turn on the low beam headlights, I am also attaching a video in this regard, please if you can give me some advice, thank you very much!

    Last edited by doruceanu; 12-21-2022 at 03:57 AM.

  14. #214
    Join Date
    Apr 2023
    Location
    London
    Posts
    3
    My Cars
    BMW
    Hello everyone , I made a FLA ( High Beams Assist ) project to control the high beams of a car which doesn't support that function. I got a mirror with FLA from E60 - 90 and when connect it to the can bus shield at speed 100 kbps I receive in can bus ID message 0x292 bytes : 4 - to turn on the high beams, 12 - to turn off the high beams and 16 - when there a light in the ambient sensor of the mirror. I found the follow recourse " High Beam Assistant (FLA) Model: E60, E61, E63 LCI, E64 LCI Production: From 2008 Model Year" and on the table " K-CAN Signals at Control Unitfor High Beam Assistant " they say the following :

    In - Road Speed
    > Wheel speed sensors
    > DSC
    Deactivation of high beam assistant
    below certain speed

    In -Yaw Rate
    > DSC Sensor
    > DSC
    Adaptation of detection range when
    cornering

    In - Bulb Condition > Footwell Module Monitoring condition of high beam
    on/off

    Out - Switch-on and switchoff
    recommendation > Footwell Module
    Switch-on and switch-off recommendation
    to footwell module -
    footwell module decides whether
    system is switched on or off

    Ok my question is about can bus IDs for "In - Road Speed > Wheel speed sensors > DSC" , " In -Yaw Rate > DSC Sensor > DSC Adaptation of detection range when
    cornering" and " In - Bulb Condition > Footwell Module Monitoring condition of high beam
    on/off " . I want to enulate and send to the FLA module the can bus messages to work correct. Maby for weel speed sensors they mean 0x1B4 ?

  15. #215
    Join Date
    Apr 2023
    Location
    London
    Posts
    3
    My Cars
    BMW
    Hello everyone , I made a FLA ( High Beams Assist ) project to control the high beams of a car which doesn't support that function. I got a mirror with FLA from E60 - 90 and when connect it to the can bus shield at speed 100 kbps I receive in can bus ID message 0x292 bytes : 4 - to turn on the high beams, 12 - to turn off the high beams and 16 - when there a light in the ambient sensor of the mirror. I found the follow recourse " High Beam Assistant (FLA) Model: E60, E61, E63 LCI, E64 LCI Production: From 2008 Model Year" and on the table " K-CAN Signals at Control Unitfor High Beam Assistant " they say the following :
    In - Road Speed
    > Wheel speed sensors
    > DSC
    Deactivation of high beam assistant
    below certain speed

    In -Yaw Rate
    > DSC Sensor
    > DSC
    Adaptation of detection range when
    cornering

    In - Bulb Condition > Footwell Module Monitoring condition of high beam
    on/off

    Out - Switch-on and switchoff
    recommendation > Footwell Module
    Switch-on and switch-off recommendation
    to footwell module -
    footwell module decides whether
    system is switched on or off

    Ok my question is about can bus IDs for "In - Road Speed > Wheel speed sensors > DSC" , " In -Yaw Rate > DSC Sensor > DSC Adaptation of detection range when
    cornering" and " In - Bulb Condition > Footwell Module Monitoring condition of high beam
    on/off " . I want to enulate and send to the FLA module the can bus messages to work correct. Maby for weel speed sensors they mean 0x1B4 ?

  16. #216
    Join Date
    Jan 2014
    Location
    San Diego
    Posts
    13
    My Cars
    1994 BMW 318I
    Hey Guys,

    I'm Working on an E60 being converted to Electric.

    trying to utilize the cluster to reflect my EV data.

    i worked out everything I need repurposing the gauges to reflect EV stuff.

    two things that driving me crazy and cant figrure them out.

    1- is the Fuel consumption needle (MPG), i need to control that needle as it will reflect the Current being used by the EV Motor.

    I tried CAN ID 0x1D0 but it does nothing. i think it is mentioned that here it is for oil temperature on e90. My car is E60 so it is MPG.

    does anyone knows what is the ID ?? Byte and Counter ? i have couple of logs of the car driving. but cant pinpoint where is that ID. or maybe im using the wrong counter and the Cluster is ignoring it.

    Second Issue but this isnt urgent now, is the 0xA8 ABS Messages, Counter and Checksum. I Saw Hinrich code for the E65 but it is 0xA8 and 0xA9 which the car doesn't report. E60 only send 0xA8.
    any light of that will be great. Any help will be great. TIA

    Thank Thaniel for this work. it is amazing and impressive.

    Karim

  17. #217
    Join Date
    May 2023
    Location
    London
    Posts
    1
    My Cars
    2010 E93 M3
    Hi,

    Made an account just for this, I am working on getting heated seats working with a driver seat I have from a e93 M3. Standalone as an office chair so I need to do some electronic foolery with the can bus (KCAN I believe).

    I have managed to find code for sending the ignition message to keep the seat module awake but now the heated seats, not sure how I should go about getting the commands for this, seems like I have to find it out myself. I have a CAN-Arduino module coming (MCP2551, MCP2515) Searching the datasheet of the CAN transceiver it says its fault tolerant (no idea what that means just saw you or someone else mention it, but I'll have a read over again to see what it means)

    My plan is to connect the CAN bus module to the obd2 port in a e93 M3 (what speed would this be? 100kbps like the seat?)

    Then hopefully when I trigger the heated seats I'll get some data appear in the serial monitor, what is the risk of damaging something like the bus if I do this? How can I make it as safe as possible?

    One worry I have is how will I find out what CANID in the received data is what module? Any tips on how I can zone into a specific module or something?

    EDIT:

    - Found out the transceiver on the seat is a NXP TJA1055, studying the datasheet for it right now (just for me to know, regarding voltage levels and other signal requirements)

    Thank you a lot
    Last edited by draun21; 05-28-2023 at 05:18 PM.

  18. #218
    Join Date
    Jul 2016
    Location
    Westland, Mi
    Posts
    9
    My Cars
    E82 135i 2011
    You probably may not have K-CAN on obd2. (See if there is a lot of pins there or half populated.). If half of the pins are populated, then you can tap on K-CAN splice in the driver footwell or anywhere you can splice / tap yourself anywhere the K-CAN is used, e.g. behind the radio.

    Cable colors https://www.bimmerfest.com/threads/k...estion.866777/

    Heated seat messages
    https://github.com/dzid26/opendbc-BM...x_e8x.dbc#L471 driver/passenger.

    The message may contain rolling counter and checksum, which might be satisfied with your code.

  19. #219
    Join Date
    Sep 2003
    Location
    Moline, IL
    Posts
    1,819
    My Cars
    2009 BMW 335i

    Thumbs up

    Quote Originally Posted by DrZiplok View Post
    [...]
    The response from the addressed module looks like:

    0x6XX: 0xf1 0x10 LL DD DD DD DD DD
    XX = ID of the module responding
    LL = total length of the response in bytes
    DD = first 5 bytes of the response, where the first YY bytes are the same as the command, except that the first byte has bit 0x40 set. Padded with 0xff if there are less than 5 bytes in the reply.


    If the response is 5 bytes or less, this is the end of the exchange. However if it's longer, the D-CAN probe will respond with:

    0x6f1: XX 0x30 0x00 0x01 0x00 0x00 0x00 0x00
    XX = ID of the module being asked to complete its response


    The addressed module will then deliver the remainder of its response, with a sequence of messages of the form:

    0x6XX: 0xf1 SS DD DD DD DD DD DD
    SS = sequence number, starts with 0x21 and counts up.
    DD = data bytes, padded with 0xff


    As an example, here is the probe reading the VIN from CAS:

    41 0:02.489.646 6f1 8 40 03 22 10 10 00 00 00 VIN read
    42 0:02.513.397 640 8 F1 10 14 62 10 10 57 42 “WB”
    43 0:02.514.073 6f1 8 40 30 00 01 00 00 00 00
    44 0:02.514.345 640 8 F1 21 41 50 4E 37 33 35 “APN735”
    45 0:02.516.107 640 8 F1 22 58 39 41 32 36 36 “X9A266”
    46 0:02.518.709 640 8 F1 23 33 38 36 FF FF FF “386”
    Great explanation!

    Got it working on Fedora Linux:
    Code:
    [...]
    (1684259501.318124) slcan0 130#C540FFFFFF
    (1684259501.372758) slcan0 6F1#4003221010000000
    (1684259501.397152) slcan0 640#F110146210105742
    (1684259501.397361) slcan0 6F1#4030000100000000
    (1684259501.399090) slcan0 640#F121415742373335
    [...]
    Alpina B3 Flash/BMS OCC/ER CP/ETS 5/HKS BOV/M3 Control Arms

  20. #220
    Join Date
    Sep 2003
    Location
    Moline, IL
    Posts
    1,819
    My Cars
    2009 BMW 335i
    Quote Originally Posted by Steve Pertzsch View Post
    I have an e90 sitting around to test on. I'm trying to get some e92 sport seats working for a street rod install. I have an arduino Uno and a can-shield. We modified it with the 1055 fault tolerant can chip. I'm probing the CAN wires on the back of the control unit in the center dash. I'm using the basic script from the arduino library to try and read what's on the canbus. I'm set at 100kbps, which is what the Kcan should be based on what I was reading here. All I get right now in the message window when running the arduino is the Can init OK! message.

    Where do I go from here to figure out how to get it working? I was looking to find the messages needed on the e90 so I can build the arduino to run the e92 seats on an independent canbus in the street rod.
    Here is an Arduino sketch to send the seats a keep alive, HTH:
    https://github.com/RevEngOps/BMW-E90-Seat-CAN
    Alpina B3 Flash/BMS OCC/ER CP/ETS 5/HKS BOV/M3 Control Arms

  21. #221
    Join Date
    Jul 2016
    Location
    Westland, Mi
    Posts
    9
    My Cars
    E82 135i 2011
    Typically you will see calculated physical value of speed on all BMW CANbuses. The technology behind the sensor shouldn't matter in general.

    Magnetic sensing (thanks to smooth magnetic field between the poles) helps with precise speed measurment at low speed and I assume is required for good feel of the hill start assist.

    Here is a wheels speed message for E90.
    https://github.com/dzid26/opendbc-BM....dbc#L100-L104
    And, here, a identical message for E65:
    https://github.com/HeinrichG-V12/E65.../docs/0x0CE.md
    I would assume E46 uses the same CAN message.

    There might be some special speed values that are reserved for sensor diagnostic, power up, etc. Here is some indication of that. https://forum.autosportlabs.com/viewtopic.php?t=4488

  22. #222
    Join Date
    Jul 2023
    Location
    Malaysia
    Posts
    2
    My Cars
    2007 e90
    Hi All,


    Very nice thread, good guidance and informative,


    Just want to share...I have manage to make my memory seat to work with my custom board outside a car. I have memory as what I required. I will retrofit this seat (E90 sport seat) to my toyota car.




    But I have some issued as below,


    1. When I already set my memory, when I push button 1 or 2 after that, it does not move to the set position. I need to power off the seat and on again then only I can push the 1 or 2 button to the setting position. I think I am missing canbus message to the seat or the message is not send at correct interval,


    2. I manage to make the seat move with one touch press, but the movement is not complete to the set position.


    Can anyone help me to sniff the canbus message when the memory are activating during both event mention above so I can simulate the canbus messages, as I am not own a BMW car,


    Highly appreciate it


    Thanks
    Last edited by penjejakbumi13; 09-06-2023 at 02:18 AM.

  23. #223
    Join Date
    Apr 2023
    Location
    London
    Posts
    3
    My Cars
    BMW
    Hello again , I have found the FLA ( front light assist ) need to receive the CAN ID 0x1A0 Speed from DSC . I try to found the description about the 1A0 but I have only found this :
    https://github.com/HeinrichG-V12/E65.../docs/0x1A0.md

    Signal Start bit Length Order Value type Factor Offset Unit
    V_VEH 0 12 Intel Unsigned 0.1 0 km/h
    ST_VEH_DVCO 12 3 Intel Unsigned 1 0
    ACLH_VEH_LN_DSC 16 12 Intel Signed 0.025 0 m/sē
    ACLH_VEH_ACRO_DSC 28 12 Intel Signed 0.025 0 m/sē
    ANGV_YAW_DSC 40 12 Intel Signed 0.05 0 °/s
    ALIV_V 52 4 Intel Unsigned 1 0
    CHKSM_V_V 56 8 Intel Unsigned 1 0

    • ST_VEH_DVCO, status vehicle driver choice:

    Value Description
    0x0 vehicle standing
    0x1 moves forward, FL/FR forward
    0x2 moves backward, FL/FR backward
    0x2 vehicle moves, direction detection not possible
    0x7 signal invalid

    • ACLH_VEH_LN_DSC, horizontal longitudinal acceleration
    • ACLH_VEH_ACRO_DSC, horizontal cross acceleration
    • ANGV_YAW_DSC, yaw angle

    Message example:

    • 0x1A0 8 00 80 00 50 00 02 80 F4
      • V_VEH: 0km/h
      • ST_VEH_DVCO: 0
      • ACLH_VEH_LN_DSC: 0
      • ACLH_VEH_ACRO_DSC: 0.1250ms/s
      • ANGV_YAW_DSC: 0.1 1/s
      • CHKSM_V_V: F4


    Does anybody know how to calculate the Speed because from the this documentation is 12 bits. Now I have put in every bytes with 0xFF and FLA its work like sending 0 to turn ON the Main beams and 8 to turn OFF it. Then I have put the 0x00 the FLA is sending 4 and 12 only but its very lazy and it's not working correctly. There are the source code :

    const uint16_t CAN_ID = 0x1A0;
    uint8_t speed_DSC_frame_1A0[8] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF };

    void canSend_speed_DSC_1A0(){

    CAN.sendMsgBuf(CAN_ID, 0, 8, speed_DSC_frame_1A0);
    }


    <font color="#D4D4D4"><span style="font-family: Consolas">https://youtube.com/shorts/4W5CPx-ij8o

  24. #224
    Join Date
    Jul 2016
    Location
    Westland, Mi
    Posts
    9
    My Cars
    E82 135i 2011
    You need to set 8 bit | 4 bit to form 12bit.
    Factor is 0.1, so raw data is 10x bigger than speed value.
    BMW uses Intel (Little endian byte ordering) - most significant bit is bit 3 in byte 1.

    Google the terms. Or open https://github.com/dzid26/opendbc-BM...x_e8x.dbc#L166 in Kvaser Database Editor to visualize Speed message layout.

    E.g. 50km/s -> 500(dec) -> 0x1F4 (hex)
    Separate Byte 0 and 4 bits from Byte 1 - use bitwise operation in your code:
    spd_val = 0x1F4;
    spd_val_lower_byte = val & 0xFF; //extract 1byte -> 0xF4
    spd_val_higher_byte = (val >> 8) & 0xF; //shift right and extract half a byte -> 0x1

    uint8_t speed_DSC_frame_1A0[8] = {spd_val_lower_byte , spd_val_higher_byte , 0x0, 0x0, 0x0, 0x0, 0x0, 0x0};

  25. #225
    Join Date
    Jul 2023
    Location
    Malaysia
    Posts
    2
    My Cars
    2007 e90
    Quote Originally Posted by penjejakbumi13 View Post
    Hi All,


    Very nice thread, good guidance and informative,


    Just want to share...I have manage to make my memory seat to work with my custom board outside a car. I have memory as what I required. I will retrofit this seat (E90 sport seat) to my toyota car.




    But I have some issued as below,


    1. When I already set my memory, when I push button 1 or 2 after that, it does not move to the set position. I need to power off the seat and on again then only I can push the 1 or 2 button to the setting position. I think I am missing canbus message to the seat or the message is not send at correct interval,


    2. I manage to make the seat move with one touch press, but the movement is not complete to the set position.


    Can anyone help me to sniff the canbus message when the memory are activating during both event mention above so I can simulate the canbus messages, as I am not own a BMW car,


    Highly appreciate it


    Thanks
    Miraculously for point number 2, my seat can do one touch press and the seat will move to setting position completely. But I did simulate canbus signal of door open. Previously its not working but suddenly now its working 🤷*♂️. But have other issue come out which the button for forward and backward now reverse. When I push the button forward, the seat go backward, and vice versa.

Page 9 of 10 FirstFirst 12345678910 LastLast

Similar Threads

  1. E46 Can bus project.
    By Thaniel in forum Engine Conversions
    Replies: 985
    Last Post: 02-26-2024, 09:42 AM
  2. BMW Dual 3" Tip Peformance Muffler Exhuast E39 E46 E38 E90 E92 E36 E30 E60 E65 E66
    By BimmerKing12 in forum Engines, Performance Parts & Software
    Replies: 1
    Last Post: 11-28-2013, 06:45 AM
  3. BMW Dual 3" Tip Peformance Muffler Exhuast E39 E46 E38 E90 E92 E36 E30 E60 E64 E65
    By BMW112 in forum Engines, Performance Parts & Software
    Replies: 22
    Last Post: 08-20-2013, 05:44 PM
  4. FS: Brand new DIAGNOSTIC SCANNER E60 E63 E65 E87 E90
    By bumer325 in forum Engines, Performance Parts & Software
    Replies: 15
    Last Post: 07-07-2012, 05:03 PM
  5. CAN Bus IDs - Working for PC integration on E65!
    By xolmatic in forum Car Audio & Electronics sponsored by Bavsound
    Replies: 0
    Last Post: 02-14-2008, 08:06 PM

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
  •