Payloads: add HearBridge (Bluetooth audio) to the catalogue

Also name ports 8090 (HearBridge) and 9180 (PS5Upload Files) in Ports
and mark both as web pages.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RxCGb8Asp1A1AQYiv1kbgS
This commit is contained in:
phantomptrandClaude Opus 5.5 committed 2026-10-18 06:53:01 -07:00
1 parent 530c63f28f
commit bb53c4f928
2 files changed
+26 -2

No files matched your search

+21
View File
@@ -594,6 +594,27 @@ const CATALOGUE: &[CatalogueEntry] = &[
autoload_delay_ms: 200,
homepage: "https://github.com/StonedModder/Ghostpad",
},
CatalogueEntry {
// X-F1REBALL-X/HearBridge-PS5 (GPL-3) — plays the console's audio on ordinary
// Bluetooth (A2DP) headphones or speakers through the PS5's own radio, no dongle.
// Releases ship one asset, `HearBridge-<version>.elf`, so the hint stops before the
// version. Its own web page (pairing, volume, latency, EQ) is on TCP 8090, or the next
// free port up to 8095; /data/hearbridge/ holds its state.
id: "hearbridge",
display_name: "HearBridge",
role: "Bluetooth headphones and speakers for PS5 audio",
description: "Sends the PS5's game and system audio to ordinary Bluetooth headphones or speakers (A2DP), using the console's own Bluetooth radio, so no dongle is needed. Pair, switch headsets, set volume, latency, EQ and night mode, and keep per-game profiles from its own web page (port 8090), which also adds a HearBridge tile to the home screen. Tested by its author on the original PS5 (CFI-10xx) and the Slim (CFI-2000).",
repo_host: "github.com",
repo_owner: "X-F1REBALL-X",
repo_name: "HearBridge-PS5",
asset_name_hint: "HearBridge-",
on_console_marker_path: Some("/data/hearbridge/hearbridge.log"),
process_name_hint: Some("hearbridge.elf"),
ports: &[8090],
autoload_priority: 5,
autoload_delay_ms: 300,
homepage: "https://github.com/X-F1REBALL-X/HearBridge-PS5",
},
CatalogueEntry {
// Pharaoh2k/ps5debug-NG — a debugger for jailbroken PS5s (GPL-3). The
// payload is an installer: it loads the debugger into the console's own
@@ -835,14 +835,17 @@ pub fn known_port_name(port: u16, proto: &str) -> Option<&'static str> {
2159 if tcp => "gdbsrv (debugger)",
5353 if !tcp => "mDNS",
8080 if tcp => "websrv",
8090 if tcp => "HearBridge",
9180 if tcp => "PS5Upload Files",
12800 if tcp => "DPI installer bridge",
_ => return None,
})
}
/// Whether a well-known port serves a web page (Payload Manager's UI, websrv).
/// Whether a well-known port serves a web page (Payload Manager's UI, websrv, HearBridge,
/// the helper's PS5Upload Files page).
pub fn known_port_is_web(port: u16) -> bool {
port == crate::payload_manager::PAYLOAD_MANAGER_PORT || port == 8080
port == crate::payload_manager::PAYLOAD_MANAGER_PORT || matches!(port, 8080 | 8090 | 9180)
}
/// The ports held on the console. The helper finds them by binding each port and closing it