The Wayback Machine - https://web.archive.org/web/20220719220920/https://github.com/zeld/psa-update
Skip to content

zeld/psa-update

main
Switch branches/tags
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 

psa-update

CLI alternative to PSA (Peugeot / Citroën / DS / Opel) infotainment system update (NAC / RCC firmware and navigation maps), hopefully more robust.

Screenshot

Features:

  • Download of RCC / NAC firmware updates, and GPS navigation map updates (NAC only)
  • Resume of download in case of failure
  • Preparation of USB storage device for car system update
  • Lightweight self-contained executable that can run on multiple platforms: Windows, Linux, MacOS

Usage

The command line executable can be invoked in a terminal using vehicle VIN as a parameter:

$ psa-update <VIN>

This will check for available RCC or NAC updates, and interactively ask for download and extraction of the firmware update to a USB device.

To check for updates of both firmware and GPS navigation map (NAC only):

$ psa-update <VIN> --map eur

The list of available maps identifiers can be obtained using the help:

$ psa-update --help

Once copied to the USB drive, the update can be applied on the infotainement system following PSA instructions. For example for Peugeot: RCC instructions, NAC instructions.

Install

Binaries are available for Windows (x86-64), Linux (x86-64) and MacOS (x86-64) in the releases section: simply download and extract the psa-update executable. For other platforms the project can be built from source code (see below).

Build from source

To build and run from source code using stable rust compiler toolchain (version 1.54+):

$ git clone https://github.com/zeld/psa-update.git
$ cargo run

Proxy

Download is possible behind a proxy provided the http_proxy and https_proxy environment variables are correctly configured. In a Linux or MacOS shell:

export http_proxy=<host>:<port>
export https_proxy=<host>:<port>

In a Windows CMD prompt:

SET http_proxy=<host>:<port>
SET https_proxy=<host>:<port>

Logging

Logging can be enabled using the RUST_LOG variable. For example to enable debug log level:

RUST_LOG="debug" ./psa-update

Credits

  • Inspired from the Linux script in this french forum post
  • For the list of navigation maps, and associated content, this french forum post
  • Mirror of firmware and map updates on this site

About

CLI alternative to PSA (Peugeot / Citroën / Opel) NAC / RCC firmware update

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages