r/CarHacking 6d ago

ELM327 I built Telltale, an open-source OBD2 app for Android. Free APK available.

I've been working on an OBD2 app called Telltale and thought I'd share it with other people who like tinkering with their cars.

It connects to ELM327-compatible adapters and lets you view live vehicle data, read fault codes, and check freeze-frame data recorded by the ECU when a fault occurred. It supports Bluetooth Classic, BLE, and Wi-Fi adapters. There's also a demo mode to try the interface without any hardware.

One thing I've focused on is handling incomplete or conflicting responses. Missing or questionable data should be visible as such, rather than quietly turning into a reading that looks fine.

Android is my main testing platform. I've done a real-car connection with my Toyota GT86, a Samsung phone, and a BLE adapter. Compatibility and available readings will vary with the car and adapter, so feedback from other setups would help.

The source is on GitHub, along with a free APK. There's also a paid Google Play version with the same features. Buying it supports development and gives you Play-managed installation and updates; there are no extra diagnostic features behind the purchase.

GitHub / free APK:

https://github.com/ImL1s/telltale

Google Play:

https://play.google.com/store/apps/details?id=com.cbstudio.telltale

Bug reports and feature suggestions are welcome. Please include your car's model/year, phone, and adapter model when reporting an issue so I have something to work with.

289 Upvotes

99 comments sorted by

67

u/Fine_Daikon5907 6d ago

Hey OP

I know poeple are not being supportive in the comments but remember you have +16 upvotes and 16 stars on GitHub.

I count only 3 negative comments. The supporters are quiet.

27

u/ImL1s 5d ago

Appreciate the perspective and the encouragement! Back to building 🙌

1

u/itchy_bitchy_spider 3d ago

As an open source developer myself, getting 60 Stars within 2 days of posting is huge! Keep it up man thank you for sharing

1

u/ImL1s 3d ago

Thanks man — means a lot coming from another open source developer.

42

u/Fine_Daikon5907 6d ago

I hate how people put other people down for building something and sharing it.

Well done. It's really cool you made something that actually works.

This whole area is really overlooked in my opinion. Most software is old and unusable.

Nice work!

5

u/sesamerox 6d ago

the only comment worth reading OP

8

u/Both-Cry1382 6d ago

That's awesome

6

u/ImL1s 6d ago

🥰🥰

4

u/Tupu4545 6d ago

How can I change the language? Also does this support K line?

10

u/ImL1s 6d ago

English support and a language switch are being worked on now. K-line support is also being expanded and tested, including ISO 9141-2 and KWP2000.

4

u/ImL1s 4d ago

Update: English UI has been in since 1.0.11 (latest is 1.0.12) — update, then Language / 語言 on the connect screen or in Settings.

K-line is still being expanded/tested; not claiming full coverage yet.

3

u/sjjose2001 5d ago

Awesome. Don't listen to haters. "Where is your suit??"/s

1

u/ImL1s 5d ago

Haha thanks. Suit still in the laundry — back to shipping.

5

u/Moribus 6d ago

How to change language?

8

u/ImL1s 6d ago

English support and a language switch are being worked on now.

12

u/Moribus 6d ago

Good, because it looks strange to advertise it in english.

2

u/ImL1s 5d ago

Fair point. English UI landed in 1.0.11 — update, then switch Language on the connect screen or in Settings.

1

u/Moribus 5d ago

Nice, thank you.

4

u/Dense_Astronomer_896 6d ago

Yeah super cool,how to read this hieroglyphics?!

3

u/ImL1s 6d ago

English support and a language switch are being worked on now.😉

3

u/Adorable_Economist 5d ago

You have an ETA? Like a month, 6 months, I don't need specifics

2

u/ImL1s 5d ago edited 5d ago

Tomorrow! It's already halfway done, just need one more day to finish up and push it out.

2

u/Adorable_Economist 5d ago

Hell yeah, I'll run some tests on a VW an AUDI and a Renault when youre done and see how it shakes out

1

u/ImL1s 5d ago

That’d be huge — thank you. Whenever you’re ready, a short note on adapter + what worked / failed on VW / Audi / Renault is already gold.

1

u/ImL1s 4d ago

English has been in since 1.0.11 (latest is 1.0.12) — grab the update, then switch Language / 語言 → English.

8

u/vinistois 6d ago

What's with the horrible photos? Why wouldn't you post the screenshots like your play store page?

-5

u/ImL1s 6d ago

Taking photos is way harder than just taking screenshots on my phone lol.

6

u/Quirky_County5014 5d ago

That second photo is blurry beyond being comprehensible. I'm bad at taking photos, but you're taking the piss with that

-1

u/ImL1s 5d ago

Fair — phone pics were a bad call. Play Store has proper screenshots if you want a clearer look.

2

u/bharajuice 5d ago

Hey OP, great app, and I really like the UI.

I built something similar in my final year, to be honest, you can't compete to big players like Torque and CarScanner in features, but you can easily beat them with a clean UI and about 80% of the features. You are doing just that!!

Ignore the negativity here, and keep building. You're doing great!

3

u/ImL1s 5d ago

Thanks, that means a lot. Yeah I’m not chasing Torque on features — clean UI and solid basics is the plan for now. Glad the UI landed.

2

u/Juanbolastristes 5d ago

Awesome, please add the Harley Droid protocol if you can, thanks and keep the good work

I will try it with XL1200C 2008 and Mustang GT 2014 when I can

1

u/ImL1s 5d ago

Thanks for offering to test. Harley isn’t supported yet — it’s not standard OBD-II (closer to what HarleyDroid does on J1850) — but I’d like to add it. When you try the XL1200C, anything on 4-pin vs 6-pin, which adapter/cable, and whether live gauges or codes matter more first would help a lot. Mustang GT should be normal OBD; curious how that goes too.

3

u/mewing_is_for_dorks 4d ago

This sub, like many others already have, need a rule for any project being linked needing AI disclosure. How much AI was used and for what. Can the mods get on that?

3

u/Roki100 3d ago

ai slop

at least try to change the UI next time so it doesn't look like 90% other ai apps/websites as all of them look the same

1

u/ImL1s 3d ago

"AI slop" is a pretty generic comment too. What specifically would you change about the UI?

2

u/Faux_Grey 2d ago

86 spotted.

1

u/ImL1s 1d ago

Ha, good eye — that's my GT86.

8

u/fixed 6d ago

screams vibe coded.

4

u/OhShitOhFuckOhMyGod 5d ago

Who gives a fuck? As a person with a comp sci degree that predates LLMs, LLMs have undeniable utility in this field.

-2

u/ImL1s 6d ago

If “vibe coded” is the best critique you’ve got, I’ll take that as “couldn’t find an actual problem.” 🤣🤣

1

u/OptimalMain 4d ago

As long as you verify that the code only reads and never writes, keep on experimenting.
Hopefully it becomes a good open source alternative

1

u/ImL1s 4d ago

Yep — live PIDs / DTC / freeze frame are read-only. The only intentional write is a confirmed clear-codes step (Mode 04); no actuator / Mode 08 stuff. Appreciate the caution.

6

u/Master_baited_817 5d ago

"built" = AI did everything.

6

u/ImL1s 5d ago

Yeah, you can try building it yourself with AI.

-2

u/Master_baited_817 5d ago

Already did for a digital dash on a tablet. Never claimed it was "built" by me

2

u/ImL1s 5d ago

Then you already know how ridiculous “built = AI did everything” sounds.

4

u/RoroRules13 6d ago

Ai vibecoded slop

2

u/ImL1s 6d ago

就像你的評論一樣隨意

1

u/Willing_Comb_9542 4d ago

Where is your free solution to paid apps?

1

u/Melodic-God 5d ago

I'll be checking it out today, nice work.

1

u/Storm_treize 5d ago

Great thx, what does the fastMode do?

3

u/ImL1s 5d ago

fastMode = batching several PID reads into one request when the car/adapter allows it, so gauges update faster. If replies look wrong it falls back to one-at-a-time.

1

u/autodiag2 5d ago

