Jump to content
AVIC411.com

Recommended Posts

Almost all developers ("hackers") have stopped further research on this topic by different reasons, but I think project isn't dead. At least navigation-related research. Also there is good news about working WiFi on our devices.

 

This project is not dead. The issue that is being encountered is a lack of ADB and the tedious steps of trying to get Pioneer's OSS code to build. One person is close to getting wifi on the devices and that will help with ADB debugging.  A lot of devs have stopped because while they were trying to renable WARP after applying the modifications, the units became bricked. So until the units are repaired, they can not contribute. And without having WARP the units take a decent amount of time to boot. 

 

 

As far as getting bluetooth to work with the 4100 firmware, we need to first figure out the cause before we can make a fix. I have tried combination of the old 4000 kernel with the 4100 software, and others but none of the combinations I tried fixed it.

 

The deck uses a Av.apk that interacts with C libraries that control the bluetooth functionality. I could get bluetooth audio to play through the deck when I changed a codec setting from digital to analog in TestMode, unfortualtey that setting does not persist across boots. So what it comes down to is more than likely the Av.apk, tries to use the bluetooth.so to control the bluetooth but one of the commands changed across versions, and no matter the combinations we will not get it to work unless we reverse the old library and modify it to take the new Av.apk commands for the 4000.

Share this post


Link to post
Share on other sites

What exactly you need? Testmode key or you want to change something in BSP?

 

I'm essentially trying to create an image for forensic purposes. Would copying the image from the SD card contain the filesystem?

Share this post


Link to post
Share on other sites

I'm essentially trying to create an image for forensic purposes. Would copying the image from the SD card contain the filesystem?

 

In this case two solutions available:

1) remove internal sd card and read this sd card using computer. To remove sd card password use testmode menu item "mode change" (you need testmode_a.key) or just use testmode_n.key type 3.

2) use backup script from avic backup topic (you will need testmode_a.key and copy_script.sh to copy contents of internal sd card to external storage).

 

SD card contains several partitions mostly with ext4 filesystems, so you will need *nix operating system to read data.

Share this post


Link to post
Share on other sites

Found some interesting stuff digging through the 1.10 backup image from my 8000nex.

 

Looks like carplay is called "DIO" internally. Smoking gun are dio_demo.jpg files that are screenshots or ads for carplay. Additionally the functionality of the classes referencing DIO look like they are working with carplay.

 

 There are a handful of classes so far relating to DIO. The jp.pioneer.ceam.mode.modescreen.DIO.SCR_DIO_Base class, which is found in the mode.apk,  has most of the basic functionality in it. This includes the display of the caution screen. First thing I am going to try is disabling the caution screen by editing the smali for this class. 

There are more references to DIO in other classes, mostly classes that manage the state of the UI/audio services. 

 

There are also many references to AAM. The base class for AAM in mode.apk looks MUCH more complicated than the carplay classes. I think this is appradio, but am not sure. I will take a look at the 8100nex image and compare to see if AAM is possibly android auto.

 

Attached the carplay DIO image file below. 

 

AV.apk -> /res/drawable-mdpi/dio_nex_demo_image.jpg

 

 

That's great. So question to those working on this. Do you think it is possible to change what version of the carplay interface is displayed by the iPhone? All the Pioneer units with resistive displays (4000-7100) have a different interface to those units with capacitive displays (8000/8100, appradio 4) and those units get smooth inertial scrolling through menus, and the ability to pan the map around with your finger. 

 

Carplay doesn't use pinch to zoom, and the single finger touch response of the Pioneer units is actually pretty good. Does it look like it would be possible to force the iPhone to use the more powerful interface?

Share this post


Link to post
Share on other sites

That's great. So question to those working on this. Do you think it is possible to change what version of the carplay interface is displayed by the iPhone? All the Pioneer units with resistive displays (4000-7100) have a different interface to those units with capacitive displays (8000/8100, appradio 4) and those units get smooth inertial scrolling through menus, and the ability to pan the map around with your finger. 

 

Carplay doesn't use pinch to zoom, and the single finger touch response of the Pioneer units is actually pretty good. Does it look like it would be possible to force the iPhone to use the more powerful interface?

Probably. But, the non 8100x units only have single core CPUs. This is likely the reason you don't have scroll effects, since the unit can't keep up well.

Share this post


Link to post
Share on other sites

Probably. But, the non 8100x units only have single core CPUs. This is likely the reason you don't have scroll effects, since the unit can't keep up well.

 

Only low-end models like 4000 contains single core CPUs. Other models have at least dual-core CPUs. For example, 5000nex and F960BT contains dual-core Freescale MCIMX6U6AVM08AB.

Share this post


Link to post
Share on other sites

Probably. But, the non 8100x units only have single core CPUs. This is likely the reason you don't have scroll effects, since the unit can't keep up well.

Remember that all on screen animations for CarPlay is handled on the phone. That's why you can take screenshots on your phone and you get CarPlay screen shots. The head unit is just transmitting touch responses to the phone.

 

CarPlay and Appradio mode are not that dissimilar.

Share this post


Link to post
Share on other sites

I have an AppRadio 4 (SPH-DA120) European version with firmware 1.08 (1.09 isn't out here in Europe, on website still 1.07). Works great so far. But the only thing that I miss is Android Auto because we have new Android smartphones with Lollipop 5.1.1 and AA. Would be great if it would be possible to add this. Hardware looks almost identically to the NEX headunits.

Using Mirrorlink isn't an option... it's a pain... very slow. Touch inputs work only sometimes. On my Sony Xperia Z1C just Google Maps and the Walkman app work in drive mode. Everything else is blocked, even the new apps (miRoamer and RockScout with Spotify) with Mirrorlink Global Drive Certification. AppRadio Mode needs too much cables (HDMI, USB) and adapters (MHL). AppRadio ONE mode would be an improvement. Android Music Support (MTP) doesn't work with my Sony Z1C or my Google Nexus 7 2013 (tried all settings und both USB connections). Is there anyone who has working Android Music Support over USB?

The developer/debug menu option works too.

[CORRECTED] Software Parking brake bypass isn't there but grounding the parking brake wire seems to work well. So no need for an external bypass circuit. [CORRECTED]

The debug menu is great to change time and date if you don't have connected the GPS antenna for synchronization.

I will try to unlock the SD card and make a copy of the image to be ready for a new one with some added features. If I could do something and help in any way to push the development, please tell me!

Great work so far!

 

Here is something interesting:

http://www.appradioworld.com/2015/03/breaking-ebay-listing-claims-custom.html

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×