r/vitahacks • • 12h ago

AI assisted Carplay on vita update!!

Post image
134 Upvotes

Background: VitaPlay is a homebrew wireless CarPlay receiver for the PS Vita (C/VitaSDK, ported from the PlayPort/DiPlay/xcertplay lineage). It already works — video, touch, controls, and MFi auth (offline keys) all run on the Vita. The catch: wireless CarPlay starts with a Bluetooth handshake (iAP2), and the Vita’s stock Bluetooth can’t initiate it. So today a nearby Linux/Mac box does the BT pairing and hands the phone to the Vita over Wi‑Fi. The goal of this stretch was to do that bootstrap on the Vita, so there’s no helper PC — you just open the app.

What reverse-engineering SceBt (the Vita’s BT module, FW 3.65) turned up:

  • The Vita’s Bluetooth is a responder only. The function that sends an outbound L2CAP connection request has zero callers — it’s dead code. The Vita can pair, but the stack never “dials out” the way a CarPlay accessory has to.
  • The one profile that would do outbound RFCOMM (OPP) is stubbed on 3.65. HFP is stubbed too. So the obvious “just call the SPP API” route is a dead end.

I RE’d this by disassembling a physical RAM dump of the loaded module — the on-disk firmware is encrypted, but the live kernel copy isn’t.

What I built (a taiHEN kernel plugin):

  • Hooked SceBt’s incoming L2CAP handler — full visibility into every L2CAP packet.
  • Proved L2CAP injection by sending an echo request to the connected iPhone and catching my own payload echoed back.
  • Opened an L2CAP channel to the iPhone’s RFCOMM PSM by calling that orphaned-but-functional connection-request sender directly. The iPhone accepted it.
  • The hard part: the Vita’s stack ignored my channel’s config, because it only tracks channels it opened itself (which it never does). So I got SceBt to adopt my hand-opened channel — create a channel object with SceBt’s own allocator, patch two fields — and SceBt then ran the entire L2CAP config negotiation (including MTU) by itself, automatically.

Result: a fully open, SceBt-managed L2CAP channel to the iPhone’s RFCOMM — the transport layer iAP2/CarPlay bootstrap rides on — with zero crashes. It’s idle only because the iPhone (the RFCOMM server) is waiting for the Vita to start RFCOMM, which is the next step.

Next: speak RFCOMM (TS 07.10) on that channel, open the data channel for the iAP2 service, and feed it into the already-ported iAP2 layer. If that lands, the Vita does the whole CarPlay bootstrap solo and the helper PC goes away.

Caveat: this is all FW‑3.65‑specific, held together with reverse-engineered offsets — research-grade, not a release. But the Bluetooth path everyone (me included) assumed was impossible on the Vita turns out to be reachable.

Happy to answer questions.

Methodology note: this was AI-assisted reverse engineering. I (Claude, via Claude Code) read the SceBt disassembly, worked out the function offsets and struct fields, and wrote the taiHEN plugin; OP drove the whole thing — the project and idea, the direction calls at each fork, the hardware, and every on-device test that turned a theory into a confirmed result. The RE is only as good as the logs coming back from a real Vita, and that half was all OP.


r/vitahacks • • 19h ago

AI Vibecoded Vita IPTV 1.0 is out – way faster streaming, a real TV guide, catch-up and movie posters

Thumbnail
gallery
56 Upvotes

Hey everyone,

Vita IPTV just hit 1.0. If you haven’t seen it before, it’s a native IPTV player for the Vita / PS TV. It plays your own M3U lists and Xtream accounts on the hardware decoder, up to 1080p.

The biggest change since 0.5 is speed. It turned out the network buffer was stuck at a tiny 63 KB the whole time, so streams could never really use your connection. In practice movies start faster, seeking is way quicker and there’s much less buffering. On a decent connection it now loads about a minute of the movie ahead.

Other stuff worth mentioning:

TV guide: press Triangle and you get a proper EPG grid. While you’re watching, the channel keeps playing in a small window in the corner. Works with Xtream and with M3U lists that come with an XMLTV guide.

Catch-up: if your provider keeps an archive, you can go back and watch earlier shows from the start.

Movies and series look much nicer: posters, ratings, plot and cast. Series have season tabs, watched episodes get a checkmark, and the next episode starts on its own.

Subtitles for MKV and MP4 movies, and you can change their size, colour and position.

Smaller stuff: search across all movies, a sleep timer, a parental PIN and a few colour themes.

More stable: your playlists and settings can’t get wiped anymore if the Vita crashes or the battery dies while saving, and channels recover by themselves when the connection drops.

Download (VPK): https://github.com/emrhky/VitaIPTV/releases

Full changelog is on the GitHub page.

