Zero-Core: Phone-Only GT7 Telemetry HUD on Android (No PC, No SimHub

  • Thread starter Thread starter Zero-Core
  • 7 comments
  • 485 views
Messages
3
United States
United States
Messages
SportSkar88
Hi everyone,

I’ve been working on something a bit unusual for Gran Turismo 7 and wanted to share it with you all and get some feedback.

What I’ve built

I’m running a live GT7 telemetry HUD directly on an Android phone using Termux and Python – no PC, no SimHub, no Windows, no Mac in the middle.

Basic architecture:

GT7 on PS5 sends UDP telemetry over the LAN

My Android phone (Termux) listens directly to the telemetry stream

A Python script decodes the data and runs a live HUD in the terminal

At the same time it logs structured telemetry (JSONL / CSV) locally on the phone


There is no intermediate computer acting as a bridge. The PS5 talks straight to the phone, which does all the processing and display.

What the HUD shows right now

On the phone I currently have, in real time:

Current lap / total laps

Race position (Pxx/xx)

Current lap time and last lap time

Fuel % plus estimated laps remaining based on real burn rate across laps

Gear, RPM, speed, throttle %, brake %


I’ve run full multi-lap stints and pit stops with this setup and it has stayed stable and usable in real races.

Logging & analysis

While I’m driving, the phone also logs full telemetry snapshots into JSONL and CSV files, including speed, throttle, brake, gear, fuel, etc.

On top of that, I’ve started building a separate “key explorer” tool that scans my telemetry logs and:

Lists every key/field that appears in the decoded telemetry

Tracks how often each key appears and what type of data it carries

Computes ranges and how fast each value changes

Looks for rough correlations with known channels like speed, RPM, throttle, brake


The idea is to use data-driven reverse engineering to identify unknown fields (for things like tire temps, slip, etc.), instead of just hard-coding names from documentation or wikis.

Why I’m posting this

From what I’ve been able to find so far, most GT7 telemetry setups look like:

PS5 → PC (SimHub or custom software) → phone/tablet (for display)



My setup is:

PS5 → Android phone (Termux + Python) → HUD + logs



I’m trying to confirm how rare this kind of phone-only / zero-bridge architecture actually is, and I’d love to:

Hear from anyone who has tried something similar

Get pointers to other GT7 telemetry projects I might have missed

Share more details, videos, and results as I clean things up


I’m not going to post any low-level decoding secrets or anything that would obviously cross a line with Polyphony; I’ll keep things high-level and focused on architecture, capabilities, and what this could mean for GT7 players (especially PSVR2 users who want extra data on a separate screen).

What’s coming next

I’m planning to:

Record a short video showing the Android HUD running live while I’m driving in GT7 on PS5

Document the basic setup and limitations

Use the key explorer on longer stints to hunt for things like tire-related channels


If this is the right place for this kind of project, I’d be happy to turn this thread into a dev log and share progress, findings, and maybe a cleaned-up version of the tools once things are stable.
 

Attachments

  • Screenshot_20251118-180651.webp
    Screenshot_20251118-180651.webp
    9.6 KB · Views: 1
  • Screenshot_20251118-180743.webp
    Screenshot_20251118-180743.webp
    9.8 KB · Views: 1
  • Screenshot_20251118-180728.webp
    Screenshot_20251118-180728.webp
    9.8 KB · Views: 1
Please keep posting. Very interesting. Tire temperatures are probably most interesting to people because they are not visible in game. No PC needed makes this much more accessible.

In case you don't know it yet this thread is possible relevant to your project:
 
I'm not tech savvy, but a suggestion: tyre temperature is easily the biggest readout you can include in your app, since it plays such a big part of a car's performance and yet the game doesn't allow the player to view it.

Hope this project goes smoothly, excited for the results!
 
Please keep posting. Very interesting. Tire temperatures are probably most interesting to people because they are not visible in game. No PC needed makes this much more accessible.

In case you don't know it yet this thread is possible relevant to your project:



Thanks a lot – really appreciate that.

The “no PC needed” part was exactly the itch I wanted to scratch. My whole stack runs directly in Termux on an Android phone: Python listens to GT7’s UDP stream from the PS5, decodes packets, renders the HUD in the terminal and logs JSONL/CSV at the same time. No Windows box humming in the background.

Tire data is at the top of my list as well. I’ve actually built a separate “key explorer” script that chews through my telemetry logs and looks for unknown fields by correlating them with speed, steering, slip-like behaviour, etc. Once I’m confident I’ve really pinned down the tire-related channels, I’ll work them into the HUD.

Thanks for the link to the telemetry overview thread – that (and Nenkai’s work) is basically the foundation. I’m hoping this project can be a complementary piece: a lightweight, phone-only tool you can hack on directly in Termux. If the mods are okay with it, I’d love to keep this as an ongoing dev-log and share progress as it stabilizes.

I'm not tech savvy, but a suggestion: tyre temperature is easily the biggest readout you can include in your app, since it plays such a big part of a car's performance and yet the game doesn't allow the player to view it.

Hope this project goes smoothly, excited for the results!

Totally agree – tire temps are probably the #1 extra readout GT7 players want that the game itself doesn’t expose.

The plan is to add a dedicated tire section to the HUD once my key-explorer has nailed down the correct fields (inner/mid/outer or at least a solid average). Because it’s all running in a terminal, I can dedicate a full line or block to four corners with simple formatting: hot/cold thresholds, quick “OK / overheating / freezing” cues, maybe even basic trend info over the last few seconds.

Once I’m happy that the decoding is reliable I’ll post screenshots and some notes here so people can sanity-check it and suggest what info they’d most want to see (temps only vs. temps + wear + simple color bands, etc.).

Really interested to watch your video showing HUD // GT7

How do you intent to send data to VR users on a separate screen ?

Great question – VR/PSVR2 use is actually one of the main reasons I built this as a phone-only tool.

Right now the pipeline is: PS5 → phone (Termux) over LAN → live HUD in the terminal. There’s no PC or extra capture device in between, so for VR users the phone is the separate screen. You just mount it near the wheel or in your peripheral vision and let GT7’s in-helmet HUD stay as clean as you want.

Longer-term I’m considering a second output mode (simple web/HTTP or a very minimal overlay) so the same phone-side process could feed:
– the terminal HUD, and
– an optional “VR-friendly” layout on any browser-capable device.

But step one is keeping the phone-only path rock-solid: plug PS5 IP into a config file, start the script in Termux, and you’ve got a HUD and logger even if you don’t own a PC at all.

There is already quite a few Android and iOS apps which take data direct from PS5 with no intermediate device.

I use Eziodash for iOS and there are some cross-platform ones too like https://www.podiumdash.io/

Yeah, good shout – EzioDash in particular is a really nice piece of work, and as far as I can tell it also talks directly to GT7’s UDP stream without needing a PC in the middle. Podium Dash and a few others are doing cool stuff too.

What I’m experimenting with here is a slightly different niche:
– Android + Termux + Python, so it’s basically a tiny Linux telemetry lab running on your phone.
– A console HUD that you can run in split-screen with log tailing, debugging, etc.
– A separate “key explorer” script that scans my logged JSON/CSV and tries to identify unknown channels (tire-related stuff, slip candidates, etc.) by correlating them with other signals.

So it’s less of a polished “app store dashboard” and more of a phone-native toolkit for people who want to tinker, log raw data, and build their own overlays or analysis on top. Once it’s cleaned up a bit I’ll share more details and see if there’s interest from the more DIY-minded folks.
 
so for VR users the phone is the separate screen. You just mount it near the wheel or in your peripheral vision and let GT7’s in-helmet HUD stay as clean as you want
I am not sure to understand, when I have my headset on, I can't see anything outside. PVSR2, unlike a few very up-to-date VR headset, can't give you a mix of VR and AR. So how am I supposed to look at the phone while driving ?
 
I am not sure to understand, when I have my headset on, I can't see anything outside. PVSR2, unlike a few very up-to-date VR headset, can't give you a mix of VR and AR. So how am I supposed to look at the phone while driving ?

You’re absolutely right about PSVR2 – it isn’t AR, so you can’t really “peek” at a phone while driving.
My wording there was sloppy.

What I’m actually aiming for is two different modes:

Screen HUD mode for TV/monitor users, where the phone is just a classic external dash.

VR mode, where the phone is not something you look at at all. It just sits outside the headset doing the telemetry work, and you get short audio callouts instead (fuel, tires, gaps, etc.) through an earbud or small speaker.


So for VR2 the idea isn’t “read another screen”, it’s more like having a race engineer in your ear:
things like “fuel 5 laps remaining”, “front-left getting hot”, “0.8s gap to the car ahead”, based on the live telemetry the phone is already receiving.

The current terminal HUD is just the first step. The next experiments are:

a more compact “VR-friendly” data set, and

an audio co-pilot that talks to you while the phone stays out of sight.


That’s the direction I’m exploring for PSVR2 users.
 
Back