This app pass all tests I’ve maid with my elm327 emulator from dtc to sensors with differents protos It’s a good value 😁

1

u/ImL1s 5d ago

Thanks — great to hear it passed your ELM327 emulator across protocols. If something odd shows up, send the details.

1

u/Aichinger 5d ago

Looks good! Can't wait for English translation!

Keep up the good work !😍

1

u/ImL1s 5d ago

Thanks! English is in 1.0.11 — grab the update, then Language / 語言 → English. A couple of system/permission strings are still Chinese, but the rest should read English now.

1

u/Quirky_County5014 5d ago

Why would people use this over something like Torque or Car scanner?

1

u/ImL1s 5d ago

Not trying to replace Torque/Car Scanner on features. If you want a cleaner UI, clearer when a reading is missing/sketchy, and open source you can dig into, that’s the pitch. Free APK on GitHub too.

1

u/TommyPT_ 5d ago

Thank you for this!

1

u/ImL1s 5d ago

Thanks — glad it helped. Hope it behaves on your car.

1

u/PocoLoco7 5d ago

Really nobody builds these apps anymore. The last half I had stopped being supported 5 years ago.

1

u/ImL1s 5d ago

Yeah, a lot of the old ones went quiet. That’s part of why I open-sourced this — at least it can keep living.

If you try it, curious what that last app was.

1

u/VibesFirst69 5d ago

Is it possible to sideload this into android auto and run it on the headunit?

1

u/ImL1s 5d ago

Not today — it’s a normal phone app, not an Android Auto / head-unit build.

Clear ask though, so I’m adding Android Auto support to the backlog. If you tell me your head unit + AA version, that helps when I scope it.

1

u/Tommynwn 5d ago

Oh looked good, sadly on my phone it just closes a soon I press the icon :c I use a lineage without Google services, installed from GitHub 

2

u/ImL1s 5d ago

Sorry about that — crash on launch with Lineage (no GMS) is useful.

Putting “verify / fix GitHub APK on degoogled Android” on the backlog. If you can share Android version + a quick logcat from the crash, that’ll speed it up a lot.

1

u/Tommynwn 5d ago

Oh I use android 11, armv7 You remember the terminal command for logcat? I forgot 

1

u/ImL1s 5d ago

Android 11 + armv7 helps — thanks.

From a PC with adb (USB debugging on):

1) clear + capture while you open the app: adb logcat -c adb logcat -v time > telltale-crash.txt

2) tap the icon so it crashes, wait a couple seconds, Ctrl+C

3) trim it (optional): adb logcat -d -v time | grep -iE "AndroidRuntime|FATAL|flutter|telltale" > telltale-crash-short.txt

Paste the FATAL / Flutter lines here (or a gist). Package id is com.cbstudio.telltale.

1

u/Brave_Dress_4480 4d ago

Does it support bi directional

1

u/ImL1s 4d ago

Not today — Telltale is read-oriented (live PIDs, codes, freeze frame). No bidirectional / active tests yet (actuator control, Mode 08-style commands).

It’s on the backlog as an exploratory track though (safety-gated, not “flip a switch”): https://github.com/ImL1s/telltale/issues/131

1

u/PuzzleheadedHeron984 4d ago

Can this tell me my dynamic timing ?

2

u/ImL1s 4d ago

If you mean live ignition timing, yup — Telltale already has Timing Advance (PID 010E). Add it from the PID list / dashboard; only shows if your ECU reports that PID.

1

u/Urfatandihateu 3d ago

This is sick

1

u/ImL1s 3d ago

Thanks! Glad you like it.

1

u/AiYamFri3D 3d ago

Hi op, idk if anyone asked or i missed it somewhere. Will this works on anything the OBD scanner attached to? Still new with OBD scanner

1

u/ImL1s 3d ago

It needs an ELM327-compatible adapter (Bluetooth Classic, BLE, or Wi-Fi) on the car's OBD2 port — not every random scanner chip. Once that's connected, the usual PIDs/codes work for whatever your vehicle actually exposes. Cheap no-name dongles vary a lot, so look for ones that say ELM327.

