commit cd9f67260d1dea8ff105b104cb6760b219acd5e1 Author: mortyzip <338174153+mortyzip@users.noreply.github.com> Date: Wed Oct 7 12:38:48 2026 +0100 Add README for KeepAwake v1.0.0 diff --git a/README.md b/README.md new file mode 100644 index 0000000..7e39b12 --- /dev/null +++ b/README.md @@ -0,0 +1,38 @@ +# KeepAwake + +A PS5 and PS4 payload that stops the console from going into rest mode while it runs. + +Every 10 seconds it calls `sceSystemServicePowerTick()`, which resets the idle timer for auto rest mode. + +## Usage + +| Console | File | Send to | +|---|---|---| +| PS5 | `keepawake_ps5_v.elf` | ELF loader, port 9021 | +| PS4 | `keepawake_ps4_v.bin` | GoldHEN BinLoader, port 9090 | + +- **Enable:** send the payload. You'll see "Keep Awake v enabled". +- **Disable:** send the payload again. You'll see "Keep Awake v disabled". You can also connect to port 9031 on the console, for example with `make stop-ps5` or `nc -z 9031`. + +Only one copy runs at a time. It uses TCP port 9031 to know whether it's already running. + +## Building + +The Makefile expects the SDKs next to this folder (`../ps5-payload-sdk` and `../ps4-payload-sdk`). Set `PS5_PAYLOAD_SDK` or `PS4SDK` to use them from somewhere else. + +```sh +make # build both +make ps5 # or just one +make ps4 +make test-ps5 PS5_HOST= # build and send +make test-ps4 PS4_HOST= +``` + +Both builds need LLVM (`clang`, `ld.lld`, `llvm-objcopy`). The Makefile uses Homebrew's LLVM automatically when it's installed. Otherwise, set `LLVM_CONFIG` to your `llvm-config`. + +The version is set by `VERSION` in the [Makefile](Makefile). It goes into the filenames, where Payload Manager reads it, and into the toasts. + +## Source + +- [src/ps5.c](src/ps5.c): built with the [ps5-payload-sdk](https://github.com/ps5-payload-dev/sdk). +- [src/ps4.c](src/ps4.c): built against libPS4 from the [Scene-Collective ps4-payload-sdk](https://github.com/Scene-Collective/ps4-payload-sdk). libPS4 has no `select()`, so this version checks for a stop request once a second.