2014+ Jeep Cherokee Forums banner

Android auto metrics app (off road pages)

13K views 99 replies 13 participants last post by  Fraddles  
#1 · (Edited)
Hi,

I have released my app in google play store, but it is in early access(closed testing). To access app, you need just to join google group jeepaa - Google Groups. and then you should be able to access (same account email) https://play.google.com/store/apps/details?id=com.mariusrdv.jeepaa
  • Tested only with Jeep Cherokee 2019 Limited, 2.0L turbo, ZF9 gearbox, Uconnect 8.4
  • Bluetooth device: Vgate vLinker MC+ (should be ok and cheap ELM327 1.5)
  • Android device: Xiaomi Note 10 pro (Android 13). App supports Android 9 and up

Atm application has bugs, so don't shout on me :). I will try to work on improvements from time to time.

Couple of screens:
 
#2 ·
Hi @mariuslt,

  • Thanks for your contribution! I'll try loading on my Android today and testing it. Just to confirm, you installed it on your Xiaomi and are actually running the code there, correct? The screenshots on your uConnect are your projecting the Xiaomi through Android Auto, correct?

  • Also, because we can't be too careful these days, I ran a static code security analysis on your .apk file and the report came back no major issues (attached). For Forum members, this means @mariuslt's file it likely not a security risk to install but of course the usual disclaimer applies...
 

Attachments