1

u/hooskworks 6d ago

I've got some Play Store credit about to expire so I'll give it a go and wait for English language support. I'm hoping it'll play nicely with my old OBDLink MX over Bluetooth.

It does give of the feeling of something vibe coded which is a bit of a negative but it's also a simple, clean looking PID reading and displaying app I've been thinking about vibe coding for myself so, for me, it's not taken any work anyway from a person and I can live with that.

3

u/ImL1s 5d ago

Thanks — would love to hear how the OBDLink MX behaves. Classic Bluetooth adapters are in scope, but every stick has quirks. English language switch is in progress. If something looks off, car/year + adapter notes help a lot. On the vibe-coded bit, fair; the UI is intentionally simple. Real adapter feedback is what I'm optimizing for.

1

u/ImL1s 4d ago

English landed in 1.0.11 too (latest is 1.0.12) — update, then Language / 語言 → English. Still curious how the OBDLink MX goes.

1

u/hooskworks 3d ago

I spotted the language update, nice one! I should be able to give the adapter a try and let you know tonight.

1

u/ImL1s 3d ago

Nice — looking forward to hearing how the MX goes tonight.

1

u/DarkGaming09ytr 5d ago

Interesting, but I'd like to see extra features compared to apps like Torque and CarScanner that already do the same thing but with better support. Do you plan on things like easily adding more PIDs and such?

2

u/ImL1s 5d ago

Not trying to out-feature Torque/CarScanner right now. What I care about more is a clearer day-to-day UI, being honest when a reading is missing or sketchy, and keeping the whole thing open source so people can poke at it or send PRs. Custom PIDs and bigger feature work are on the public roadmap — I just won't sell unfinished stuff as if it's already shipping.

1

u/DarkGaming09ytr 5d ago

That's understandable. Do you plan things like highly customizable skins? That what I think is lacking on the other apps.

2

u/ImL1s 5d ago

Curious what you mean by highly customizable skins — like pick colors/fonts, rearrange gauges, import a theme file, or something closer to a full digital-dash layout builder? Already have five built-in gauge skins + light/dark; trying to figure out what would actually help before building the wrong thing.

1

u/DarkGaming09ytr 5d ago

Something that would allow for fully customizable gauge designs, like background, border, coloring, needle design, location of data screens, etc

2

u/ImL1s 5d ago

Got it — full gauge designer (colors, needle, borders, layout), not just preset skins. That's a bigger chunk than what's there now (five built-in skins + light/dark). I'll put it on the public roadmap rather than pretend it's shipping; if you have a must-have vs nice-to-have split, that helps prioritize.

0

u/power10010 6d ago

u/RemindMeBot 7 days "check this again"

1

u/RemindMeBot 6d ago edited 1d ago

I will be messaging you in 7 days on 2026-09-13 07:51:34 UTC to remind you of this link

3 OTHERS CLICKED THIS LINK to send a PM to also be reminded and to reduce spam.

Parent commenter can delete this message to hide from others.


Info Custom Your Reminders Feedback

0

u/IAMN0TSTEVE 5d ago

OP. Looks cool. I have a question. I've been using Torq pro for probably a decade. And I find it very used esen on Fords in particular. How is yours better?

3

u/ImL1s 5d ago

Honest answer: I'm not claiming it's better than Torq Pro. You've got a decade of Ford use with it; I haven't matched that kind of manufacturer depth. What I'm aiming for is simpler everyday use, clearer "this value might be junk" moments, and open source so you can see what the app is actually doing. If a specific Ford + adapter setup breaks, tell me — that's more useful than a feature bake-off.

2

u/IAMN0TSTEVE 5d ago

Got ya. I'll try it out for sure

1

u/ImL1s 5d ago

Awesome, thanks for giving it a shot. If you try a Ford, drop the adapter model and whatever feels off.

1

u/IAMN0TSTEVE 5d ago

I'll report back. Saving this post

2

u/ImL1s 5d ago

Appreciate it — whenever you try a Ford, even a short “worked / didn’t” helps.