-
Notifications
You must be signed in to change notification settings - Fork 13
The Ultimate Guide to Coding FG Module VIN numbers with Forscan
- ELM327 Adapter with MS-Can support OR
- ELM327 Adapter with an adapter harness that can switch the MS-CAN wires to the HS-CAN Pins on the OBDII adapter
- J2534 Interface with MS CAN
- Laptop with Windows(or Linux)
Following this procedure can potentially brick(read: completely f***) the module that is having its As Built Data modified. This procedure has yet to be reviewed by a third party, and therefore - is not verified as working. Use at your own risk.
Connect your laptop to your ELM327
adapter, and connect to the vehicle in Forscan. Most ELM327
labelled OBDII
dongles are not equipped with a setup to connect to Ford's Ms-CAN network. If this is you, click here to learn how to connect. A J2534 Interface
will not have this problem, as long as it is compatible with Fords vehicle network. Once connected, the first thing to do is take a back up of the As Built Data Files
.
It is always a good idea to take a backup of your vehicles data before modifying any configurations. Even if modifying only one module, save all of the modules data as .abt
file, as it can't hurt and may come in handy. This can be done in Forscan via the Module Configuration
section.
1. Select the Module to be Backed Up, ie Instrument Cluster(AS BUILT)
2. Select Save
& Save the .abt file
3. Select the Stop Icon
to exit the configuration
Each Module in the Interior Command Centre
is coded with the VIN number of the car it is from. This is a security feature from Ford. The PCM cannot have it's VIN number changed via this procedure, that is another topic all in itself. This document is really aimed at the MS-Can and the Entertainment System - The ICC. The Interior Command Centre Consists of the Audio Control Module(ACM, located at the CD Player), the Front Display Interface Module(FDIM, the display screen), the Audio Interface Module(AIM, ipod in the centre console) and the Bluetooth Phone Module (BPM). A fault code will be thrown if any module is in the system and is coded with a different VIN number to that which is coded to the Audio Control Module - but that does not necessarily stop a module from functioning. For example the FDIM will not be unlocked by forscan, so you will find it difficult to change the vin of the FDIM, however it will still function in the car with an ACM with a different VIN. To Unlock the ACM prior to changing the programmed VIN - Run the module calibration in the service tools section.
The ACM broadcasts the Vehicle Identification Number over the CAN. The other modules see it, and check their stored VIN against it. If a mismatch is detected, a fault code is thrown, sometimes. This is where the security code error comes from on the ICC. (Fact checked, proven false). It's not the PCM or PATS either. Likely just happens when battery is disconnected or the unit is "stolen", ie removed from one car put to into another.
Some example CAN data:
(1611284292.480645) can0 30B#583A1073B203F858 R <-- Audio
(1611284292.481682) can0 30D#0000001540B60000 R <-- Audio
(1611284292.482731) can0 30F#0A0A0A0A0A060000 R <-- Audio
(1611284292.483746) can0 311#1F8A1F0A1F1F5331 R <-- ICC settings
(1611284292.484736) can0 317#5739453836313031 R <-- VIN number Broadcast by ACM
(1611284292.485826) can0 6FC#0000000000000000 R <-- 0x6FC = 1788 in decimal....hmm
(1611284292.492122) can0 330#0000000200000000 R <-- Speed & RPM & Current Gear
(1611284292.494488) can0 50C#1102EE0000000000 R <-- Module Keep Alive Signal
(1611284292.502058) can0 353#029C01011BB46780 R <-- HVAC Data
(1611284292.529021) can0 409#2480524440914921 R <-- Body Settings
In order to "program" a module to the vehicle, you have to change the VIN number it has stored. This is different to changing the configuration options of a module, like activating the Reverse Camera or Police Mode. But the data is stored in the same place - the As Built Data.
6FPAAAJGS12345678
2. Convert it from plain text ascii into hexadecimal. Use a ASCII to hexadecimal converter. See footer for an explanation of hexadecimal.
3646504141414a47533132333435363738
Which is the same as:
36 46 50 41 41 41 4a 47 53 31 32 33 34 35 36 37 38
Starting at the first position, fill in the VIN number, 4 digits for the first 2 positions, and 2 digits for the third position. After filling out the first 10 digits of a line, a check sum should be auto-generated by Forscan fill in the checksum location with 00's.
Module ID | 1st | 2nd | 3rd + Checksum |
---|---|---|---|
ABC-01-01 |
3646 |
5041 |
4100 |
ABC-01-02 |
414A |
4753 |
3100 |
ABC-01-03 |
3233 |
3435 |
3600 |
ABC-01-04 |
3738 |
00 |
00 = checksum location - at the end of each line
is the same as:
Module ID | 1st | 2nd | 3rd + Checksum |
---|---|---|---|
ABC-01-01 |
6 F |
P A |
A 00 |
ABC-01-02 |
A J |
G S |
1 00 |
ABC-01-03 |
2 3 |
4 5 |
6 00 |
ABC-01-04 |
7 8 |
00 |
* Edited 27/11/2021 to fix error, using 'XX' as the dummy checksum will not work, VIN will revert to previous setting. Use '00' as a dummy checksum. Whoops! Thanks Bighalf [Link](https://forscan.org/forum/viewtopic.php?f=16&t=17755&p=73059&hilit=osb302#p73059)
The checksum locations can be filled in with 00.
Double Check everything, have you entered the hexadecimal of your vin correctly?
Australian FORScan users group
Modifying As Built Data Guide
What is ascii?
What is a hexadecimal?
What is a checksum?
Linux can recode your Falcon ICC
Professional & Deeper Level Module Programming
Ford Forums Aus
The Post that inspired this post