yashsingh1/xdaforums huggingface dataset:
[Android Head-Units] chris.davis925:
Can we browse or mount the USB mass storage device that shows up?

If we can / once we do : can't we edit build.prop from this point to enable ADB and or install packages from unknown sources flag?

Also, try to do a factory reset of the unit. Or update the unit again using update.zip. perhaps the USB interface will show ADB when it's in update mode?

If someone wants to guide me through or direct me to some good material on the Bus Pirate unit I bought then maybe I can make some head way there with the other beige connectors.
[Android Head-Units] donaldta:
One should be able to; however, I have not idea why it is not working for aplusmiami. I've check a few related threads and maybe this one might help, "[FIX] MTP with USB debugging / ADB within Recovery". The problem with windows in this case is that put so many layers between you and the kernel to make it "user friendly" is that also makes it difficult to know if the problem is Windows related or device related.

I'm not sure if the DNN has a notification area. It is usually tied to the top portion of the display and can be dragged down to show the messages. On many Android devices, a notification message will show the connection status after you plug it into a PC. Sometimes, it gives you options or a link to the options where you can change how the device is perceived by the computer. The links usually takes to into you the Settings app where under Storage > ... (overflow menu / upper-right corner) > USB Connection where you'll have the option to select the connectivity.

Have you had any success in trying to get it to work, yourself? It could be a port problem on your hub or PC that may require to use another. Or, are you still unsure about the correct pin layout?

Well, it depends on what is mounted but I doubt it. The partitions that are mounted are typically related to the internal/external sdcard.

Anything is possible at this point. There seems to be a little tinkering required here.

The Bus Pirate Turorial 101 & 102 are a good place to start to install the drivers and get familiar with interacting with the unit. Also I'm not sure where you got your Bus Pirate but be careful because there have been several users which have pointed out the Sparkfun version may be backwards.

Also, does your voltmeter have a continuity test? Might want to check if the side connector is an extension/duplicate of the CN102 connector on the main system board.
[Android Head-Units] chris.davis925:
The DNN does have a notification area, but as far as the "Storage" settings area, it is missing from the "Settings" area of Android. I am curious if the notification area will "jump" you to this hidden area (if it displays) or, possibly it doesn't display this in the notifications area because it's been suppressed entirely by Kenwood?

I had my cable hooked up exactly like your picture illustrated, and my laptop immediately disables the USB host port when I plug it in because it has "Malfunctioned". I think that is an auto protective way that the USB host is indicating that the USB connection was not what was expected.

The only thing I gathered differently from the picture posted was that I didn't tie the USB wire "shielding" material to the metallic area of the DNN for an additional ground, since I figured that's what the fourth pin was for. Perhaps this is in fact required to complete the connection.

Well, it depends on what is mounted but I doubt it. The partitions that are mounted are typically related to the internal/external sdcard.

Thanks for the Bus Pirate guide links. I will look further into those. The good news is that it's my understanding that JTAG is usually (not always) at least 4 pins with two 3.3v connectors, which is exactly what I measured.

I haven't measured the side port and secondary beige port for continuity yet. I've been spending my (frustrated) efforts in trying to figure out why I can't at least get the USB peripheral port to work.

Are either of you around the SF Bay Area in CA by any chance?

---------- Post added at 10:49 PM ---------- Previous post was at 10:43 PM ----------

Another thought:

If we get to a point of browsing the mounted storage, I would be curious to look into where the Kenwood "Backup Settings" data gets written to.

The unit has the ability to save your configurations/ audio settings / stations etc. It must write it to the internal storage or the navigation storage, since it is not writing it to an external USB device.

Depending on what exactly it writes, we might be to replace the data with some additional information to write back to the system.

For example, if it is writing out an XML file with a list of files/ configuration changes to make back on the android partition, we might be able to tap into that and have it write further Android system changes outside of just audio settings.

That's all of course assuming it's not writing some proprietary file exclusive to the Kenwood apps.

One Final Thought: I am curious if earlier software versions of the unit have ADB or some other USB interface available. It might be worth flashing back to 1.02 (I think this is the oldest we can go) and checking each version from there up to see if the USB mode changes at all.
[Android Head-Units] chris.davis925:
For what it's worth I have cut open a different USB wire and reattached fresh wires again in the fashion listed before and I still get the same "windows has disabled this device" error when connecting the cable.

