E65 N73 CAN bus

Your chance to introduce yourself and your vehicle
User avatar
Zeiss
Posts: 110
Joined: Tue Oct 05, 2021 6:32 pm
Location: Germany
Github Username: HeinrichG-V12

Re: E65 N73 CAN bus

Post by Zeiss »

In this document: https://mega.nz/file/H55SwSST#ihZrrF6eQLv1-vUP3USn5kiGMfMDpIBpwXhy1B3CLO0 is ALL THE STUFF WE NEED!

The only thing missing there are the conversion formulas, but I have most of them. I have a DBC-File with all the signals, factors, offsets, units and etc, but there no can messages... so what I'm doing right now is creating the CAN messages and adding proper signals to the messages.

Check this:
grafik.png
grafik.png (17.49 KiB) Viewed 7762 times
And this, this is CAN-ID 0x0B5:
grafik.png
grafik.png (27.99 KiB) Viewed 7762 times
0x0B5 is fully decoded. :) I will update the DBC-File in my github and description.

Here is the CAN-ID 0x0CE:
grafik.png
grafik.png (8.14 KiB) Viewed 7760 times
Regards,
Heinrich

My GitHub
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: E65 N73 CAN bus

Post by AndreyB »

Does anyone here speak German by any chance?
image.png
image.png (172.44 KiB) Viewed 7753 times
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
Zeiss
Posts: 110
Joined: Tue Oct 05, 2021 6:32 pm
Location: Germany
Github Username: HeinrichG-V12

Re: E65 N73 CAN bus

Post by Zeiss »

Where did you find this?

It is CAN message layout of 0x0A8, like this:
grafik.png
grafik.png (29.92 KiB) Viewed 7748 times
Very interesting is the first row in the table (Checksum_TORQ_1_DME), the calculation is described in a3)
Regards,
Heinrich

My GitHub
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: E65 N73 CAN bus

Post by AndreyB »

Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: E65 N73 CAN bus

Post by AndreyB »

I've converted Log2 to format consumed by https://github.com/brent-stone/CAN_Reverse_Engineering/

six clusters were identified the most obvious one is correlation between engine temperature and engine RPM warning

https://github.com/HeinrichG-V12/E65_ReverseEngineering/blob/main/docs/0x1D0.md https://github.com/HeinrichG-V12/E65_ReverseEngineering/blob/main/docs/0x332.md

Too much output to attach it all - figures.zip has half of the total figures
Attachments
figures.zip
(9.05 MiB) Downloaded 188 times
0x1d0.png
0x1d0.png (335.67 KiB) Viewed 7249 times
0xba.png
0xba.png (196.58 KiB) Viewed 7249 times
cluster_5.png
cluster_5.png (212.48 KiB) Viewed 7249 times
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: E65 N73 CAN bus

Post by AndreyB »

Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: E65 N73 CAN bus

Post by AndreyB »

PS: INPA did not connect to TCU via RE as man-in-the-middle, some extra messages would need to be relayed to get that working I guess. Hopefully that would not be not hard to figure out - I would just need to see what new CAN packets appear on the bus when INPA is active.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
Zeiss
Posts: 110
Joined: Tue Oct 05, 2021 6:32 pm
Location: Germany
Github Username: HeinrichG-V12

Re: E65 N73 CAN bus

Post by Zeiss »

You managed to make the gearbox happy with Proteus between the gearbox and the engine? What messages did you let through?

That's amazing! Congratulations!
Regards,
Heinrich

My GitHub
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: E65 N73 CAN bus

Post by AndreyB »

Zeiss wrote:
Mon Feb 14, 2022 4:33 pm
You managed to make the gearbox happy with Proteus between the gearbox and the engine? What messages did you let through?
Yep exactly! The list is at https://github.com/rusefi/rusefi/blob/056f101dd49ddd6cb17bf781457d27cbf9ff684b/firmware/config/engines/bmw_n73.cpp#L38
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
Zeiss
Posts: 110
Joined: Tue Oct 05, 2021 6:32 pm
Location: Germany
Github Username: HeinrichG-V12

Re: E65 N73 CAN bus

Post by Zeiss »

Awesome!

EDIT: Just this lines:

CAN_BMW_E90_TORQUE_1 = 0x0A8
CAN_BMW_E90_TORQUE_2 = 0x0A9
CAN_BMW_E90_RPM_THROTTLE = 0x0AA
CAN_BMW_E90_DSC_TORQUE_DEMAND = 0x0B6
CAN_BMW_E90_WHEEL_SPEED = 0x0CE
CAN_BMW_E90_IGNITION_KEY = 0x130
CAN_BMW_E65_GEAR_SELECTOR = 0x192
CAN_BMW_E90_DSC_STATUS = 0x19E
CAN_BMW_E90_DSC_SPEED = 0x1A0
CAN_BMW_E90_COOLANT = 0x1D0
CAN_BMW_E90_LOCKING = 0x2FC
CAN_BMW_E90_MSA = 0x308
CAN_BMW_E90_DASH_ON = 0x332
CAN_BMW_E90_ECU_NETWORK = 0x492
CAN_BMW_GEAR_TORQUE_DEMAND2 = 0x0B5
CAN_BMW_GEAR_TRANSMISSION_DATA = 0x0BA
CAN_BMW_GEAR_GEARBOX_DATA_2 = 0x1A2
CAN_BMW_GEAR_TRANSMISSION_DISP = 0x1D2
CAN_BMW_GEAR_GANG_STATUS = 0x304
CAN_BMW_GEAR_NETWORK = 0x498
CAN_BMW_GEAR_SERVICE = 0x598

?

That's it?
Regards,
Heinrich

My GitHub
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: E65 N73 CAN bus

Post by AndreyB »

I've got a couple of extra packet IDs when I've used INPA

TCU INPA request 0x0618 and ECU#1 0x612, with 0x6f1 maybe response from both.

Somebody on the internet says UDS and they mention 62x and 630x packets which I have no seen so far. See https://www.bimmerfest.com/threads/enet-can-diagnostic-messages-for-bench-coding.1398888/
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
Zeiss
Posts: 110
Joined: Tue Oct 05, 2021 6:32 pm
Location: Germany
Github Username: HeinrichG-V12

Re: E65 N73 CAN bus

Post by Zeiss »

BMW F-series are using diagnostic over ethernet, and not k-line like out E-Series.

I've just looked in my log files, I don't have 0x612 or 0x618 there. It really seems to have something to do with the diagnostics.The 0x6xx number range is for "services", it starts at 0x580.
Regards,
Heinrich

My GitHub
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: E65 N73 CAN bus

Post by AndreyB »

Zeiss wrote:
Tue Feb 22, 2022 9:27 am
BMW F-series are using diagnostic over ethernet, and not k-line like out E-Series.
E-Series ECU and TCU diagnostics seems to be CAN, it's gateway which does k-line translation. Might be similar story with F-series not that we care for our purposes at this point.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: E65 N73 CAN bus

Post by AndreyB »

Another milestone: no scary messages with me re-packing https://www.loopybunny.co.uk/CarPC/can/0AA.html

Need to relay kick-down flag because I think I've lost kick-down without it :) Open issue - no "R/P/N" messages only see packets for forward gears for whatever reason.

https://github.com/rusefi/rusefi/commit/387e957df0c9578f1f46ad7e96ea464a33a44f79
2022-02-23_16_47_37_736: EngineState: LUA: original 69 2A 5 0 CE A 80 36
2022-02-23_16_47_37_737: EngineState: LUA: repacked 83 0 0 0 CE A 0 0

2022-02-23_16_47_37_737: EngineState: LUA: original 5A 1B 5 0 CE A 80 36
2022-02-23_16_47_37_738: EngineState: LUA: repacked 84 1 0 0 CE A 0 0
with current code I take RPM and PPS bytes, apply my own counter and apply my own checksum. Exciting!
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
Zeiss
Posts: 110
Joined: Tue Oct 05, 2021 6:32 pm
Location: Germany
Github Username: HeinrichG-V12

Re: E65 N73 CAN bus

Post by Zeiss »

Here is the definition of our 0x0AA message: https://github.com/HeinrichG-V12/E65_ReverseEngineering/blob/main/docs/0x0AA.md (Torque 3)
Regards,
Heinrich

My GitHub
Post Reply