OK here are the comparisons:
Original 42 drivers: 00100220C002020000001000 (original controllers, non powered mirrors)
New 42 drivers: 001402205001020000001000 (new controllers, powered mirrors)
Original 52 passenger: 00100020CE01020000001000 (original controllers, non powered mirrors)
New 52 passenger: 001400205E01020000001000 (new controllers, powered mirrors)
Hope someone can marry these up to what the individual bits and bytes mean
Thanks
42
00 10 02 20 C0 01 02 00 00 00 10 00
00 14 02 20 50 01 02 00 00 00 10 00
byte 1 diff (10 -> 14)
door exit light : not installed -> installed
byte 4 diff (C0 -> 50)
sync mirror adjustment : active -> not active
foldable mirrors : not installed -> installed
52
00 10 00 20 CE 01 02 00 00 00 10 00
00 14 00 20 5E 01 02 00 00 00 10 00
byte 1 diff (10 -> 14)
door exit light : not installed -> installed
byte 4 diff (CE -> 5E)
sync mirror adjustment : active -> not active
foldable mirrors : not installed -> installed
sync mirror adjustment is irrelevant.
foldable mirrors change is expected.
The only difference is the door exit light.
I'm not sure exit light refers to the puddle lighting or the sill plate lighting but your controllers think they have exit lights but they don't.
In a perfect automotive world, any possible fault that's related to those exit lights would have been expected to be described as such, but I know from past experience that the fault messages can be misleading. So there's a slight chance that controller is trying to send a signal to a non-existent circuit and that causes an open-circuit failure, with a possibly irrelevant description. If it was me, I would have changed the value of that byte from 14 to 10 and see what happens, I see no harm in that.