- README: what Control4Free is and why it reaches menus and sign-in, features, a quick start, screenshots, requirements, limitations, credits. - docs/: installation, playing, troubleshooting (every message the page and the app can show), how it works, and the WebSocket protocol. - CONTRIBUTING.md: building, testing, code style, releasing. - Screenshots of the page on phones and a PC and of the app, made against the real service built for the host, at the example address 192.168.1.20. - Issue forms, a contact list pointing at the guides and private security reporting, and FUNDING.yml. - CHANGELOG.md dated. CI now publishes this version's section of it as the release notes rather than the whole file. - THIRD_PARTY.md: the DualShock 4 diagram the buttons are drawn after (CC BY 3.0), and Apollo Save Tool for the package settings. - Page: the Vibration setting no longer promises to buzz when a game rumbles, which 1.0.0 cannot do yet.
4.3 KiB
Installation
Control4Free comes in two pieces:
- The service (
control4free.elf), a GoldHEN payload that runs in the background, creates the virtual controllers, and serves the controller page on port 4264. - The app (
Control4Free-<version>.pkg), which goes on the PS4's home screen. It starts and stops the service, shows the address and a QR code, and sets up auto-start. The package carries its own copy of the service, so the package is all you need.
Requirements
- A PS4 with GoldHEN. Tested on firmware 10.01 with GoldHEN v2.4b18.10. Auto-start and GoldHEN's Payloader LaunchPad need v2.4b18.10 or later.
- Debug Settings turned on in GoldHEN, for the Package Installer.
- A phone, tablet or computer with a modern browser, on the same network as the PS4.
Install the app
- Download
Control4Free-<version>.pkgfrom the latest release. - Get it onto the PS4, either way:
- copy it to a USB drive formatted exFAT or FAT32 and plug it in; or
- turn on GoldHEN's FTP server and upload it to
/data/pkg/.
- On the PS4, open Settings → Debug Settings → Game → Package Installer, choose the USB drive or the internal storage, and install Control4Free.
The app appears in Library → Applications.
First start
Open Control4Free and press Cross. The app:
- copies the service to
/data/payloads/control4free.elf; - adds it to GoldHEN's AutoRun list,
/data/GoldHEN/payloads.ini, so GoldHEN starts it every time it loads; - starts it straight away if GoldHEN's PayLoader is on. If it isn't, restart the PS4 and run the jailbreak: AutoRun starts Control4Free from then on.
Once it's running, the app shows the address to open, for example http://192.168.1.20:4264, and a QR code
for your phone's camera. The PS4 also shows the address in a notification when the service starts.
AutoRun keeps other entries in payloads.ini as they are.
The app's buttons
| Button | What it does |
|---|---|
| Cross | Starts Control4Free when it isn't running. Until auto-start is on, it sets that up first. |
| Triangle | Turns auto-start on or off. After you install a newer package, it updates the auto-start copy. |
| Square, then Cross | Stops Control4Free and disconnects every controller. |
| Circle | Closes the app. Control4Free keeps running without it. |
Updating
- Install the new package over the old one. Delete the old app first if the installer refuses.
- Open Control4Free. It says the auto-start copy is older than the one in the app: press Triangle to update it.
- The old version is still the one running. Press Square, then Cross to stop it, and Cross again to start the new one (this needs GoldHEN's PayLoader). Or restart the PS4 and run the jailbreak.
Your controller layouts and keys live in each phone's browser, so they survive updates.
Without the app
The service is an ordinary GoldHEN payload, so the app is optional.
With GoldHEN's Payloader LaunchPad (under Utilities in GoldHEN's menu):
-
Put
control4free.elffrom the release in/data/payloads/on the PS4, for example over GoldHEN's FTP server (port 2121). -
In the LaunchPad, select
control4free.elfto start it once, or press Square on it to add it to the AutoRun queue. The queue lives in/data/GoldHEN/payloads.ini:[AutoRun] /user/data/payloads/control4free.elf = 1
From a computer: send control4free.elf to GoldHEN's PayLoader on port 9090 with any payload sender.
It runs until the PS4 restarts.
Uninstalling
- In the app, press Triangle to turn auto-start off, then Square and Cross to stop the service.
- Delete the app from the Library.
- Delete
/data/payloads/control4free.elf, and/data/control4free/if you want the logs gone too.
Files on the console
| Path | What it is |
|---|---|
/data/payloads/control4free.elf |
The copy of the service that AutoRun starts. |
/data/GoldHEN/payloads.ini |
GoldHEN's AutoRun list. The app adds or removes one line. |
/data/control4free/control4free.log |
The service's log, with the previous run in control4free.log.previous. |
/data/control4free/instance.lock |
Keeps a second copy from starting next to the first. |