#14 ·
this morning short video(audio is low, need to turn volume to 100% :) )
When in auto mode, front to rear depends how hard you press on gas pedal :)
~0:37 selected sand/mud mode, ~1.38 selected auto mode.
At the end ~3:09, in full stop changing modes auto->snow->sport->mud, and backwards to auto.
So basically terrain modes just limits minimum front to rear desired value,
Auto minimum 0
Snow 252, and start gear is second
Sport 252
Sand/mud 504

 
#20 ·
#21 ·
I got the opportunity to get the Vlinker MC+ for free (can't beat the price). Everything works great including JeepAA, but I have a problem. I can converse between metric and imperial fluently, but not quickly! Is there an option to display in Imperial in the near future?

I love the app! Works great. It just takes me a second or two to do the conversion. Something about old dogs and new tricks comes to mind. :cautious:
 
#24 ·
Great news @AZJeeper! Both the vLinker MC+ and ODBLink MX+ are solid choices but there's a big price benefit on the MC+ !!
The MC+ is especially sweet if you can score one for free! I now have both the MC+ and MX+. I think the MX+ has an edge only because it works with the OBDLink App, and it may be a bit faster though I couldn't tell for sure. I read your detailed review and that was another factor in getting the MC+. I was disappointed that I couldn't get Torque (Lite) to work with the MC+ until I realized that the app is no longer supported on my relatively new Galaxy S23. It was copied over from my old phone during the switchover. I spent WAY too much time figuring that out!

Regarding the units conversion, this is usually a function of the software application, not the OBD Adapter. Which app are you using that it's only displaying in metric?
Hi, nice to hear that you like application. I will try to add option button in the settings to select display units. Btw do you use play store version or old one from github ?
Yes, the conversion is an app issue. I got the Play Store version of JeepAA. Quite impressed!
 
#26 ·
Thank you!

Here are some observations from your beta tester (i.e. me).

First, I found a really strange bug. When selecting Group: Engine, the page that comes up seems somewhat random. If I select another group and go back to Group: Engine, the title and data appear to be whatever the selection was prior to the last selection before Group: Engine. Confusing? Here is an example:

Select Group: Battery. Group: Battery is displayed correctly. Select Group: Performance. Group: Performance is displayed correctly. Select Group: Engine, Group: Battery is displayed!! That wasn't 100% consistent but that particular scenario did happen. The issue only seems to occur when selecting Group: Engine.

The other strange issue with Group: Engine...

Select Group: Driveline, then select "Start". "Off-road page" comes up. Then when I select Group: Engine, I get a page labeled Group: Driveline with gauges displayed and all data is in metric! That particular scenario happens 100% of the time.

Other Metric/Imperial observations:

Under Group: Driveline: Torque listed in Nm (ft-lb please).

Under Group: Performance: Boost listed in BAR (PSI please). X force and Y force are listed in m/sec2 (g-units please).

Under Group: Acceleration: listed in Km/h (MPH please).

Don't know if this is a comprehensive list, but I tried.

Appreciate your time and effort in making JeepAA!!!
 
#28 ·
Much better! Thank you!

One little nitpick... Group: Performance engine torque still in Nm.

The other thing I noticed is there seems to be fewer groups than before, but I didn't keep track of prior groups so I don't know which ones they might be. Guages in 1.0.9 not in 1.0.10 include X force, Y force, Front to Rear - Actual, Front to Rear - Desired, Pitch-Lateral, Roll-Longitudinal, Gear, and Steering value. I know those were duplicates to data in Group: Driveline so maybe that's the reason?

This version is much better overall, so I wouldn't change a thing! OK, maybe that torque in Nm thing.

Bravo! Great job! Off-road pages for the masses!!
 
#29 ·
Much better! Thank you!

One little nitpick... Group: Performance engine torque still in Nm.

The other thing I noticed is there seems to be fewer groups than before, but I didn't keep track of prior groups so I don't know which ones they might be. Guages in 1.0.9 not in 1.0.10 include X force, Y force, Front to Rear - Actual, Front to Rear - Desired, Pitch-Lateral, Roll-Longitudinal, Gear, and Steering value. I know those were duplicates to data in Group: Driveline so maybe that's the reason?

This version is much better overall, so I wouldn't change a thing! OK, maybe that torque in Nm thing.

Bravo! Great job! Off-road pages for the masses!!
yep, in 1.0.9 version, gouges were messed up, now is as it should be. Btw I see that you have TH version. I have simples one with DRIVEI if I am correct. So I could not test/confirm 3 more parameters from drivetrain unit. e-locker coupling, front/rear axle coupling torque and Rear Coupling Torque. In near future will add maybe new test group page with those parameters. You could test if something happening on those values when locking diff's, rear and center I think exists in TH version?
 
#31 ·
You guys need to make a video on this app, and show exactly what it does. That would be helpful, and help others who might be interested in having it...😁😉😎
 
#35 ·
Hi @mariuslt,

There's a bunch of us who are using the T'EYES CC3 Android Auto head. Since your app is a regular .apk I figured I'd try installing and testing it on the T'EYES. It downloads fine from the Play store and installs. It asks for permissions (but I think only location, not BT or BTE) but then it hangs on the following page saying, "All permissions are granted" with no way forward. I tried for testing purposes download onto my Google Pixel phone and the same thing happened. It installed fine but right after the permissions granting, it went to the same screen.

Is the app coded using something unique to the uConnect or should it work on any Android Auto /Android device?

Image
 
#36 ·
Should work on any android auto headunit. But yours is android tablet itself and thats the problem I guess. My app is coded specifically for "android auto car screen", screen what you see is just normal application screen to grant bluetooth permissions (and yes shows up as location). After you plug device to usb cable, you should see android auto screen started. Double check if Google Pixel has android auto installed.
 
#40 ·
Re: finding JeepAA: Are you using the link? It doesn't show up doing a regular search in the Play store. (see post #20)
Oh. Duh. My bad.

I could add all data if I knew formulas how to calculate :) this is the problem. For instance yesterday I have managed to get what terrain mode is selected. Auto/snow/sport/mud I know how to map because I see in my car what is going on. Somebody will need to tell what number shows when rock mode is selected :) (will be some integer number)

Regarding ELM327 it should work. Vlinker,elm and others similar BT devices use AT commands, just speeds and other params differs also supported commands.
Regarding braking power- not sure if this data easily available. ABS module has for sure. But just connecting to abs module lights abs and other errors on dash.

And thanks for feedback
I poked around with AlfaOBD and can see all of the Selec-Terrian mode selections, 4x4 Low range, locker status, and more. BUT, I thought there was a way to get raw data from AlfaOBD. I couldn't. Sorry.

I'm familiar with the ELM327 AT command structure so if there is something specifically you need for me to query I'll see what I can do that way if you can give me the PIDs.

