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
T5Luke
Posts: 142
Joined: 11 November 2020
Year and Model: S60 T5 2001
Location: DE
Has thanked: 11 times
Been thanked: 130 times

Re: Vida CEM swapping

Post by T5Luke »

The CEM H are just the CEMs for the XC90, they have a minimal hardware difference but no real software difference between the CEMs of the other cars. From your own statistics you cant tell much about the difference, worldwiede there are so many CEMs so it doesnt matter if you cracked 3 of this type or 3 of this type. Some bytes are harder to detect as others. Some bytes need more switching between 0 and 1 in the hardware which could take a few ns longer. You can clearly see in a not so noisy measurement you can detect more things wich indicate a right byte as in a noisy measurement. I can tell you from my own tries, cracking was easy on 5 normal CEMs but in my XC90 the CEM H was the hardest which needed the most tries.

User avatar
repair
Posts: 19
Joined: 22 March 2021
Year and Model: S60 II 2015
Location: Latvia
Has thanked: 2 times
Been thanked: 3 times

Post by repair »

T5Luke wrote: 13 Apr 2021, 06:23 ...... but in my XC90 the CEM H was the hardest which needed the most tries.
Attempts with the same specified data at Teensy or did you cheat on something there?
Volvo S40, V40, V50, V60, S60, S80, V70, XC60, XC70, XC90, C30, C70 - Р1, Р2, Р3, 1998 - 2016 - language replacement DIM, ICM, PHM.

T5Luke
Posts: 142
Joined: 11 November 2020
Year and Model: S60 T5 2001
Location: DE
Has thanked: 11 times
Been thanked: 130 times

Post by T5Luke »

I have shown my minimalistic setup a few pages before. Just teensy, some jumper wires but i replaced mcp2515 on board by original one also i swapped crystall against a 16mhz version. I needed 70 samples to find code secure.

vtl
Posts: 4724
Joined: 16 August 2012
Year and Model: 2005 XC70
Location: Boston
Has thanked: 114 times
Been thanked: 604 times

Post by vtl »

I'm working with the CEM dump that always fails to detect pin[1] and struggles with pin[2] (when I cut corner and start cracking from position 2, with first 2 bytes predefined). Here's two similar pin comparison routines from the dump that always cracks and from the dump that fails on pin[1].

FFCAC9 96B6F900E0FF CMP.B:G -7H[FB],FFE000H
FFCACF 9A29 JNE FFCAF9H
FFCAD1 96B6F701E0FF CMP.B:G -9H[FB],FFE001H
FFCAD7 9A21 JNE FFCAF9H
FFCAD9 96B6FB02E0FF CMP.B:G -5H[FB],FFE002H
FFCADF 9A19 JNE FFCAF9H
FFCAE1 96B6F603E0FF CMP.B:G -AH[FB],FFE003H
FFCAE7 9A11 JNE FFCAF9H
FFCAE9 96B6F804E0FF CMP.B:G -8H[FB],FFE004H
FFCAEF 9A09 JNE FFCAF9H
FFCAF1 96B6FA05E0FF CMP.B:G -6H[FB],FFE005H
FFCAF7 DA03 JEQ FFCAFBH


FFCAD0 96B6F900E0FF CMP.B:G -7H[FB],FFE000H
FFCAD6 9A29 JNE FFCB00H
FFCAD8 96B6F701E0FF CMP.B:G -9H[FB],FFE001H
FFCADE 9A21 JNE FFCB00H
FFCAE0 96B6FB02E0FF CMP.B:G -5H[FB],FFE002H
FFCAE6 9A19 JNE FFCB00H
FFCAE8 96B6F603E0FF CMP.B:G -AH[FB],FFE003H
FFCAEE 9A11 JNE FFCB00H
FFCAF0 96B6F804E0FF CMP.B:G -8H[FB],FFE004H
FFCAF6 9A09 JNE FFCB00H
FFCAF8 96B6FA05E0FF CMP.B:G -6H[FB],FFE005H
FFCAFE DA03 JEQ FFCB02H

As you see, it is all identical, besides the addresses. So I'm wondering if that gives that crack/no crack difference? Maybe because the code resides in flash, the CPU has to select the proper flash page and read it all into instructions decoder pipeline. And the execution latency of all simple instructions from that page are too close to be detected over CAN?

So, say, the page is 16 bytes. In the first case, bytes with the MCU code related to comparing PIN bytes in positions 0 and 1 are on different flash pages. Byte 3 is on the same page like 2, and it detects somewhat harder than byte 2.

In the second case, bytes 0 and 1 are in the same page. Byte 0 always detects, byte 1 never detects. Byte 2 is on the next page and had to be fetched, with higher latency.

What do you think, guys?

Maybe we need to crack two bytes combo at a time, or even be more creative and account for all possible code alignments.

mikeak2001
Posts: 29
Joined: 30 March 2021
Year and Model: S70 1998 T5
Location: Wales
Has thanked: 3 times
Been thanked: 28 times

Post by mikeak2001 »

T5Luke wrote: 11 Apr 2021, 17:20 It seems there are a lot of counterfeight transceivers on the marked, 5V ICs which are sold as 3,3V ICs, they can only receive but not send by this voltage. If you use resistors (something around 2k) to pull up the rx line to 3,3V sending starts to work in some cases. I also had this fault in first tries, i even bought mcps and VP230 from big US distributor resoldered them and trouble was gone...
Thanks T5Luke,
Ordered new chips from RSonline last night. They got delivered today. Soldered in place now and I can now send and receive.
Pretty annoying when the counterfeit ones were more expensive (on ebay) than the genuine ones I just purchased.

Lessons learnt from the experience though.

User avatar
RickHaleParker
Posts: 7129
Joined: 25 May 2015
Year and Model: See Signature below.
Location: Kansas
Has thanked: 8 times
Been thanked: 958 times

Post by RickHaleParker »

T5Luke wrote: 13 Apr 2021, 06:23 The CEM H are just the CEMs for the XC90, they have a minimal hardware difference but no real software difference between the CEMs of the other cars.
The CEM-H is the K-line CEM used in all P2 cars from 1999 to 2004. CEM-H has a Motorola MC68386. It is called a CEM-H because it is physically shaped like a H. The CEM-L has a Renesas M32C and is physically shaped like a L.
Last edited by RickHaleParker on 13 Apr 2021, 13:09, edited 2 times in total.
⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙
1998 C70, B5234T3, 16T, AW50-42, Bosch Motronic 4.4, Special Edition package.
2003 S40, B4204T3, 14T twin scroll AW55-50/51SN, Siemens EMS 2000.
2004 S60R, B8444S TF80 AWD. Yamaha V8 conversion
2005 XC90 T6 Executive, B6294T, 4T65 AWD, Bosch Motronic 7.0.

vtl
Posts: 4724
Joined: 16 August 2012
Year and Model: 2005 XC70
Location: Boston
Has thanked: 114 times
Been thanked: 604 times

Post by vtl »

vtl wrote: 13 Apr 2021, 11:15 FFCAC9 96B6F900E0FF CMP.B:G -7H[FB],FFE000H
FFCACF 9A29 JNE FFCAF9H
FFCAD1 96B6F701E0FF CMP.B:G -9H[FB],FFE001H
FFCAD7 9A21 JNE FFCAF9H
FFCAD9 96B6FB02E0FF CMP.B:G -5H[FB],FFE002H
FFCADF 9A19 JNE FFCAF9H
Well, actually every advance in pin position would require crossing the flash page boundary and fetching another one, which is even better. All in presumption that the theory with flash pages is right...

T5Luke
Posts: 142
Joined: 11 November 2020
Year and Model: S60 T5 2001
Location: DE
Has thanked: 11 times
Been thanked: 130 times

Post by T5Luke »

RickHaleParker wrote: 13 Apr 2021, 12:40
T5Luke wrote: 13 Apr 2021, 06:23 The CEM H are just the CEMs for the XC90, they have a minimal hardware difference but no real software difference between the CEMs of the other cars.
The CEM-H is the K-line CEM used in all P2 cars from 1999 to 2004. CEM-H has a Motorola MC68386. It is called a CEM-H because it is physically shaped like a H. The CEM-L has a Renesas M32C and is physically shaped like a L.
Ok, then tell me what is this?
https://www.ebay.com/itm/Volvo-XC90-CE ... SwPJFgcVJI

The XC90 have some extra ICs on the CEM and it is called CEM-H then

MaxDenisov
Posts: 36
Joined: 6 March 2021
Year and Model: XC90 2010
Location: Moscow
Has thanked: 2 times

Post by MaxDenisov »

Today I was able to add a brand new remote(part of key) into my XC90 car using the found PIN and Vdash.
Half way passed - I can use the remote for lock and unlock the car now.
I still use a funny Thermapack bag to store my immo key and frozen berries during the day to be able to start the engine using broken immo(my key with ID48 works in low temp only)

I Hope soon I will find a way to add a new Immo key(blade with megamos ID48) into my car.
Attachments
thermopack.png
thermopack.png (761.75 KiB) Viewed 2389 times
Last edited by MaxDenisov on 13 Apr 2021, 13:25, edited 2 times in total.

User avatar
RickHaleParker
Posts: 7129
Joined: 25 May 2015
Year and Model: See Signature below.
Location: Kansas
Has thanked: 8 times
Been thanked: 958 times

Post by RickHaleParker »

T5Luke wrote: 13 Apr 2021, 13:11 Ok, then tell me what is this?
https://www.ebay.com/itm/Volvo-XC90-CE ... SwPJFgcVJI
It is a CEM-L.
If you consider a eBay vendor with a super low 88.9% Positive feedback as good source of facts ... You are beyond help. :wink:


CEM-H P2 1999 - 2004.
Image

CEM-L P2 2005 - 2014.
Image
⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙⸙
1998 C70, B5234T3, 16T, AW50-42, Bosch Motronic 4.4, Special Edition package.
2003 S40, B4204T3, 14T twin scroll AW55-50/51SN, Siemens EMS 2000.
2004 S60R, B8444S TF80 AWD. Yamaha V8 conversion
2005 XC90 T6 Executive, B6294T, 4T65 AWD, Bosch Motronic 7.0.

Post Reply
  • Similar Topics
    Replies
    Views
    Last post