Can you please confirm the voltage meeter readings you get?

Also I would be happy to remotely connect to your pc in an attempt to mount the USB devices that are showing up.
[Android Head-Units] aplusmiami:
Houston We got something!!

OK I got something -

I put the unit in update mode - Standby / Parking Brake grounded. USB memory stick plugged into the external connector, just of you were going to update the firmware. Press update (I had the 1.5 update on the stick). BAM - another device came up on the device manager.

A Kenwood with a yellow exclamation (Pic 1).

I forced Googles Fastboot interface (Google USB ID) (pic 2)

It took...

I then ran adb devices and got (pic 3)

List of devices attached

000007100504235146D0 recovery

Give me some directions .... My wife is getting mad that I am spending to much time on this no time to research!
[Android Head-Units] chris.davis925:
I can't help you on the ADB side of things, but can you please post your voltage readings on the pins and also confirm that wire diagram posted earlier in this thread?
[Android Head-Units] aplusmiami:
I'll try to measure that tonight. I already made the cable pretty with shrink wrap etc..

I briefly read about using fastboot devices. Should I have used a different driver?
[Android Head-Units] chris.davis925:
Thank you.
[Android Head-Units] chris.davis925:
I got the USB device to finally recognize. On my unit, the ONLY time it will present itself is when you are in stand by mode.

Going to try ADB commands now.
[Android Head-Units] donaldta:
It depends on if Kenwood hid the section or if they deleted it.

Does this happen with all of your USB ports? Maybe try separating it with a USB hub? Or try a different operating system.

You shouldn't have to because the drain for shielding should be separate for ground for the USB signals. The idea is that the shielding is supposed to prevent outside radio frequencies to affect the data signals.

Well, that depends on how Kenwood implemented them. In many head units, the radio is part of the I/O board that is controlled by a MicroController Unit (MCU). Making the stock multimedia apps acting as a "remote control" for the MCU.

That's always a good idea because older ROM version typically have less security holes patched.
[Android Head-Units] chris.davis925:
question for you...since ADB only works now when the unit is attempting to update from update.zip, is this environment sperate from the normal android env?

Example: If I sideload an APK during the update process with an ADB command, will anything I do be null after the bootloader loads regular android again?

Another question: Do you know of an ADB command that can "pause" or "Stop" the update process in order to buy time before the unit reboots itself after completing the update?

Thanks

---------- Post added at 09:49 PM ---------- Previous post was at 09:27 PM ----------

I was able to issue adb reboot-bootloader command and now it is presenting another USB device called "android". Windows installed a driver and changed the name to "USB Modem Phone ADB Port" but adb.exe doesnt see it
[Android Head-Units] donaldta:
Was there anything else that did you do differently? or was the problem that your DNN probably didn't have "Linux File-CD Gadget USB Device" to associate?

Android Developers: Android Debug Bridge

No.

No.

Try forcing the ADB drivers from the Android Developers Toolkit from my previous post on the Android device. Maybe try using "adb kill-server" then "adb start-server" to "reboot" adb on your computer.
[Android Head-Units] chris.davis925:
okay so I found out why ADB stopped responding after issuing reboot-bootloader command, it's because it actually rebooted the device into the bootloader mode. lol

I can then talk to the unit by using FASTBOOT.exe (not adb.exe) and issue commands from there with no problems. It seems that we could flash roms etc from this point, but I haven't a clue what or if it's feasible to do this. Does ClockWork mod have universal compatibility?

Anyhow, to summarize:

ADB Does work, but only in the Android "Recovery" mode. You can issue shell commands because it gives an error about .sh file not being found. I tried ADB push / ADB Install commands, but ADB install errors out with the same .sh error (not found error) and the ADB push command just sits there. Task manager does show that it is reading a byte count for up to a min after I issue the command, so it's possible that it did something...but adb pull command doesn't find the file. Either way, I don't think it's useful since we are in recovery mode and changes made here probably won't stick after a reboot.

I am thinking that maybe our best bet is to somehow flash a rom via boatloader, but again this is one of those things that is over my head and I am not sure how to move forward.

Any ideas are welcome :)