I tried the cheap ELM327 mini. It connected to JeepAA, but I was only able to get data on groups Engine and Performance. Everything else was blank. The mini really a POS (Piece Of, umm... Stuff). I can say without hesitation that you need something better than the cheapest ELM327 mini (or maxi or whatever) to connect with anything, including JeepAA. It was free. I got to evaluate it. It won't get 5 stars!!

Thanks again!
 
#42 ·
Well, @mariuslt has been busy! I noticed a JeepAA update pop up on my phone so I went out to see what was new. A lot!

It looks like you figured out how to display all of the modes. They are all decoded ("Auto", "Sport", etc.) except for Rock Mode. That would be Mode 2 in the picture. Also, E-Locker: 1 means it's locked, 0 = unlocked. You nailed the AWD status! Sorry I couldn't be more help in getting you the data but at least now you have something to build on.

Image


Regarding that "feature creep" idea I had about showing brakes on this page, perhaps there's an easier way. Why not just incorporate the Group: "Difference in Wheel speeds" into Driveline? That way one could tell if a wheel changes speed. The screenshot below is static, but it works well when, for example, turning a corner. I'm sure it would give a hint at least if BLD is being applied.

Image


Also noticed a new menu item - "Display in fps" I believe. Not sure why that's there.

Again, many, MANY thanks for doing this! It's going from being "interesting" to a "must have"! At least for me.

Image
 
#43 ·
Glad to hear :), fps basically mean how many pids responses are received in a second. Request pid -> get response -> redraw all screen. Just interesting to my self how fast is communication. Because if too many pid request in one screen may slow down update rate. And thanks for rock mode and locker raw values, will map those in next build.
 
#44 ·
@mariuslt, found another bug in the Imperial/Metric conversion. Pictures are worth 1000's of words...

Metric:

Image


Imperial:

Image


Believe that 1st gauge should be engine oil temperature.

Also curious that the outside temp is different between the gauge and what's on Uconnect. 28C is 82.4F so the gauges are consistent between Metric and Imperial. What's on Uconnect must come from a different place. What's weird is on my JKU, the outside temp on the display is about 1.5F lower than if I read it on the OBD2 port, so FCA must use different probes for display vs internal ambient temps.
 
#45 ·
uhhhhh yep imperial gauge "Engine oil Temperature" is missing his description. will fix it in 1.1.3 version maybe next week. atm 1.1.2 is stuck in google review, not sure why( whats new, mapped awd missing values and added wheel speed differences in driveline screen. More red wheel view border value, means it is running faster than others).
Also cant remember, but i think outside temperature value I have confirmed with alfaobd. so uconnect maybe use some math rounding :rolleyes:
 
#50 ·
All these posts have been intriguing so I went ahead and purchased a vgate vlink mc+ and had the app up and running in 5 minutes. This is very cool! As another who is still a bit peeved that off road pages never came to the 2019s, I say thank you for doing this! Only have played with it for a few minutes and love what I'm seeing so far! If there is one wish I could add, not sure even if possible, but the ability to swipe left or right to switch between the groups as opposed to having to select from the menu would be incredibly helpful :)
 
#54 ·
@Gary Kline, If you open JeepAA on your phone, that white screen is all you will get. It would appear, as @mariuslt said, that your T'EYES CC3 is acting like an android tablet, not running Android Auto. That's why you get the white screen there too.

There are two different operating environments, native Android and Android Auto. Here's a quick test. Can you watch videos on your T'EYES CC3? If you can, that is NOT the Android Auto environment! Android Auto has strict restrictions that prevents any videos - even weather radar - from playing. Yes, there are hacks to get around it, but Google believes videos on AA are a safety issue.

I checked the T-EYES website and they say the CC3 has Android Auto but other models don't. I also saw some forum posts that says Android Auto CC3 needs the T'EYES Carlink app to work.

Good luck!
 
#56 ·
@Gary Kline, If you open JeepAA on your phone, that white screen is all you will get. It would appear, as @mariuslt said, that your T'EYES CC3 is acting like an android tablet, not running Android Auto. That's why you get the white screen there too.

