Join Us and become a Member for a Verified Badge to access private areas with the latest PS4 PKGs.
PS4 CFW and Hacks       Thread starter PSXHAX       Start date Feb 24, 2019 at 9:56 PM       63      
Status
Not open for further replies.
For quite some time PlayStation 4 scene developers have been researching and testing code to control the PS4 fan speed in order to adjust the console's temperature, and following the PS4 Homebrew PKG Store developer @Joaquin Salih (aka toxxic407) made available a collection of payloads via Twitter used to control the PS4 fan speed on Github.

Download: PS4-fan-control-payloads-master.zip / GIT

Recently PlayStation 4 Fan Control code from ethylamine's repository based on Zer0xFF's findings was forked by kozarovv for a 4.74 port and added to JgDuff's PS4 Exploit Host v0.4.6 updates as well. (y)

Below are some additional details from the README.md: PS4 Fan Control Payloads

Collection of Payloads used to control the fan of PS4's on version 5.05. All Credit goes to ethylamine, Zer0xFF (Twitter), theorywrong (Twitter), xvortex (Twitter) and zecoxao (Twitter). The name is equal to the Temperature threshold in degrees.

:alert: Most of the Payloads are not tested! I do not take any responsibility and I am not liable for any damage done to your PS4!
PS4 PRO 5.05 HARDWARE SPEED FAN CONTROL MOD with PSXITArch Linux via PS4LINUX
PS4 Fan Control with X-Project + New PS4 Homebrew File Manager
I compiled the fan control payloads with support for 6.72 with all threshold options from 0°C to 99°C. If anybody wants to use them: PS4 Fan Control Payloads / PS4-fan-control-payloads-master.zip / GIT
The code for the payload is from this repo and not from me: ps4-fan-threshold-master.zip / GIT
Code:
u32 sceKernelGetCpuTemperature(u64 res);

u64 numb;
u32 ret = sceKernelGetCpuTemperature(&numb);
printf("sceKernelGetCpuTemperature returned %i\n", ret);
printf("TEMP %d°C\n", numb);
Code:
connected
sceKernelGetCpuTemperature returned 0
TEMPERATURE is 62 °C
sceKernelGetCpuFrequency returned 1.60 GHz
Download: MiraTempReport.7z (172.44 KB - includes MiraTempReportByLMAndAlAzif.bin and MiraLoader.elf)
Download: ps4fancontrol-1.0.0-1-x86_64.pkg.tar.xz / PS4FanControl GIT by Ps3itaTeam
Code:
Update psxitarch v2 27/03/21
 
First remove this pkg:
sudo pacman -R jwm-git
sudo pacman -Rc openobex
 
After open the file /etc/pacman.conf, change the repo from https://psxita.it/repo to https://psxita.it/repo-testing, update psxitarch with:
sudo pacman -Syu
Answer yes to all, when you get the message that some packages are corrupted because the keyring are outdated, answer no to "..you want delete the corrupted packages?", this should abort the upgrade of system.
To fix the corrupted packages just install archlinux-keyring with sudo pacman -S archlinux-keyring
Now you can finally update the system and drivers with 
 
sudo pacman -Syu && sudo pacman -S jwm
From Pastebin.com: PS4 Get CPU Clock Speed 9.00 Code
Code:
void cpuFrequency() {
	u64 v1;
	uint8_t* kernel_base = (uint8_t*)(__readmsr(0xC0000082) - 0x1C0);
	u64*(*devclass_find)(char*) = (void*)(kernel_base + 0x38DEC0);
	u64(*devclass_get_device)(u64 a1, int a2) = (void*)(kernel_base + 0x38E480);
	long long(*cpufreq_get)(u64 a1, int* a2) = (void*)(kernel_base + 0x2830D0);

	//long long(*sub_FFFFFFFFDDD46D90)(long long a1, long long *a2, long long a3) = (void*)(kernel_base + 0x1FAD90);
	//u32(*cpufreq_pre_change)(u64 a1, int* a2, u64 unk) = (void*)(kernel_base + 0x282800);//change CPU clock speed, I tried 1866Mhz and It worked for me once & after using it again my PS4 crashed, Maybe I didn't use this function well?

	//long long v30 = v1 + 8LL * (u8)(kernel_base + 0x1A6FC80);
	//long long v23 = sub_FFFFFFFFDDD46D90(*(u64*)(v1 + 2048), &v30, (long long)(kernel_base + 0x1A6FC80));
	u64* v0 = devclass_find("cpufreq");
	v1 = devclass_get_device((long long)v0, 0);
	cpufreq_get(v1, &freq);
	printf("CPU clock speed: %dMHz", freq);
	int mhz = 1600;
	int *v38 = &mhz;
	//cpufreq_pre_change(v1, v38, 1000LL);
}

int _main(void) {
kexec(cpuFrequency, NULL);
}
PS4 Fan Control Payloads to Adjust PS4 Fan Speed and Temperature.jpg
 

Comments

could prob do it yourself to be honest i done something similar with my phat ps3 back in the day with a 12v fan mod it wouldnt be hard to do honestly

glad my v1 ps4 has no fan issues and stays quiet
 
Something wrong with this bzImage file, Linux can't start...

and why this bzImage in a .ZIP ?? I can't unpack.... I got error message.
 
@Leeful Thanks tested and working.

@mohammadfadel It is safer to use the payloads from this news thread as long as the temperature threshold .bin payload is used correctly. I wouldn't set above the Sony default temp of 79c or below 60c. Me personally i'll probably use 65c on my pro.

My previous statement was incorrect about running your payloads would actually be less safer as this topics payloads. With your fan speed payloads if the fans speed is set too low the PS4 will merely shut down once it reaches the overheat temperature. However on the other hand with this threads payloads setting them too high could damage the hardware or cause a premature WLOD/BLOD.

Though I would still recommend using this threads payloads over yours and not set the temp threshold above 78c or below 60c.
 
@bonusb4ll got a PS4 Slim and a Pro that simply refuse to run psxitarch v2 linux they just stay on a no signal or black screen after running the payload.

Tried setting display to 1080p, multiple USB 3 sticks and hdds on all of the ports with no change. Not something I'm doing wrong as I have got another pro that runs it fine.
 
i'm really thankful for this and any further development , i would prefer a little fan noise than a slowly dying PS4. A cool PS4 is a happy PS4.
 
Status
Not open for further replies.
Back
Top