---------- Post added at 11:56 PM ---------- Previous post was at 11:43 PM ----------

I just saw some of your instructions.

In ADB (adb via recovery mode) I tried your commands. Here are the results

(yes, I extracted the su file to the root of the adb.exe folder)

This is the result of shell command:

The thing you said about flashing another recovery / re-flashing recovery partition seems to me like the best bet, but I would need some further instruction from you before moving forward on that.
[Android Head-Units] donaldta:
Quick question. dose "adb pull /system/app/Email.apk" at least able to get something?
[Android Head-Units] aplusmiami:
I get does not exist

---------- Post added at 06:32 AM ---------- Previous post was at 06:14 AM ----------

adb reboot bootloader - reboots stuck on Kenwood Splash Screen (No more device listed in devmgr) Waited 5 min. Pwr off/on system rebuilding, splash then System rebuilding (Unknown Device ! appears ) Kenwood normal Initial Setup Screen appears

COULD THIS BE ANOTHER WAY IN?!?!?!? Maybe load a driver at this point?

adb reboot recovery - While Now Updating System reboots and continues updating...

Can not push or pull any files during the recovery process or after the recovery process.

tried adb remount and I get:

during updating: remount failed: Operation not permitted

after updating (remove usb device screen): remount failed: success

still can't push or pull

adb shell fails with the error: - exec '/system/bin/sh' failed: No such file or directory (2) -

---------- Post added at 06:44 AM ---------- Previous post was at 06:32 AM ----------

Heres something:

At the Disconnect USB device screen I tried:

adb remount

remount failed: success

adb push "ES_File_Explorer_3.1.0.2.apk" /sdcard

failed to copy 'ES_File_Explorer_3.1.0.2.apk' to '/sdcard/ES_File_Explorer_3.1.

.2.apk': Permission denied
[Android Head-Units] donaldta:
Okay, I guess that means the none of the partitions are mounted. *sigh* It sounds like you guys will need to replace the recovery. Unfortunately, it is not really that easy since this is not currently supported device. So, you'll need to (cross) compile it from the source.

At this point, I wonder if the oem lock is set and if it is password protected. Do you know if "fastboot oem unlock" works without a password? Btw, this command will cause a factory data reset (wipe of /cache and /data partitions) to prevent unauthorized access to your personal data. This is basically the mode which allows the recovery bootloader to be replaced.

---------- Post added at 10:59 PM ---------- Previous post was at 10:57 PM ----------

Maybe. If it is then it would be the adb driver.

---------- Post added at 11:04 PM ---------- Previous post was at 10:59 PM ----------
[Android Head-Units] aplusmiami:
I tried fastboot oem unlock

Waiting for device - device did nothing waited 2 minutes.

Nothing was returned ... Did a Ctrl 'c'

Maybe I needed to give it more time?
[Android Head-Units] donaldta:
Waiting for device? Does "fastboot devices" output anything?
[Android Head-Units] aplusmiami:
If I remember right fastboot devices did not output anything. Only adb devices worked.
[Android Head-Units] chris.davis925:
Woo hoo we officially have root for the Kenwood DNN990HD!
[Android Head-Units] kwarwick:
I've been following the progress closely and I have to say this is an impressive accomplishment!

Definitely looking forward to installing some third party apps on my DNN990HD.
[Android Head-Units] sshams95:
Incredible. I really thought this wouldn't happen. You guys don't know just how appreciative I am for all the hard work that was put into this. I've received notifications every time that was a post in this thread. Lot of these topics are way above my head.

I look forward to the final product...and I will live up to my committed pledge.

Again....thanks. And big thanks to the wives out there that put up with those husbands doing all the work!
[Android Head-Units] chris.davis925:
Little teaser.
[Android Head-Units] aplusmiami:
Very good job guys.. impressive work. All while I was at the beach! Can't wait to start tinkering. Root can't be far away.

---------- Post added at 11:56 PM ---------- Previous post was at 11:55 PM ----------

Previous post spoke to soon.. Great job!

---------- Post added 24th February 2014 at 12:01 AM ---------- Previous post was 23rd February 2014 at 11:56 PM ----------

