PS4 UART Guide

This is a guide for diagnosing Pulsing blue light of death on the PS4.

Tools you will need:

 * A programmer to dump the flash (I use CH341A)


 * Proper adapter for the bios chip (see below)


 * Programmer Software (I use AsProgrammer)


 * Serial monitoring software (I use Arduino IDE)


 * A USB to TTL 3.3v converter (I use CH341A)


 * Some insulated wire (needs to be thick enough)


 * Hex Editing Software (I use HxD)


 * BwE's PS4 NOR Validator


 * Soldering Iron


 * Hot air station


 * Solder


 * Flux

Starting Up
Firstly, you'll need to note the model of your motherboard. Each model has a different location for the UART pins.

Note the model number of your BIOS chip.

Dumping/Patching
The Golden Rule When Dumping: Always dump multiple times, and then compare them with each other (using the comparison function in HxD) to make sure they are the same.

NOT DOING SO MAY MAKE YOUR PS4 UNUSABLE

Desolder the bios chip from the PS4 motherboard, then solder it to an appropriate adapter.

Input your bios chip details in the programming software, then READ the chip. This should take 3-7 minutes to do.

When finished reading, there should be Sony Entertainment Inc. on the top. save as a .bin file, then read 2 more times.

Now that you have 3 .bin files, open 2 of them in HxD. Compare them, if no errors, then compare them with the last .bin file. You really want to be sure that there is no corruption.

Open BwE's software, then go through the appropriate process. You will want to validate the .bin file first to make sure there is no corruption. Then there should be an option for Enable UART/IDU mode. Doing so will decrypt the UART output.

Writing
Open the patched .bin file in your preferred programmer software, make sure the information is correct, then write to the chip. This should take about 10 to 15 minutes. Then solder the chip back on the motherboard in the correct orientation.

UART Pins
The only 2 pins you will need is ground, and TX. The TX pin on the motherboard will go to the RX pin on your USB to TTL converter.

Make sure your converter is set to 3.3v. Solder some insulated wire to the TX pin on the board, and to the ground as well.

Solder the wire from the TX pin to the RX pin on your converter, and solder the ground to the ground on your converter.   

Assembly
Make sure the pins are insulated when assembling the console. Make sure there is no force on the wires.

Serial Monitor
The PS4 outputs in the 115200 baud rate. Select the appropriate port that your converter is on, in Arduino IDE. Arduino should already have the right port available. Then open serial monitor and set the 115200 baud rate.

Diagnostic

 * Turn on the console.
 * Whatever the monitor stops at is the issue.
 * Refer to the chart below.

For CUH-12XXX: There are a few known errors currently.

ERROR:DCT[0/1] is disabled: the first ram block has a failure. A ram block is a pair of ram modules. It will complain about both of them, even when only one is failing. The ram blocks are 0/1, 2/3, 4/5, 6/7.