ChronicLoader
PS5 Payload Updater & autoload.txt Manager
PS5 Payload Updater & autoload.txt Manager
Download: https://github.com/ItsDeidara/ChronicLoader-PS5-Payload/releases/
ChronicLoader checks the latest GitHub releases for the repos you configure, downloads the payload files you want, and saves them with stable filenames so your autoloader setup does not need to keep changing.
It can also manage autoload.txt, keep a download log, and track SHA-256 hashes so it can tell the difference between a real update, an unchanged file, and a damaged local copy.
It can also manage autoload.txt, keep a download log, and track SHA-256 hashes so it can tell the difference between a real update, an unchanged file, and a damaged local copy.
What ChronicLoader Can Do
- Download direct release assets such as
.elfand.bin - Download
.ziprelease assets and pull payload files out of them (e.g. shadowmountplus) - Save files into
/data/ps5_autoloaderor another folder you choose - Maintain
autoload.txtwith optional delays between payloads - Keep a download log in
/data/chronicloader/chronic.log - Keep SHA-256 state in
/data/chronicloader/chronic_state.json - Read its runtime config from
/data/chronicloader/chronicloaderSettings.json
What You Need
Required:
- A PS5 with network access
- A way to send payloads to the console
chronicloader.elf
Optional:
klogsrv-ps5.elf— if you want live logschronicloader_settings_builder.html— to generate the config file more easily
Main Files
| File | Path |
|---|---|
| Payload output folder | /data/ps5_autoloader |
| Runtime config | /data/chronicloader/chronicloaderSettings.json |
| Download log | /data/chronicloader/chronic.log |
| SHA-256 state | /data/chronicloader/chronic_state.json |
How It Works
When ChronicLoader runs, it:
- Loads
/data/chronicloader/chronicloaderSettings.json - Checks the latest release for each configured GitHub repo
- Finds the matching asset or assets
- Downloads them to the PS5
- Renames them to stable output names when needed
- Compares SHA-256 values so unchanged files do not get downloaded again unless something is missing or damaged
- Writes log and state entries with the source asset name, release tag, destination path, size, and SHA-256
If the config folder is missing, ChronicLoader creates
/data/chronicloader/ and writes default template files for you.
How To Use It
- Load
chronicloader.elfwith whatever method you use for PS5 payloads - If this is the first run, let ChronicLoader create its default files in
/data/chronicloader/ - Build or edit
/data/chronicloader/chronicloaderSettings.json - Run ChronicLoader again so it can check your configured repos and update the payload files
- Reboot if the final notification tells you changes were applied
Settings File
ChronicLoader reads its config from
/data/chronicloader/chronicloaderSettings.json.The easiest way to build this file is with
chronicloader_settings_builder.html.The file has three main sections:
notificationsautoloadrepos
Controls how chatty the payload is while it runs.
verbose: false— keeps notifications minimalverbose: true— shows friendlier progress notifications such as starting a download or extracting a zip
Controls whether ChronicLoader also maintainsautoload.txt.
enabled— turns autoload maintenance on or offoutput_path— where the generatedautoload.txtwill be writtencustom_entries— lets you preserve extra autoload lines not tied to a tracked repo entry
The list of GitHub release pages ChronicLoader will check. Each entry tells ChronicLoader what release page to inspect, which asset family to follow, where to save it, and whether to include it in autoload.
Repo entry fields:
release_url— the GitHub releases page for the project (e.g.https://github.com/seregonwar/zftpd/releases)formats— file type filter:all,elf,bin,zip, orelf,bindest_dir— folder on the PS5 where the file should be saved (usually/data/ps5_autoloader)asset_rule— rule used to keep following the same file family across future releases even when version numbers changeautoload_preview_name— stable output name used for previews and autoload matchingautoload— iftrue, this entry will be written into the managed autoload.txtdelay_before_ms— delay written before this entry in autoload.txt (useful for sequencing)
Example settings file:
JSON:
{
"notifications": {
"verbose": false
},
"autoload": {
"enabled": true,
"output_path": "/data/ps5_autoloader/autoload.txt",
"custom_entries": []
},
"repos": [
{
"release_url": "https://github.com/seregonwar/zftpd/releases",
"formats": "all",
"dest_dir": "/data/ps5_autoloader",
"asset_rule": "re:^zftpd-ps5-(v)?[0-9][0-9A-Za-z._-]*\.elf$",
"autoload_preview_name": "zftpd-ps5.elf",
"autoload": true,
"delay_before_ms": 0
},
{
"release_url": "https://github.com/drakmor/ShadowMountPlus/releases",
"formats": "elf",
"dest_dir": "/data/ps5_autoloader",
"asset_rule": "re:^ShadowMountPlus_(v)?[0-9][0-9A-Za-z._-]*\.zip$",
"autoload_preview_name": "shadowmountplus.elf",
"autoload": true,
"delay_before_ms": 5000
}
]
}
The Log File
ChronicLoader writes a log to
/data/chronicloader/chronic.log.This log records:
- What repo was checked
- Which release tag was used
- Which original asset name was downloaded
- What local filename it was saved as
- The SHA-256 of the downloaded file
The log makes it easy to tell if a file was updated, skipped because it was already current, or replaced because the local copy no longer matched the last known hash.
Typical Workflow
- Build or update your settings JSON
- Save it to
/data/chronicloader/chronicloaderSettings.json - Run ChronicLoader
- Let it pull the newest release files
- Leave your autoloader setup pointed at the stable output filenames in
/data/ps5_autoloader
Troubleshooting
- Make sure the PS5 has network access
- Make sure the repo URL is a real GitHub releases page
- Check the live klog output
- Check
/data/chronicloader/chronic.log - Make sure the asset family you selected actually matches the latest release
- Check whether the payload file inside the zip is really an
.elfor.bin - Rebuild the config in the HTML builder and inspect the latest release again
Last edited by TheStonedModder,