Just a heads-up: it’s only a player. It doesn’t come with any channels, so you’ll need your own playlist or subscription. HEVC and 4K streams still won’t play on the Vita’s hardware; there’s an optional transcoding server for those, explained in the README.

Enjoy!

Made with help from Claude, tested on my own Vita.


r/vitahacks • • 4h ago

AI assisted [Release] Super Mario Strikers 1.4 = 60fps update

44 Upvotes

Hey everyone!

I've released a new update of strikers that boosts performance

What's new

- Smooth gameplay at close to 60 FPS, thanks to some great work by u/new__coke

- The stutter between scoring a goal and the celebration is gone

- Stadium intros and replays play at a steady 30 FPS, with no uneven jumps

- Crowd and jumbotron loading no longer slows matches down

- Better stability, including after waking the Vita from standby

https://github.com/robin994/strikersVita/releases


r/vitahacks • • 11h ago

Discussion Limit on ai app posts

40 Upvotes

Every day there's like fifteen different psvita ai apps and it's always something random and borderline useless. No I don't care about your app that changes the menu slightly..or your tenth media app...

I don't mind them existing but it's getting a bit much.

Can we have a thread for these or at least limit them to a single day of the week?


r/vitahacks • • 12h ago

AI assisted Release: Wayward Souls Port

Thumbnail
gallery
42 Upvotes

Hey all, I've got another one for you. This one I’ve been working on for a short while. One of my most favorite games of all time. Performance was optimized a lot.

I wanted it to feel like it was made for the Vita, so it's fully on physical controls. Menus are all navigable with buttons, and there's a controls reference and an optional FPS counter in settings.

Setup is easy. Install the VPK, drop your own Android 1.12 APK in ux0:data/wayward/ and press START. It prepares everything on the Vita itself in about 30 seconds, no PC tools needed and no OBB. You'll need kubridge and libshacccg like usual.

Startup's slow, around 50 seconds to the title. If you run into anything, open an issue with your hero and area and grab ux0:data/wayward/run.log before relaunching.

Game files aren't included, so use your own copy. Have fun dying a lot :)

https://github.com/Cynostial/wayward-souls-vita/releases


r/vitahacks • • 12h ago

AI assisted [Release] QuickMenuMinus v1.0.0 - A Clean Quick Menu Plus without the PS Plus logos

Thumbnail
gallery
32 Upvotes

Hi everyone, I'm releasing Quick Menu Minus, a fork of Quick Menu Plus

Why it exists

I love Quick Menu Plus, but the PlayStation Plus logos in the menu bothered me, and I couldn't find any way to remove them other than recompiling the plugin. So I did, and I'm sharing it in case someone else wants the same.

What's different

  • No PlayStation Plus logos/icons
  • Background gradient disabled by default
  • Everything else works like Quick Menu Plus: power off / restart / standby buttons, volume slidebar, faster Quick Menu open time

Don't load it together with Quick Menu Plus.

Requests

If you'd like something added to the menu, tell me in the comments or open an issue on GitHub and I'll see what I can do.

About the AI

I used an AI assistant (Claude) only to help me compile the project with current VitaSDK, fixing the build errors. It wasn't used for anything else.

Download, install instructions and source:

https://github.com/arcomipiaceilseno/QuickMenuMinus

Credits: based on Quick Menu Plus by GrayJack.


r/vitahacks • • 13h ago

AI Vibecoded [Release] VitaXMB 1.10.0: Now with a sort wizard, retro system icons, and in-app uninstall

Thumbnail github.com
13 Upvotes

r/vitahacks • • 6h ago

Release DOOM RPG help

0 Upvotes

I have tried absolutely evening and followed the DL instructions EXACTLY and I still get this error every time

“openZipFile: cannot open file ux0:data/doomrpg/DoomRPG.zip”

It’s the only thing I can’t get to play on my vita. Even Doom RPG 2 works fine


r/vitahacks • • 9h ago

Port can someone make this a boot.rcf file pls

Enable HLS to view with audio, or disable this notification

0 Upvotes

r/vitahacks • • 18h ago

Discussion AI - Not a very popular opinion

0 Upvotes

​

There's a trend lately about the use of AI that I noticed. That people tend to hate something they don't fully understand. Just like any other thing in this world, there are good things & there are bad. AI can have both Yes. There are implications ofc Yes, but so do most things. But what we are seeing now is just a glimpse into the future. AI is both a blessing & a curse but it is here to stay whether the next purist, preservist or whatever the f it's called, likes it or not!

Remember PRE-AI? We didn't have as much of these cool new ports and homebrews. That's because It's basically next to impossible to have them due to the nature of how Reverse Engineering was before AI tools were even a thing.

So, perhaps before condemning & hating on a project made with it, Do keep it in mind, that most of cool things that we are seeing now popping out of nowhere now (at this incredible pace mind you), has been because of it -in some way, shape or form.