Login Register

Vida CEM swapping

A mid-size luxury crossover SUV, the Volvo XC90 made its debut in 2002 at the Detroit Motor Show. Recognized for its safety, practicality, and comfort, the XC90 is a popular vehicle around the world. The XC90 proved to be very popular, and very good for Volvo's sales numbers, since its introduction in model year 2003 (North America). P2 platform.
Post Reply
wxp73
Posts: 7
Joined: 29 March 2024
Year and Model: V70 T5 2001
Location: Spain
Has thanked: 1 time
Been thanked: 1 time

Re: Vida CEM swapping

Post by wxp73 »

vtl wrote: 20 Nov 2024, 20:18 your dump can be byte swapped or not
I tried both (swapped and not), the CEMTool still said, that the PIN isn't correct.

V70user
Posts: 13
Joined: 10 March 2024
Year and Model: 2003 V70 2.3T5
Location: Poland
Has thanked: 1 time
Been thanked: 3 times

Post by V70user »

CEMTool is , let's say, incomplete and in that state won't work. But it can be fixed by using two subprograms.
Car must be sent into programming mode and then click "Program" button in CEMTool's window.
After writing car must be pulled to normal mode, by sending reset commands.

Yariy
Posts: 41
Joined: 1 July 2024
Year and Model: XC90
Location: Moskow
Has thanked: 13 times
Been thanked: 10 times

Post by Yariy »

Hello everyone I am writing a CEMB configuration modification program using the J2534 adapter (Scanmatik 2 Pro). Using the BDM programmer, I read the full firmware of the 28F400. I read the configuration using J2534 and can change it, enter CEM-B into programming mode and exit programming mode. Now I have a few questions.
1. Based on the dataset 28F400, to write the configuration to CEM-B, you need to send commands to erase and write the entire memory area #8000 - #20000. It's very slow. Are there no other options?
2. I read the VIN area (#8000 - #8057) and the configuration area (#8100 - #818D) using the J2534 adapter. Does anyone know what lies in the areas (#8200 - #821F) and (#10000 - #10099) 28F400.
I will be very grateful for your help.

dikidera
Posts: 1304
Joined: 15 August 2022
Year and Model: S60 2005
Location: Galaxy far far away
Has thanked: 67 times
Been thanked: 175 times

Post by dikidera »

No other way around it, I haven't benchmarked but writing is slow(on other similar chips), if it's only one block it will be fast but still will take a few minutes per block.

Yariy
Posts: 41
Joined: 1 July 2024
Year and Model: XC90
Location: Moskow
Has thanked: 13 times
Been thanked: 10 times

Post by Yariy »

dikidera wrote: 23 Nov 2024, 06:26 No other way around it, I haven't benchmarked but writing is slow(on other similar chips), if it's only one block it will be fast but still will take a few minutes per block.
Thank you for your reply. I'll keep it in mind.
I want to change the configuration with only a PIN code. To do this, I need to know how to count over the CAN area starting from #8200 and from #10000 in order to write the entire area from #8000 to #20000. I'll try to figure it out.

Treur
Posts: 126
Joined: 16 November 2024
Year and Model: 2007 V70
Location: Estonia
Has thanked: 3 times
Been thanked: 6 times

Post by Treur »

In general, I wrote a pin search for L and H CEM via UDS by j2534 (dice, skanmatik….). Pin is found. SBL is needed for further work. I have one from io-terminal, but it is encrypted. And I have one from Smok (I can write config, but don't know other commands).

I also tried to make a time attack, but it is unlikely to be implemented using J2534

Dudde
Posts: 64
Joined: 22 January 2020
Year and Model: 2005 V70 and more
Location: Finland
Has thanked: 14 times
Been thanked: 17 times

Post by Dudde »

Treur wrote: 27 Nov 2024, 04:38 In general, I wrote a pin search for L and H CEM via UDS by j2534 (dice, skanmatik….). Pin is found. SBL is needed for further work. I have one from io-terminal, but it is encrypted. And I have one from Smok (I can write config, but don't know other commands).
What commands do you need or what do you need to do?
It is possible to read/write cem eeprom, i can get you canbus log if you want.

Treur
Posts: 126
Joined: 16 November 2024
Year and Model: 2007 V70
Location: Estonia
Has thanked: 3 times
Been thanked: 6 times

Post by Treur »

Dudde wrote: 27 Nov 2024, 04:54
Treur wrote: 27 Nov 2024, 04:38 In general, I wrote a pin search for L and H CEM via UDS by j2534 (dice, skanmatik….). Pin is found. SBL is needed for further work. I have one from io-terminal, but it is encrypted. And I have one from Smok (I can write config, but don't know other commands).
What commands do you need or what do you need to do?
It is possible to read/write cem eeprom, i can get you canbus log if you want.
I need adequate SBL.
Log from what device? I think, if I have logs from Smok it may help

Via SBL possible read/write all cpu contents, and eprom. I can read/write P1/P2/P3 DIM, ICM, SRS, CCM, UEM

dikidera
Posts: 1304
Joined: 15 August 2022
Year and Model: S60 2005
Location: Galaxy far far away
Has thanked: 67 times
Been thanked: 175 times

Post by dikidera »

Treur wrote: 27 Nov 2024, 04:38 In general, I wrote a pin search for L and H CEM via UDS by j2534 (dice, skanmatik….). Pin is found. SBL is needed for further work. I have one from io-terminal, but it is encrypted. And I have one from Smok (I can write config, but don't know other commands).

I also tried to make a time attack, but it is unlikely to be implemented using J2534
If you can share SBL perhaps I can help with reverse engineering? The CEM mcu is not something I am familiar with, but I do learn quickly.

Treur
Posts: 126
Joined: 16 November 2024
Year and Model: 2007 V70
Location: Estonia
Has thanked: 3 times
Been thanked: 6 times

Post by Treur »

dikidera wrote: 27 Nov 2024, 06:26
Treur wrote: 27 Nov 2024, 04:38 In general, I wrote a pin search for L and H CEM via UDS by j2534 (dice, skanmatik….). Pin is found. SBL is needed for further work. I have one from io-terminal, but it is encrypted. And I have one from Smok (I can write config, but don't know other commands).

I also tried to make a time attack, but it is unlikely to be implemented using J2534
If you can share SBL perhaps I can help with reverse engineering? The CEM mcu is not something I am familiar with, but I do learn quickly.
I can give you a CAN trace, it contains 1 part not encoded SBL, this part decode next 2 parts of SBL that’s is coded. All 3 parts in this trace. I have also SBL for other P3 modules. As I see, the algoritm is same.

I can convert 1 no encoded part to .bin It contain algoritm for decode other parts.

Post Reply
  • Similar Topics
    Replies
    Views
    Last post