Now we need to get a dnn991 with the Verizon card... Lol.. This unit is a great foundation for a true car pc experience. Hopefully we can get some developers come up with some nice roms for it
[Android Head-Units] chris.davis925:
I'd be happy to get root going on dnn991hd if someone buys me it ;)

Full write up on how to obtain root coming soon.
[Android Head-Units] aplusmiami:
I tried your directions straight through and no go...

I will try spamming during the update process...

---------- Post added at 02:59 AM ---------- Previous post was at 02:45 AM ----------

Definitely missing a step - I tried at various points and still no go... Anxiously waiting for your directions.

I was going to try to push something else but I figure I will wait for you guys.
[Android Head-Units] chris.davis925:
We are still working things out. Not quite stable yet.
[Android Head-Units] donaldta:
We did kind of ironed out the loading build.prop file. Apparently, the USB drive didn't need to be pulled as long as you could inject the file at the right time. Basically around 1/4 ish of the update progress bar, you should be able to "abd pull /system/app/Email.apk" and (it is case sensitive but) if it says file not found then it hasn't been written yet. Try it a couple times until it actually downloads, and when it does then you'll be able to upload the build.prop file via "adb push build.prop /system". It doesn't need to be spammed but you do have to run "adb root" before, otherwise you'll get permissions errors.

However, there seems to be something peculiar about things after it reboots a couple of times. Maybe after the second or third reboot. We experienced that the su binaries were reverted to stock and mounting the system as read-write will only work for a few seconds. We also lost sound for the entire android system but the stock media players for the secondary board worked, like the radio.
[Android Head-Units] aplusmiami:
Did you get adb shell to work?
[Android Head-Units] donaldta:
You cannot get adb shell to work in recovery and until after it reboots. The problem is that update.zip doesn't have a /system/bin/sh file. Instead a symlink is created for sh from /system/bin/mksh binary during the finalization of the update. However, if you are successful in replacing the stock build.prop with the modified one then you can use adb shell after it boots normally.
[Android Head-Units] aplusmiami:
Understood - I am up and running and I installed ES_File_Explorer_3.1.0.2.

using

adb install "ES_File_Explorer_3.1.0.2.apk"

Also installed The terminal program and pandora

