Platform ID
Description
Platform ID (or plat.id / HW id) is a hardware identifyer that indicates the target hardware revision
- The Platform ID name includes the Chassis Type letter. See also: Prototypes
- Dont confuse the Platform ID with other motherboard identifyers located in cISD1 section as:
- board_id is the serial number "printed" in the motherboard. In PS3's from euro region (only) the board_id is included in the "PS3 serial" printed in a white sticker (e.g. 27430423)
- kiban_id is the barcode "printed" in the motherboard
How to get the Platform ID
Apps
Syscon Error Log Utility inside the PS3 Advanced Toolset: https://github.com/bucanero/psl1ghtv2_ports/releases (v1.0.1 or later)
- How to use it:
- Plug a storage device into any USB port
- Install and boot the app... choose the Syscon Error Log function... then the app automatically quits and returns to XMB (there is no display on screen, this is normal)
- A file with the name "sm_error.log" is created on the storage drive
- Open this file in a text editor, take note of the platform id
GameOS
The Platform ID can be retrieved from GameOS by using syscall 387 sys_sm_get_system_info
#include <ppu-lv2.h>
s32 lv2_get_platform_info(uint8_t platform_info[0x18]){
lv2syscall1(387, (uint64_t) info);
return_to_user_prog(s32);
}
This is what you could get:
0305500000000040436f6b42313000000000b5ed00100000
Where
- 0x030550 is the PS3 firmware version, also if spoofed to another FW
- 0x40436f6b423130 converted to ascii is @CokB10 and that is the Platform ID
- Since COK-002 motherboard the fourth letter of the Platform ID indicates the chassis, e.g. "CokB10" is Chassis Type = B
- 0xb5ed is the Build Number also if spoofed to another FW
Syscon UART
You can also get the Platform ID using the hversion command over the Syscon serial interface.
On Mullion models this command is only available in the internal mode, Sherwood models need to be patched in order to unlock it.
Platform ID locations
Example from syscon firmware
There is a table with the Platform ID's of all the PS3 models supported by the Syscon Firmware, in every syscon revision some more Platform IDs was added, this is s sample from one of the latest syscon revisions with the purpose of showing the complete list. The support of all this platform ID's is not complete, some of the oldest ones are not fully supported
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 0002A350 43 6F 6B 31 31 00 Cok11. 0002A360 43 6F 6B 31 32 00 43 6F 6B 31 33 00 43 6F 6B 31 Cok12.Cok13.Cok1 0002A370 34 00 43 6F 6B 42 31 30 00 43 6F 6B 43 31 30 00 4.CokB10.CokC10. 0002A380 43 6F 6B 43 31 31 00 43 6F 6B 43 31 32 00 43 6F CokC11.CokC12.Co 0002A390 6B 44 31 30 00 43 6F 6B 45 31 30 00 43 6F 6B 46 kD10.CokE10.CokF 0002A3A0 31 30 00 43 6F 6B 47 31 30 00 43 6F 6B 47 31 31 10.CokG10.CokG11 0002A3B0 00 43 6F 6B 48 31 30 00 43 6F 6B 48 31 31 00 43 .CokH10.CokH11.C 0002A3C0 6F 6B 4A 31 33 00 43 6F 6B 4B 31 30 00 43 6F 6B okJ13.CokK10.Cok 0002A3D0 4D 32 30 00 43 6F 6B 4D 34 30 00 43 6F 6B 4E 31 M20.CokM40.CokN1 0002A3E0 30 00 43 6F 6B 4E 33 30 00 43 6F 6B 4E 31 30 00 0.CokN30.CokN10. 0002A3F0 75 6E 6B 6E 6F 77 6E 00 unknown.
But in syscon Sherwood series the Platform ID is stored at the start of the emulated EEPROM, the first 2 values located at offset 0x60000 (SW) or 0xA0000 (SW2/SW3). First byte = Platform ID (hex), next 8 bytes = Platform ID (string, null terminated). Dont take this offsets of the emulated EEPROM as something strict because sherwood uses "bad block remapping" and "wear leveling" this features allows to relocate the data at different offsets (probably in blocks of lenght 2 bytes)
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 000A0000 B0 43 6F 6B 4D 31 30 00 00 51 60 30 FF FF FF FF °CokM10..Q`0ÿÿÿÿ 000A0010 01 4E 00 FF FF 16 03 BC 2C FF FF FF FF FF FF FF .N.ÿÿ..¼,ÿÿÿÿÿÿÿ 000A0020 00 02 00 00 03 C8 78 FF FF FF FF FF FF FF FF FF .....Èxÿÿÿÿÿÿÿÿÿ 000A0030 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0040 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0050 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0060 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0070 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0080 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0090 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A00A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A00B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A00C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A00D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A00E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A00F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0100 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0110 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0120 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0130 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0140 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0150 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0160 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0170 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0180 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0190 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A01A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A01B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A01C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A01D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A01E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A01F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0200 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0210 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0220 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0230 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 000A0240 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
- In the sample above: Platform ID = 0xB0 (hex), CokM10 (string)
Example from syscon config
Since Syscon SW3 Series (CECH-30xx / KTE-001 motherboard or newer) the Platform ID is also "hardcoded" at offset 0x0 of the emulated EEPROM, in both formats: first byte = Platform ID (hex), next 8 bytes = Platform ID (string, null terminated)
The usual way to get the Platform ID by UART is with the command "hversion" but is locked by default (not available in syscon "external mode" access), however we can read this bytes in raw with the command "r" (available in syscon "external mode" access). See Syscon Firmware#Sherwood
> Type this in the syscon UART interface: r [offset][lenght] > r 0 9
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00000000 90 43 6F 6B 4B 31 30 00 00 .CokK10..
- In the sample above: Platform ID = 0x90 (hex), CokK10 (string)
Example from decrypted lv0
The first 3 (or 4) letters of the Platform ID names are located in a table inside lv0, this is an small sample of that table, for more info see: Discussion
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 000379C0 47 6E 6F 00 00 00 00 00 43 6F 6B 00 00 00 00 00 Gno.....Cok..... 000379D0 43 79 74 32 00 00 00 00 43 79 74 33 00 00 00 00 Cyt2....Cyt3.... 000379E0 53 68 72 00 00 00 00 00 43 79 74 31 00 00 00 00 Shr.....Cyt1....
- Shr = Shreck (0.00)
- Cyt = Cytology (0.30)
- Cok = Cookie (0.30)
- Gno = Gnome (2.00)
Platform ID lists
Shreck Series
PS3 Model | Motherboard | Platform ID | Notes | |||
---|---|---|---|---|---|---|
Text | Hex(Mullion) | Hex(Sherwood) | Type | |||
? | ? | Shr1.0 | 0x00000010 | N/A | ||
? | ? | Shr1.1 | 0x00000011 | N/A | ||
? | ? | Shr1.2 | 0x00000012 | N/A | ||
? | ? | Shr-4D | 0x00000013 | N/A | ||
? | ? | Shr1.3 | 0x00000014 | N/A | ||
? | ? | Shr-LC | 0x00000015 | N/A | ||
? | ? | Shr1.4 | 0x00000016 | N/A | ||
? | ? | Shr1.5 | 0x00000017 | N/A | ||
? | ? | Shr2.0 | 0x00000020 | N/A | ||
? | ? | Shr2.1 | 0x00000021 | N/A | ||
? | ? | Shr2.2 | 0x00000022 | N/A | ||
? | ? | Shr2.3 | 0x00000023 | N/A | ||
? | ? | Shr2.4 | 0x00000024 | N/A | ||
? | ? | Shr2.5 | 0x00000025 | N/A | ||
? | ? | Shr2.6 | 0x00000026 | N/A | ||
? | ? | Shr3.0 | 0x00000030 | N/A | ||
? | ? | Shr3.1 | 0x00000031 | N/A | ||
? | ? | Shr3.2 | 0x00000032 | N/A | ||
? | ? | Shr3.2-4 | 0x00000033 | N/A | ||
? | ? | Shr3.3 | 0x00000034 | N/A | ||
? | ? | Shr4.0 | 0x00000040 | N/A |
Cytology Series
PS3 Model | Motherboard | Platform ID | Notes | |||
---|---|---|---|---|---|---|
Text | Hex(Mullion) | Hex(Sherwood) | Type | |||
? | ? | Cyt1.0 | 0x20000010 | N/A | ||
? | ? | Cyt1.1 | 0x20000011 | N/A | ||
? | ? | Cyt1.2 | 0x20000012 | N/A | ||
? | ? | Cyt2.0 | 0x20000020 | N/A | ||
? | ? | Cyt2.1 | 0x20000021 | N/A | ||
DEH-R1000 | TMU-510 | Cyt2.2 | 0x20000022 | N/A | Cyt2.2 confirmed for DEH-R1000/TMU-510 | |
DEH-R1010 | TMU-510 | Cyt2.2 | 0x20000022 | N/A | Cyt2.2 confirmed for DEH-R1010/TMU-510 | |
DEH-R1020 | TMU-510 | Cyt2.2 | 0x20000022 | N/A | Cyt2.2 confirmed for DEH-R1020/TMU-510 | |
? | ? | Cyt3.0 | 0x20000030 | N/A | ||
DEH-R1030 | TMU-520 | Cyt3.1 | 0x20000031 | N/A | Cyt3.1 confirmed for DEH-R1030/TMU-520 | |
DEH-R1040 | TMU-520 | Cyt3.2 | 0x20000032 | N/A | Cyt3.2 confirmed for DEH-R1040/TMU-520 | |
DECR-1000 | TMU-520 | Cyt3.2 | 0x20000032 | N/A | Cyt3.2 confirmed for DECR-1000/TMU-520 | |
? | ? | Cyt3.3 | 0x20000033 | N/A | ||
? | ? | Cyt3.4 | 0x20000034 | N/A |
Cookie Series
PS3 Model | Motherboard | Platform ID | Notes | |||
---|---|---|---|---|---|---|
Text | Hex(Mullion) | Hex(Sherwood) | Type | |||
? | ? | Cok01 | 0x10000010 | N/A | ||
? | ? | Cok02 | 0x10000020 | N/A | ||
? | ? | Cok03 | 0x10000030 | N/A | ||
? | ? | Cok05 | 0x10000050 | N/A | ||
? | ? | Cok08 | 0x10000080 | N/A | ||
? | ? | Cok11 | 0x100000B0 | 0x01 | Undocumented PS3 Model DEH-H1001-B with suffix B (ascii) = 0xB (hex) = 11 (dec) = Cok11, Motherboard COOKIE-11 ? | |
? | ? | Cok12 | 0x100000C0 | 0x02 | Undocumented PS3 Model DEH-H1001-C with suffix C (ascii) = 0xC (hex) = 12 (dec) = Cok12, Motherboard COOKIE-12 ? | |
DEH-H1001-D | COOKIE-13 | ? | ? | ? | Cok13 ? / 0x100000D0 ? / 0x03 ? | |
DEH-H1000A-E | COK-001(Proto) | Cok14 | 0x100000E0 | 0x04 | Cok14 confirmed for DEH-H1000A-E | |
CECHAxx CECHBxx |
COK-001 | Cok14 | 0x100000E0 | 0x04 | Cok14 confirmed for CECHAxx?/COK-001 | |
CECHCxx CECHExx |
COK-002 | CokB10 | 0x10000100 | 0x10 | CokB10 confirmed for CECHC04/COK-002 | |
? | ? | CokC10 | 0x10000200 | 0x20 | ||
? | ? | CokC11 | 0x10000201 | 0x21 | ||
CECHGxx | SEM-001 | CokC12 | 0x10000202 | 0x22 | CokC12 confirmed for CECHGxx | |
CECHHxx | DIA-001 | CokD10 | 0x10000300 | 0x30 | CokD10 confirmed for CECHH04/DIA-001/FW-min:1.97 | |
CECHJxx CECHKxx |
DIA-002 | CokE10 | 0x10000301 | 0x40 | CokE10 confirmed for DECHJ00A | |
DECR-1400 | DEB-001 | Deb01 | 0x10000301 | 0x40 | Hardcoded | Deb01 confirmed for DECR-1400/DEB-001 |
CECHLxx CECHMxx CECHPxx CECHQxx |
VER-001 | CokF10 | N/A | 0x50 | CokF10 confirmed for CECHL00/VER-001 and CECHP04/VER-001 | |
? | ? | CokG10 | N/A | 0x60 | ||
CECH-20xx | DYN-001 | CokG11 | N/A | 0x61 | CokG11 confirmed for CECH-20xx/DYN-001 | |
? | ? | CokH10 | N/A | 0x70 | PS3 model CBEH-H2001 with motherboard SURTEES-03 ? | |
CECH-21xx | SUR-001 | CokH11 | N/A | 0x71 | CokH11 confirmed for CECH-2104A (date code 0B). FW-min 3.20 | |
? | ? | CokJ12 | N/A | 0x80 | ||
CECH-25xx | JTP-001 | CokJ13 | N/A | 0x80 | CokJ13 confirmed for CECH-2504B/JTP-001/datecode:0C | |
CECH-25xx | JSD-001 | CokJ20 | N/A | 0x80 | Hardcoded | CokJ20 confirmed for CECH-2501A FW-min 3.50 and CECH-2501B FW-min 3.40 |
CECH-30xx | KTE-001 | CokK10 | N/A | 0x90 | CokK10 confirmed for DECH-3000A | |
CECH-40xxB/C | MSX-001(NOR) | CokM20 | N/A | 0xB0 | CokM20 confirmed for MSX-001(NOR) | |
? | ???-??? | ? | N/A | ? | CokM40 ? / 0xB8 ? | |
? | MPX-001(NOR) | ? | N/A | ? | hardcoded | CokM10 ? / 0xB0 ? |
CECH-40xxA | MPX-001(eMMC) | CokM30 | N/A | 0xB8 | hardcoded | CokM30 confirmed for CECH-4004A/MPX-001(EMMC)/datecode:2D/FW-min:4.25 |
? | NPX-001(NOR) | CokN10 | N/A | 0xA0 | CokN10 confirmed for NPX-001(NOR) | |
? | NPX-001(eMMC) | ? | N/A | ? | CokN30 ? / 0xA8 ? | |
? | ? | CokN20 | N/A | 0xA0 | hardcoded - speculation | |
? | ? | CokN40 | N/A | 0xA8 | hardcoded - speculation | |
? | PPX-001(NOR) | ? | N/A | ? | hardcoded - speculation | CokP20 ? / 0xC0 ? |
CECH-42xxA | PPX-001(eMMC) | CokP40 | N/A | 0xC8 | hardcoded - needs to be confirmed | CokP40 confirmed for CECH-4204A/PPX-001(EMMC)/datecode:3C/FW-min:4.50 |
CECH-42xxB/C | PQX-001(NOR) | CokP10 | N/A | 0xC0 | hardcoded | CokP10 confirmed for PQX-001(NOR) |
CECH-42xxA | PQX-001(eMMC) | CokP30 | N/A | 0xC8 | hardcoded | CokP30 confirmed for PQX-001(eMMC) |
? | RTX-001(NOR) | ? | N/A | ? | hardcoded - speculation | CokR10 ? / 0xD0 ? |
CECH-43xxA | RTX-001(eMMC) ? | CokR30 | N/A | 0xD8 | hardcoded - needs to be confirmed | CokR30 confirmed for CECH-4301A/FW-min:4.60 (motherboard model not reported) |
CECH-43xxB/C | REX-001(NOR) | ? | N/A | ? | hardcoded - speculation | CokR20 ? / 0xD0 ? |
CECH-43xxA | REX-001(eMMC) | cokR40 | N/A | 0xD8 | hardcoded | CokR40 confirmed for REX-001(eMMC) |
Gnome Series
Probably the Zego BCU-100