zeld/psa-update

Cannot dowload update for C4 2021

Closed this issue · 6 comments

Hello there!

I am sorry in advance if this is a wrong place to ask, as it might be a completely Citroen-side problem, but I have already tried updating in a dealership in my country (eastern Europe) and they were unable to do so but they say that the update exists.

I have been trying to update the firmware and navigation in my car, but for some reason both 'Citroen Update' app and psa-update CLI fail to find any update for my VIN.

  1. Citroen Update windows app (which was not very easy to find)

Screenshot (4)

  1. psa-update
*\psa-update-1.0.2-x86_64-pc-windows-msvc>psa-update VR7**************
Error: Device not found, make sure the VIN VR7************** is correct.
error: process didn't exit successfully: `target\debug\psa-update.exe` (exit code: 1)

// Slightly changed VIN to a lowercase letters just for fun

*\psa-update-1.0.2-x86_64-pc-windows-msvc>psa-update VR7**************
Error: Failed to retrieve device information, make sure the VIN VR7************** is correct.
error: process didn't exit successfully: `target\debug\psa-update.exe` (exit code: 1)

Here is the file I pulled from my car:

Package: ovip-int-firmware-version
Version: 42.03.31.32_NAC-r0
Status: install user installed
Architecture: armv7a
Installed-Time: 579

Package: map-eur
Version: 9.0.0-r0
Status: install ok half-installed
Architecture: armv7a

There is not much information on how to properly perform update without Citroen Update app or if it is worth doing.
I would really love to update firmware and maps.

Could you please help me to figure out:

  1. How to correctly check for the latest firmware and map versions?
  2. Is something wrong with the car VIN? Why Citroen Update says, it does not allow update for this vehicle?
  3. Is something wrong on Citroen side?
  4. Should I try contacting international Citroen support, as my dealership is useless?

Any insight on the issue is much appreciated!
Thanks in advance!

If I understand correctly, VIN-code does not matter much for downloading firmware only, as I am pretty sure that as device_info is only used to decide a value of is_nac, so as I am pretty sure it should be true in my case, this can be bypassed.

The issue is, I am getting 'Unknown VIN' error from request_available_updates, which looks like the issue might be with some DB on citroen side? Is it possible ty bypass VIN requirement for the request and still get correct firmware for all modules along with maps?

UPDATE:

Also tried few other VIN codes for the same model, with getting the same result.
Using a random C3 VIN code worked fine.|

UPDATE 2:
Sent requests to multiple Citroen dealerships, as well as sent a request detailing the issue to both
https://developer.groupe-psa.com/inc/ and https://developer.groupe-psa.io/

zeld commented

Hi, I did a bit of testing with and it worked fine with a VIN from a 2019 C4 with a NAC. I'll try do do some more extensive testing during the week-end. Maybe there is an issue with PSA databases? I'm interested if you have any feedback from them.

Your vehicle indeed has a NAC wave 4 according to https://sites.google.com/view/nac-rcc/system/nac/wave-4 and a newer version of the firmware exists. But to install this firmware version, you would need a valid license file (provided by the API, dependant on the VIN). On the other hand, navigation updates don't require the license file, you could manually download and install them.

Hey @zeld. Thank you for your reply. Here are the VINs I tested (C4 mark 3 2021+):

VR7BBYHZBME051796
VR7BAHNEAME059192
VR7BBYHZBPE008132

I have found those randomly on a car sales website.
C4 2019 is a previous generation model and they seem to work fine, but the never ones don't.

What is interesting that when using https://github.com/idlesign/vininfo, it displays similar results for all VINs:

% vininfo show VR7BBYHZBME051796
Basic:
Country: France
Manufacturer: UnsupportedBrand
Region: Europe
Years: 2021, 1991
% vininfo show VR7BAHNEAME059192
Basic:
Country: France
Manufacturer: UnsupportedBrand
Region: Europe
Years: 2021, 1991
% vininfo show VR7BBYHZBPE008132
Basic:
Country: France
Manufacturer: UnsupportedBrand
Region: Europe
Years: 2023, 1993

Example of a random C3 for which Citroen Update works:

% vininfo show VF72C9HPAJ4418514
Basic:
Country: France
Manufacturer: Citroën
Region: Europe
Years: 2018, 1988

I wonder if Citroen uses the very same python library to check Vehicle brand by VIN but this repos' WMI dictionary does not include ones starting with VR7* in its dictionary. It's a long shot, but why not, in my work I have seen a lot of messed up things.

Still might be Citroen DB, that is messed up. Did not get a response from APIs developers yet.
All the dealerships just told me that this is not their responsibility.

zeld commented

I checked again official Citroen Update 0.1.24 this morning, it uses the same API.

zeld commented

I was able to test successfully some VR7 VINs so that does not seem to be the issue.
Browsing the web for such issue, I found a few people (not many) encountering it. The way forward seems to raise the issue to the car vendor, as you did.

zeld commented

@casual-citroen-enjoyer If you agree I will close this ticket as it is an issue with Stellantis API/DB, not with psa-update CLI itself.