Pandora works but screen orientation is sideways... (you don't need the bluetooth client) works right from the radio/wifi. Check that... I have no speakers connected so maybe no audio...I'll have to rig up some speakers.
[Android Head-Units] aplusmiami:
Pic showing USB debugging and Pandora apk working
[Android Head-Units] aplusmiami:
I really hope we can eliminate all the Kenwood stuff except for the RIL (radio interface layer) which we obviously need. Were are we sourcing the connector at? P/N and source please.. I want to add the cable to my car deck. So I can play with things real time.
[Android Head-Units] jbeavis19:
After reboot bootloader try "fastboot devices" and see if its detected that way.
[Android Head-Units] aplusmiami:
I think we are beyond that!?
[Android Head-Units] chris.davis925:
The part number for the cable was posted earlier.
[Android Head-Units] aplusmiami:
Here is the link:

https://www.sparkfun.com/products/10359

For anyone looking to make a cable.

Any progress on keeping root? Been quiet here..
[Android Head-Units] aplusmiami:
New thread for the Kenwood LZ-T700 Touchscreen

I started a new thread on Kenwood's Connected Touch Screen for those of you interested in messing with it. I picked up two of them for $150.00

http://xdaforums.com/showthread.php?t=2662565
[Android Head-Units] mike2246:
Tutorial

now that we have Root, is there going to be a tutorial posted with everything needed?
[Android Head-Units] donaldta:
No, it is not ready for the masses. Root is accessible but it is not permanent. It requires a hardware hack and a little bit of linux and adb knowledge just to get as far as we have so far. If you're not able to go back a few pages and use the referenced information that we have already posted, detailing the process thus far then you're not ready for it.
[Android Head-Units] Flame Red:
Too bad the root will not be for the masses as apps like Waze for example, might be really cool to have since we will never see any feature updates from Kenwood. But then again with all the software bugs in the DNN990HD, it is unreliable out of the box maybe rooting it is not worth it. Or maybe the opposite would be true, and the bugs would be fixed!
[Android Head-Units] aplusmiami:
root not ready doesn't mean that we will never obtain permanent root. they're guys working on it or at least I think they're working on it and hopefully they'll figure something out.
[Android Head-Units] chris.davis925:
I just wanted to update you guys and let you know that we've made some progress on this front. Still not ready though.

Thought you guys would appreciate some screen shots of cool things that can be done.

Screen shots show Youtube app, Google Maps and install of APKs from "Unknown Sources"
[Android Head-Units] sshams95:
Nicely done! Does Google Maps use the DNN's GPS?
[Android Head-Units] chris.davis925:
Yes. Works smoother and uses less resources than Garmin, too.
[Android Head-Units] aplusmiami:
Are you pushing the apks to the radio or have you got the store working?

---------- Post added at 02:36 AM ---------- Previous post was at 02:35 AM ----------

Got my cables today. My rigged one broke. Going to install in my car unit hopefully this weekend.
[Android Head-Units] coolmast3r:
Has anyone actually opened up the case and see if there is any micro/SD card slot inside?

Where are the Garmin map stored in this unit? SD card or internal memory?

I am interested in buying this unit if Malaysia/Singapore map can be added to the navigation software (Garmin map).

Thanks.
[Android Head-Units] aplusmiami:
There is a micro sd inside. See my previous post.
[Android Head-Units] chris.davis925:
Using a USB stick to install APKs.

Google Play Store doesn't work because of other dependencies.

I would really like to get rid of the Kenwood bloatware to increase start up time.

Would like to over clock the CPU too, but it appears that the kernel doesn't support it. I guess a custom kernel is required?

Can anyone shine some insight on this?
[Android Head-Units] aplusmiami:
Have we given up on a permanent root?
[Android Head-Units] chris.davis925:
No I had permanent root. Unfortunately in an effort of trying to get Google Play to work, I have bricked my unit.

At this point I no longer have a DNN990 to work with. What a waste of money :(
[Android Head-Units] aplusmiami:
Send the unit to me and I will try to get it swapped out for you. Was it new or refurbished?
[Android Head-Units] chris.davis925:
It was purchased new.

What do you mean by "try and swap it out?
[Android Head-Units] siralsmooth:
If the purchase date is under 2 years, a service center can get it back to normal under warranty. Have no worries.
[Android Head-Units] aplusmiami:
I have a friend that is a Kenwood dealer.. he can do things..

Especially if he knows you're trying to root the radio.
[Android Head-Units] chris.davis925:
are you in CA?
[Android Head-Units] lafester:
can you post what steps are needed to achieve permanent root?

don't need anything that is posted already :)

play store really isn't a big deal. side loading is fine for anything I plan on doing with the unit.

Thanks!
[Android Head-Units] chris.davis925:
Not ready
[Android Head-Units] aplusmiami:
Miami Florida

---------- Post added at 09:11 PM ---------- Previous post was at 09:09 PM ----------

I don't think you need to root to copy apk to the unit. Just need the cable and follow the directions.
[Android Head-Units] chris.davis925:
Sorry I didn't say this earlier, but thanks for your offer.

I have been trying to get serial access on the unit using the other two beige connectors (side and on the Android board) without any luck. With that being said, I am going to send it in to the Kenwood service center here in CA.

Once I get it back we can make some more headway!

In the meantime, can someone else who has a serial interface confirm that they cannot get any type of serial/JTAG response from any of the other beige connectors?

---------- Post added at 07:49 PM ---------- Previous post was at 07:39 PM ----------

Update:
[MENTION=2301266]aplusmiami[/MENTION] - can you confirm with your friend who works at the kenwood recovery center how they get the kenwood decks into recovery mode? It would seem to me that if they re flash the firmware or anything else they need to get the device into recovery mode.

Can you ask how they do this?

I haven't been able to figure out any key combinations to accomplish this.
[Android Head-Units] belkre:
Have you tried using a keyboard
[Android Head-Units] chris.davis925:
can you elaborate further on how this would help us get into recovery mode? I don't know of any keys that can be pressed to enter recovery with a keyboard.
[Android Head-Units] belkre:
for the life of my I can't remember the device I think it was a imito where you actually need to hold down backspace with a plugged in usb keyboard to get recovery. just stating that there could be the possibility that the key command to get into recovery on this device might be from a usb keyboard too.