github ItsBlurf/BFpilot v0.4.0
v0.4.0 Stable

6 hours ago

BFpilot v0.4.0 Stable

Browser-based PS5 file manager at http://<PS5_IP>:5905/. Runs from the PS5 web browser or any device on the same LAN after injection.

Validated on digital PS5 FW 11.60.


Assets

File Purpose
bfpilot.elf Main file manager + integrated archive extraction. Inject this first.
bfpilot-launcher-installer.elf Home-screen tile installer — installs/refreshes the BFpilot launcher tile that opens http://127.0.0.1:5905/. Optional; inject separately for firmware compatibility.

Install

  1. Jailbreak + keep elfldr listening on port 9021
  2. Send bfpilot.elf to elfldr
  3. Open http://<PS5_IP>:5905/
  4. (Optional) Send bfpilot-launcher-installer.elf for the home-screen tile
python3 payload_sender.py <PS5_IP> 9021 bfpilot.elf
python3 payload_sender.py <PS5_IP> 9021 bfpilot-launcher-installer.elf

you can also just use https://github.com/itsPLK/ps5-payload-manager in ps5 if you already have it
or https://github.com/ItsBlurf/Blurfer to send it

All features

File management

  • browse on the left; right Target panel is copy/move/extract destination
  • Sidebar places: Root (/), Data (/data), Homebrew (/data/homebrew), User (/user), Mounts (/mnt), connected USB/ext volumes, custom shortcuts
  • Other paths (e.g. under /system_data) via Root or custom shortcuts
  • Upload files (drag-and-drop or picker) with progress, speed, and ETA
  • Download files over HTTP (buffered stream)
  • Copy and Move with background jobs, progress, speed, cancel
  • Conflict prompts — Overwrite / Merge / Skip when destinations collide
  • Rename, create folders, recursive delete (with cancel)
  • Click-to-calculate folder sizes

Selection

  • Checkbox multi-select (controller-friendly)
  • Select All header checkbox
  • Row click = single select; checkbox toggles without clearing others

Search and Index All

  • Priority roots first: /data, /user, USB/ext, then system mounts and /
  • XDEV fencing — does not cross st_dev (avoids sandbox/nullfs recursion risk)
  • Soft-fail per root; never full-crawls /dev, /proc, sandbox/shadowmnt hubs, etc.
  • Optional cache: /data/BFpilot/search.idx
  • Case-insensitive multi-term search with match highlighting

Archive extraction (integrated in main ELF)

  • ZIP — Stored, Deflate, ZIP64, ZipCrypto, split volumes
  • RAR — RAR4/RAR5, password, multipart .partN.rar
  • 7z — LZMA/LZMA2, password, split .7z.001
  • Password prompt in UI; progress/speed/ETA; partial cleanup on error/cancel
  • Extract destination defaults from Target panel

Image viewer

  • Formats: PNG, JPG, JPEG, GIF, BMP, WebP, ICO, SVG
  • Pan, wheel zoom (~0.1×–10×), 90° rotate, reset
  • Double-click to open; Escape to close

Text editor

  • Inline edit for common text types (txt, ini, cfg, log, json, xml, js, py, sh, md, conf, html, css, c/h/cpp, …)
  • Full-screen overlay; saves back to PS5 FS (UI size limits apply)

Log viewer

  • BFpilot server, archive, search crawl, boot logs under /data/BFpilot/
  • PS5 VSH log and Error History decoder under /system_data/priv/...
  • Auto-refresh every 2s while open

Navigation and shortcuts

  • Breadcrumb path navigation
  • Persistent custom shortcuts (/data/BFpilot/shortcuts.txt) — add / rename / remove
  • Storage free/total summary when volume stats are available
  • USB/ext only listed when mounted

Networking and performance (v0.4.0)

  • HTTP keep-alive (up to 64 requests/connection) for multi-file upload
  • Upload: 2 MiB single-buffer STOR (recv→write); no multi-GB fallocate-while-stream; no bulk TCP_NODELAY
  • Listen SO_RCVBUF 4 MiB, SO_SNDBUF 2 MiB, backlog 32
  • Download stream buffer 1 MiB
  • Virtual row recycling for huge directories

Exit and reload

  • Toolbar Exit — clean shutdown via /api/control/shutdown (token-protected)
  • Releases port 5905 for re-inject without reboot

Permissions

  • Created files/dirs use mode 0777 (umask(0) + chmod/fchmod)

Diagnostics

  • /api/status — version/build
  • /api/diag — bind/listen, errno, checkpoints, launcher flags
  • Crash log: /data/BFpilot/crash.log

Notes

  • Upload to /data is often write-bound (PFS); prefer wired LAN for large transfers
  • See docs/UPLOAD_PERFORMANCE.md and CHANGELOG.md in the repo

Don't miss a new BFpilot release

NewReleases is sending notifications on new releases.