I would Like to enable Diagnostic (DIAG) Mode on Android.
I have the following questions about the same.
How is DIAG mode helpful ?
Is Rooting the Device necessary to enable DIAG Mode ?
How to verify if DIAG mode is enabled ?
Is it reversible ? Can i go back to Normal Mode ?
I'm using Google Nexus 5.
I'm fairly new to Android Development.
Any help would be appreciated.
1- I personally use DM to collect and analyse the messages between a mobile (UE) and a network. I use it with Qualcomm QXDM and QPST tools to analyse wireless protocol stack messages. With commercial phones, usually the DM is blocked as a security measure as it allows you to decapsulate the messages sent/received by the UE. I haven't heard about another use for it until now.
2- Yes all the commercial UEs I worked with ( mostly with Sony Xperia and currently with Xperia Ray) are rooted.
3- If DIAG mode is enabled, you can see it in your Device Manager. Here is a snapshot of mine. That means you have to install the correct drivers for the device (which was tricky with many phones). The device should has Qualcomm Chipset!
4- Yes you can unroot the device. Never tried with Nexus myself.
Can I ask what is the purpose of using it for you? I mean it's strictly working with protocol stacks.
Hope it helps! Cheers
Diagnostics Mode can be used to change your device's radio band & modem settings and other stuff like changing IMEI address or MAC Address, if you have appropriate software like DFS CDMA Tool or QPST.
You can enable it only if your phone is rooted.
Make sure Qualcomm drivers for your phone are installed in computer.
Enter this in Terminal Emulator in your device:
su
setprop sys.usb.config diag,adb
Note: This will work only if your phone's ramdisk has the appropriate configs enabled for the 'diag,adb' property.
If that didn't work, better open /init.xxxxxxx.usb.rc (xxxxxxx represents your device's codename or chipname or whatever) and check for properties related to 'diag'.
To verify if it's working, just check the Device Manager or the tool you're using & check if your phone gets connected.
Yes, it's reversible. To get back to normal mode, just type this in Terminal Emulator:
setprop sys.usb.config mtp
You'll get back to MTP mode :)
If you mean the developer options, then as of Android 4.2 I believe, one of the things about the developer options is that the menu is just hidden now. You have to purposely enable the menu to access the options.
It's helpful because you need it to help debug your apps while it's connected to your computer and the SDK. There are a lot of options there, depending on what kind of app you are making. Enabling the menu by itself does not do anything to your device.
No it's not necessary.
If you see developer options in the settings menu, then you know it's enabled.
All you are doing is unhiding the hidden developer menu. Not really anything to reverse. You can just turn off the options you turned on during development.
I dont know much about DIAG mode but it's used when you want to read data from phone using qualcomm settings. To get into DIAG mode use ##3424# or *#7284#. And enable DM+MOdem+.. on.
If the following command does not work:
su setprop sys.usb.config diag,adb
You can try:
su setprop sys.usb.config diag,serial_cdev,rmnet,adb
Both set of commands require root. The difference has to do with modem processors.
Related
I forgot my mobile pattern and now i wanna recover without factory reset of my device.
The developer options is turned off and I cannot turn on usb debugging as well.
How do I enable usb debugging and remove my pattern?
I cant even run adb commands, because when i run adb devices I don't see any devices listed there.
This is not possible, for security reasons - if it were possible, someone who had stolen your phone would be able to unlock it as well.
I don't think this is possible. Upon googling though, I found a link. I am not sure if it works but you can give it a shot.
https://technastic.com/usb-debugging-using-adb-command/
Please note that debugging must be enabled on your phone so that ADB can detect and communicate with it.
You can disable Developer options and USB debugging using the following commands respectively.
settings put global adb_enabled 0
settings put global development_settings_enabled 0
Try them and share if they work for you.
Here's a link.
I.e. go to About Phone in settings and tap the build number seven times.
I am getting started with Android development. I have an older Samsung Galaxy S2. But Android Studio doesn't recognize the device. I've tried going to the USB utilities but I can't seem to find them. Is my device too old?
You will have to enable the "USB debugging" option in your phone:you will get this after enable the "developer mode" on your phone(aka "developer options" on some devices).
Check this guide to enable this mode.
In addition - if you want to test your apps on a real device you will need to have a data USB cable(if you can upload stuff from your phone to your computer than you have the correct type of cable )
In some devices after enabling developer mode and connecting a cable you should scroll from the top side of the screen (Like in the photo) and click on USB for file transfer, and select Transfer files.
In addition to enable the Developer mode, if yet doesn't work, take a look at this page https://developer.android.com/studio/run/oem-usb, maybe with this driver you will have your problem solved: http://www.samsung.com/us/support/downloads
You can also check at your adb to make sure your device is connected:
cd cd c:\Users\Linda\AppData\Local\Android\sdk\platform-tools\
run: adb devices
It must shows your device's ID.
Hope it helps.
I was not using the correct cable. I assumed since the phone was charging I was using the correct usb cable to connect to my pc. Found a different cable, I believe the same cable that came with the phone. Now my device is found and working.
According to the N Developer Preview documentation, we can set up Direct Boot support on Android N through Settings > Developer Options > Convert to file encryption. I cannot find this option on a Nexus 6 running NDP2, nor on an NDP2 emulator.
According to that same documentation, we can also set this up by running adb reboot-bootloader and fastboot --wipe-and-use-fbe in a terminal window. This bug report suggests that this too is broken, along with the first option.
So, how do we test this? Specifically:
Has anyone gotten either of the above options to work, on a device or emulator?
Has anyone tried the "emulated Direct Boot mode" (adb shell sm set-emulate-fbe true), and does that work? And did you try that on a device or emulator?
Are there any any known side effects of trying this stuff (e.g., you're likely to brick your device)?
It only works on 6P and 5X, via dev options. The '--wipe-and-use-fbe' option seems not be available yet. FBE appears to work OK, you can always format userdata to revert.
I have a problem with Fly IQ449. It haven't got full developer menu. Also, I can't connect it via USB (I tried to install different drivers, but ADB still doesn't work). And I haven't got root.
7x tapping on "build number" in device info menu doesn't work too. Absolutely no effect.
Is it possible to do it?
/sorry for my google english/
for adb to work , you need to explicitly enable it via Developer Settings. If such an option is not available in your Phone , try to have a custom ROM like Cynogenmod Installed and you will get the options there .
I am trying to enable USB Debugging on Android so that I don't need to use the emulator.
I did what all the posts all around the web say to do: I went to settings -> applications -> Developer -> USB debugging
It still does not turn on the notification sign that USB Debugging is enabled, and Eclipse does not recognize it, and uses the regular emulator.
Does anyone have any idea what is wrong?
You haven't specified what device you are using or what operating system you are using, so that could be helpful.
A few things to keep in mind:
1 Don't mount as USB storage.
2 You also need to make sure to install the drivers for your phone so that the Android Debug Bridge (ADB) can properly communicate. After these are installed, try the command "adb devices" and you should see an item in your list of devices.
Update based on your comment: You can download Kies from Samsung, which include the drivers (as well as other things): http://www.samsung.com/us/kies/
Or you can find unofficial driver-only packages, such as: http://forum.xda-developers.com/showthread.php?t=961956
I think you'll need the OEM USB dirvers.
Read this:
OEM USB Drivers
My experience with windows has been that you might need to un-install the USB drivers under device manager. Then disconnect the device (restart might be required). After plugging the device back in make sure you use the manufactures drivers if available
you have installed your device driver rite?then right click on your app name->run as->run configurations->target->select manual->apply.after that click on debug button then it will ask you to select the device.
If everything else is tested, try with another USB cable.
On Android 4.2 and higher, the Developer options screen is hidden by default. To make it visible, go to Settings > About phone and tap Build number seven times. Return to the previous screen to find Developer options at the bottom.
Fruthermore on some devices you will be asked to accept an RSA key, which allows debugging through your computer. This ensures that other adb commands cannot be executed unless you're able to unlock your device.
Detailed information can be found here:
http://developer.android.com/tools/help/adb.html It is the overview about adb commands (which is used to send data to your device) and it starts with the steps how to bring your phone to debug-mode.
I wish to add to Danation's answer with the following.
If you have installed KIES, and you've tried following instructions a couple of times (for the android SDK package) without success, here's what worked for me:
As a precaution, disconnect the device, and press 'Revoke USB Debugging authorizations'.
Now, go to kies, and reinstall the device driver as seen on the image below.
Connect the device.
For me, it was a routine, it usually works when installing kies, but I was stuck on this today for a little while, and I hope i can help others with my solution as well..