There are two different operating environments, native Android and Android Auto. Here's a quick test. Can you watch videos on your T'EYES CC3? If you can, that is NOT the Android Auto environment! Android Auto has strict restrictions that prevents any videos - even weather radar - from playing. Yes, there are hacks to get around it, but Google believes videos on AA are a safety issue.

I checked the T-EYES website and they say the CC3 has Android Auto but other models don't. I also saw some forum posts that says Android Auto CC3 needs the T'EYES Carlink app to work.

Good luck!
Thanks @AZJeeper. The CC3 is a full Android head meaning I can (with nothing else connected) insert a SIM card in it (or connect via. WiFI), open the Google Play store and download and use almost any app there like an Android tablet. I have YouTube downloaded as well as the Google Maps app for example.

It also has Android Auto/Car Play meaning that if I connect my Google Pixel Phone (or an iPhone) and click the "CarLink" app, my phone displays on the head unit looking like Android Auto (or CP if I hook an iPhone up). So I believe I have both (though I use it almost exclusively in native Android mode all the time since there's really nothing extra I get by mirroring my phone through AA/CP.) Here's some screens I get natively with no phone or other connection:

YT app
Image



Google Maps app
Image
 
#58 ·
@mariuslt, had a quick look at 1.1.3. I didn't know there was an update until I noticed the Elocker showed off when I was in Auto mode! Didn't do all of the pages, just the driveline page. Wheel speed differences are really easy to notice now. BUT (always that "but"), the wheel speed data seems to blink off in the middle of a turn for a bit, then comes back. Maybe a fps issue? Wouldn't worry about fixing it yet - might be an OBD adapter issue. I'll do some more testing next time I get a chance.

Thanks again!
 
#59 ·
@mariuslt - I took some data on AlfaOBD for the four wheel speeds. The data was recorded in approx 150ms intervals. I plotted the data and noticed it was quite noisy - a lot of high-frequency spikes, but relatively low amplitude. There is a lot of data crossing in the spikes. I'm pretty sure that's what is causing the blinking in the wheel speeds.

Depending on how ambitious you are, there are a couple of ways to smooth out the data. The first would be a x-period average. For example, you could average the current reading with the last 3 samples for a 4-period average. It will add a bit of lag to the data, but we are still talking only a few milliseconds. A better but more complex way would be to do a "simple" low-pass first-order filter. That probably is more work than it's worth unless you are well-versed in filter design!

I did a couple of plots of unfiltered vs a 4-period average filter. You can see some crossing in the unfiltered that is eliminated with the simple averaging.

Unfiltered:

Image

4-period average:

Image

Of course, you may have a better idea.

Let me know if I'm getting too deep into this. You have already done a lot and JeepAA is a great app. I know your time is valuable, so I guess it's how much you like your "hobby"!
 
#60 ·
I will move this comment here :)

This is very cool. I only tried it out in my Garage as I have a meeting to do shortly, but I like it!

Constructive feedback:
  • Would it be possible to make it easier to switch groups? (Whether it's by swiping the screen left/right, or adding a "Groups" button at the top of the screen somewhere?)
  • Could we change the Jeep JK picture to a KL?
  • The "Connected & Group" box in the top left of the screen is kind of cut off from the driver's seat for me on my Pixel 7. Could it be moved to the right by half a cm or so?

Thank you!!
 
#62 ·
I will move this comment here :)

This is very cool. I only tried it out in my Garage as I have a meeting to do shortly, but I like it!

Constructive feedback:
  • Would it be possible to make it easier to switch groups? (Whether it's by swiping the screen left/right, or adding a "Groups" button at the top of the screen somewhere?)
  • Could we change the Jeep JK picture to a KL?
  • The "Connected & Group" box in the top left of the screen is kind of cut off from the driver's seat for me on my Pixel 7. Could it be moved to the right by half a cm or so?

Thank you!!
I was thinking the same. If it were kind of like the Performance Pages on my Challenger. A menu on the left: Something like this but, more fitting for the Jeep Cherokee:

Image