Platform ID

From PS3 Developer wiki
Jump to navigation Jump to search

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

Get 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.

Examples documented by users

PS3 Model Motherboard platform ID Speculation Notes
DEH-R1000 TMU-510 Cyt2.2 Cyt2.2 confirmed for DEH-R1000/TMU-510
DEH-R1010 TMU-510 Cyt2.2 Cyt2.2 confirmed for DEH-R1010/TMU-510
DEH-R1020 TMU-510 Cyt2.2 Cyt2.2 confirmed for DEH-R1020/TMU-510
DEH-R1030 TMU-520 Cyt3.1 Cyt3.1 confirmed for DEH-R1030/TMU-520
DEH-R1040 TMU-520 Cyt3.2 Cyt3.2 confirmed for DEH-R1040/TMU-520
DECR-1000 TMU-520 Cyt3.2 Cyt3.2 confirmed for DECR-1000/TMU-520
DEH-H1001-D COOKIE-13 Cok13 ?
DEH-H1000A-E COK-001 (Prototype) Cok14 Cok14 confirmed for DEH-H1000A-E http://pastie.org/private/jfry49hxsrbw0v6wr3crpa
CECHAxx / CECHBxx COK-001 Cok14 Cok14 confirmed for CECHAxx?/COK-001 http://pastie.org/private/m7ha5d7ngaaq6mpn0fnurq
CECHCxx / CECHExx COK-002 CokB10 CokB10 confirmed for CECHC04/COK-002
CECHGxx SEM-001 CokC12
CECHHxx DIA-001 CokD10 CokD10 confirmed for CECHH04/DIA-001/FW-min:1.97
CECHJxx / CECHKxx DIA-002 CokE10 DECHJ00A
CECHLxx / CECHMxx / CECHPxx / CECHQxx VER-001 CokF10 CokF10 confirmed for CECHL00/VER-001 and CECHP04/VER-001
DECR-1400 DEB-001 Deb01 Deb01 confirmed for DECR-1400/DEB-001
CECH-20xx DYN-001 CokG11 CokG11 confirmed for CECH-20xx/DYN-001 http://pastie.org/5394300
CECH-21xx SUR-001 CokH11 CECH-2104A (date code 0B). FW-min 3.20
CECH-25xx JTP-001 CokJ13 CokJ13 confirmed for CECH-2504B/JTP-001/datecode:0C
CECH-25xx JSD-001 CokJ20 CECH-2501A FW-min 3.50 http://pastie.org/8086813 and CECH-2501B FW-min 3.40
CECH-30xx KTE-001 CokK10 DECH-3000A
CECH-40xxB/C MSX-001 (NOR) CokM20 CokM20 confirmed for MSX-001(NOR)
? ???-??? CokM40 ?
? MPX-001 (NOR) CokM10 ?
CECH-40xxA MPX-001 (eMMC) CokM30 CokM30 confirmed for CECH-4004A/MPX-001(EMMC)/datecode:2D/FW-min:4.25
? NPX-001 (NOR) CokN10 CokN10 confirmed for NPX-001(NOR)
? NPX-001 (eMMC) CokN30 ?
? PPX-001 (NOR) CokP20 ?
CECH-42xxA PPX-001 (eMMC) CokP40 CokP40 confirmed for CECH-4204A/PPX-001(EMMC)/datecode:3C/FW-min:4.50
CECH-42xxB/C PQX-001 (NOR) CokP10 CokP10 confirmed for PQX-001(NOR)
CECH-42xxA PQX-001 (eMMC) CokP30 ?
? RTX-001 (NOR) CokR10 ?
CECH-43xxA RTX-001 (eMMC) ? CokR30 CokR30 confirmed for CECH-4301A/FW-min:4.60 (motherboard model not reported)
CECH-43xxB/C REX-001 (NOR) CokR20 ?
CECH-43xxA REX-001 (eMMC) cokR40 CokR40 confirmed for REX-001(eMMC)

Help Request

Dump platform info (coded by "3141card" as a standalone function for documenting purposes)

http://www.mediafire.com/?xdqi5j27w3tg0c1

  • How to use:
  1. Plug a storage device in usb0 (USB port closer to the Bluray drive)
  2. Install and boot the app... then the PS3 beeps 3 times... then the app automatically quits and returns to XMB (there is no display on screen, this is normal)
  3. A file with the name "platform_info.bin" is created in usb0
  4. Open this file in a hex editor, take note of the Cok*** (can be readed in ASCII in the hex editor)

Please report back your values by editing this page

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. Probably the Zego BCU-100, references can be found in the 'try_cpbusy' script inside the CP update for the DECR-1000 (2.00)

Example from syscon firmware

There is another table with the platform ID's of PS3 models inside the System Controller Firmware

Sample from syscon SW3-302 firmware v2.12.0
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.