Related
Hi!
Just got an HTC Magic that was locked on Vodafone Spain. The phone is great, but I seem to have a problem, I can use it as a USB mass storage device.
When I plug it to the computer using the USB cable that came with the phone, the USB notification doesn't shows up, so I can't use the mass storage...
The microSD card has 8GB of capacity and it seems to be ok, at least I can take pictures and saved to the card...
I have tried on Linux(Ubuntu 9.04) and I got the following errors on syslog:
Code:
Sep 25 00:24:20 hotice kernel: [ 441.792088] usb 3-1: new full speed USB device using uhci_hcd and address 6
Sep 25 00:24:20 hotice kernel: [ 441.912044] usb 3-1: device descriptor read/64, error -71
Sep 25 00:24:20 hotice kernel: [ 442.136044] usb 3-1: device descriptor read/64, error -71
Sep 25 00:24:21 hotice kernel: [ 442.352116] usb 3-1: new full speed USB device using uhci_hcd and address 7
Sep 25 00:24:21 hotice kernel: [ 442.472079] usb 3-1: device descriptor read/64, error -71
Sep 25 00:24:21 hotice kernel: [ 442.696080] usb 3-1: device descriptor read/64, error -71
Sep 25 00:24:21 hotice kernel: [ 442.912091] usb 3-1: new full speed USB device using uhci_hcd and address 8
Sep 25 00:24:21 hotice kernel: [ 443.320083] usb 3-1: device not accepting address 8, error -71
Sep 25 00:24:22 hotice kernel: [ 443.432084] usb 3-1: new full speed USB device using uhci_hcd and address 9
Sep 25 00:24:22 hotice kernel: [ 443.840091] usb 3-1: device not accepting address 9, error -71
Sep 25 00:24:22 hotice kernel: [ 443.840117] hub 3-0:1.0: unable to enumerate USB device on port 1
I tried to connect it to Windows XP, it appears an error installing the hardware, then tried to install the USB driver that comes with the Android SDK but with no luck
I have already made a reset to defaults on the phone, but I still get the same problem.
Does anyone knows what could be happening and how can I solve it?
Thank you all.
I don't know if its important, but here is some more info on the phone:
SAPHIRE PVT 32B SHIP S-ON G
HBOOT-1.33.0007 (SAPP10000)
CPLD-10
RADIO-2.22.19.26I
Have you create the needed udev configuration for your HTC?
In order to mount correctly a HTC Magic you have to the following udev configuration file.
Code:
sudo gedit /etc/udev/rules.d/50-android.rules
And paste the two following lines. Do not forget to change USERNAME with your Ubuntu username
Code:
SUBSYSTEM=="usb",SYSFS{idVendor}=="0bb4",ATTR{idProduct}=="0c02",SYMLINK+="android_adb",MODE="0666",OWNER="USERNAME"
SUBSYSTEM=="usb",SYSFS{idVendor}=="0bb4",ATTR{idProduct}=="0c01",SYMLINK+="android_fastboot",MODE="0666",OWNER="USERNAME"
After that you have to either reload the udev configuration or restart udev. To be sure restart udev.
Code:
sudo /etc/init.d/udev restart
I hope this will help youto resolve your case
Thank you for the reply, but I have already done that...
Also, I have pluged in another HTC Magic(a 32A version) to the same laptop and it worked ok
I cant understand what is happening ... can anyone else help me?
If I put the phone in Fastboot Mode, connect it to the laptop, and run the command
Code:
fastboot devices
I can see the phone... but using it as a usb mass storage, nothing happens
its probably hardware then. get them to replace the phone for you.
Humm, thats bad news
The phone is in second hand and I don't have the receipt of the purchase. I will ask the seller if he has it, if not, I guess I will not have a chance to put it to repair under warranty
Also, I have already installed the Cyanogen recovery image, so I guess that would void the warranty, right?
Pushing this topic to the top, has anyone else had this problem?
I had the problem on mine once but it was just related to one pc.
Removed all the drivers off the PC and it worked when I reconnected
@skhell
I don't know where you would find it for a 32A, but assuming you did not change your SPL you can use Fastboot to completely flash a stock config (system, recovery, boot, data, etc)
For instance, Cyanogen's instructions have you fastboot a SAPPIMG.nbh for 32B devices, I am assuming such an image exists for 32a devices as well...
If you can completely re-flash the entire system your warranty claim should be fine.
Yeah, I can restore the phone right as it was originally, the problem is that I don't have a proof of purchase to put it into repair under warranty...
I could not post directly in the development thread as I joined simply to share my solution. If anyone can confirm and prepare a better guide please post to CM7 thread by whistelstop.
You will need your factory mac address.
MAC Addresses all being the same is due to the nvs_map.bin file required by the tiwlan driver. dmseg driver will tell you it is looking for it and defaulting mac address.
I am running CM7 mileage will vary in stock rom.
http://www.omappedia.org/wiki/Porting_MCP_WLAN_to_Android#TxBiP_Calibration
I used the calibration instructions in terminal emulator on cm7 Kindle as "su"
#wlan_cu –b
# / w p 1 l 2 f 2
# / t b v 21
# / t b t 1 0 0 0 0 0 0 0
#/ q
New nvs_map.bin file will be ceated in /data/misc/wifi/
#cp /data/misc/wifi/nvs_map.bin to /sdcard/nvs_map.bin
connect to linux/windows host copy file to pc
open with hex editor I used xvi32 for windows.
link to my source for instruction for byte order and editing.
http://processors.wiki.ti.com/index...ce_(CLI)_User's_Guide#Editing_the_MAC_Address
Short instructions:
Editing the MAC Address
After the TX BIP runs, there is a new file called nvs_map.bin in Linux that contains the MAC address and the calibration data. The document SWAA044_NVS_INI_File_Functions_AN.pdf contains the format of the NVS file. If MAC address fields are manually edited with a hex editor, the byte order should be low byte first, followed by the high byte:
MAC address low register (offset 0x01 to 0x02)
MAC address LSB (offset 0x3 to 0x06)
MAC address high register (offset 0x08 to 0x09)
MAC address MSB (offset 0x0A to 0x0D)
The MAC address LSB and MAC address MSB, respectively, are shown in bold in the
following code for 08:00:28:12:34:56:
0000: 01 6d 54 56 34 12 28 01 71 54 00 08
For 11:22:33:44:55:66:
0000: 01 6d 54 66 55 44 33 01 71 54 22 11 00 00
Using a hex editor, you should change the bold numbers to the MAC address you
want to use.
Be careful about byte order and look closely at examples.
Good Luck
Please confirm instructions yourself and use at your own risk
Just tried that and it worked beautifully!
Thanks for that - great find!
TheKid2 said:
I could not post directly in the development thread as I joined simply to share my solution. If anyone can confirm and prepare a better guide please post to CM7 thread by whistelstop.
You will need your factory mac address.
MAC Addresses all being the same is due to the nvs_map.bin file required by the tiwlan driver. dmseg driver will tell you it is looking for it and defaulting mac address.
I am running CM7 mileage will vary in stock rom.
As I can not post links you will need to google my text and find correct link (noob)
maybe a moderator can fix for me.
######.omappedia.org/wiki/Porting_MCP_WLAN_to_Android#TxBiP_Calibration
I used the calibration instructions in terminal as "su"
#wlan_cu –b
# / w p 1 l 2 f 2
# / t b v 21
# / t b t 1 0 0 0 0 0 0 0
#/ q
New nvs_map.bin file will be ceated in /data/misc/wifi/
#cp /data/misc/wifi/nvs_map.bin to /sdcard/nvs_map.bin
connect to linux/windows host copy file to pc
open with hex editor I used xvi32 for windows.
link to my source for instruction for byte order and editing.
##processors.wiki.ti.com/index.php/OMAP35x_Wireless_Connectivity_WL1271_Command_Line_Interface_(CLI)_User%27s_Guide#Editing_the_MAC_Address
Short instructions:
Editing the MAC Address
After the TX BIP runs, there is a new file called nvs_map.bin in Linux that contains the MAC address and the calibration data. The document SWAA044_NVS_INI_File_Functions_AN.pdf contains the format of the NVS file. If MAC address fields are manually edited with a hex editor, the byte order should be low byte first, followed by the high byte:
MAC address low register (offset 0x01 to 0x02)
MAC address LSB (offset 0x3 to 0x06)
MAC address high register (offset 0x08 to 0x09)
MAC address MSB (offset 0x0A to 0x0D)
The MAC address LSB and MAC address MSB, respectively, are shown in bold in the
following code for 08:00:28:12:34:56:
0000: 01 6d 54 56 34 12 28 01 71 54 00 08
For 11:22:33:44:55:66:
0000: 01 6d 54 66 55 44 33 01 71 54 22 11 00 00
Using a hex editor, you should change the bold numbers to the MAC address you
want to use.
Be careful about byte order and look closely at examples.
Good Luck
Please confirm instructions yourself and use at your own risk
Click to expand...
Click to collapse
I'll verify tomorrow. Thanks for taking the time to help run this to ground and get a workaround.
** Deleted **
For new driver only ....
so next cm7 build will get the fix
right?
As it was my first post forum would not allow me to post links I am hoping someone will clean up solution and add to development thread.
whistlestop said:
I'll verify tomorrow. Thanks for taking the time to help run this to ground and get a workaround.
Click to expand...
Click to collapse
love this rom , I have four of these running on my router now with original factory mac addresses, Thank You for your work. I know from personal experience hours and hours can just disappear when you get involved with a project of this type.
Is there a way to get the factory MAC address while still in CM7 or do I have to load the stock ROM to get it and then go back to CM7?
I have not found am method other than loading stock software back on device.
If you only have one kindle on your network you most likely will never have a problem.
If you had more than one running cm7 you could have router issues as they all were reporting same mac address. You will not have any issues unless another cm7 kindle shows up on the same wireless access point as yours.
Unless you have a router log or something with your former mac address, I think you have to reload stock to find it. Thats what I did anyway.
Thanks to the OP for posting this; worked like a charm!
direct editing
could we use a hex editor to change the local file on the kindle?
I spotted one at the market place, and combined with SU privileges it might get the job done.
jfb9301 said:
could we use a hex editor to change the local file on the kindle?
I spotted one at the market place, and combined with SU privileges it might get the job done.
Click to expand...
Click to collapse
any hex editor should work. I am so use to using laptop still adjusting to touch keyboard.
Hopefully better instructions
having just stumbled through to OPs instructions (hats off to the OP for finding this). Successfully I might add, I thought I'd write up a hopefully more clear method of achieving this.
As I have had difficulty with the adb.exe command (connection issues, probably from a dodgy connection if I have too many USB devices plugged in) I chose to use applications local to my Kindle itself for as much as I could.
Apps:
adb.exe (the one that came with Kindle_Fire_Utility worked for me) grab a copy of this useful tool here kindle fire utility thread
Root explorer from the android market android market link
HexEditor android market link
Kindle fire
Computer
Data:
Your original MAC address - this might suck to get, as you will have to get it from your Kindle booted to stock Kindle Fire Firmware. I had installed CM7 using TWRP, so I booted to TWRP did a backup of my current CM7 OS, did a restore to the KF OS, booted to stock(rooted) opened up settings/device and nabbed that pesky MAC address, rebooted to TWRP, restored CM7.
Instructions:
connect KF to computer
open the computers start menu and select run, type CMD in the box
navigate to kindle_fire_utility/tools
type command: adb shell
adb should open and start communication with you Kindle
within the shell you have to type the following (be mindful of the spaces as they are important, ignore the #s as they are to make this post put the spaces in):
#wlan_cu –b
# / w p 1 l 2 f 2
# / t b v 21
# / t b t 1 0 0 0 0 0 0 0
#/ q
now use ctrl-c to end ADB, and command:
exit
to close cmd, you are done with windows.
now the kindle part...
open root explorer
/data/misc/wifi
select nvs_map.bin and copy to the sdcard, I made two copies and named the second nvs_map.bin.bak just in case things got screwed from this point on.
exit root explorer
open HexEditor
open /sdcard/nvs_map.bin and change the digits in the very first line of the file
(example from OPs post)
following code for 08:00:28:12:34:56:
0000: 01 6d 54 56 34 12 28 01 71 54 00 08 00 00
For 11:22:33:44:55:66:
0000: 01 6d 54 66 55 44 33 01 71 54 22 11 00 00
save the file
use root explorer to copy it back to /data/misc/wifi
long press the file and set permissions to RW-RW-RW-
Reboot.....
Done
---------- Post added at 04:09 PM ---------- Previous post was at 03:11 PM ----------
I confimed MAC address using my wifi router (DDWRT) is awesome.
Does anyone know a way to get CM7 to cough up the kindles MAC address?
I'm having some difficulties with these instructions. I've tried with the WiFi setting from CM7 on and off, and also with the full instructions from the omappedia.org site, and it's still not working. A quick Google didn't come up with anything.
This is my output (from an ADB shell, obviously):
Code:
# insmod /system/etc/wifi/tiwlan_drv.ko
# start wlan_loader
# ifconfig tiwlan0 up
# wlan_cu –b
ERROR - IpcWpa_Sockets_Open - can't connect the socket
******************************************************
Connection to supplicant failed
******************************************************
ERROR - IPC_STA_Private_Send - error sending Wext private IOCTL to STA driver (ioctl_cmd = 800003, res = -1, errno = 19)
ERROR - driver is not in RUNNING state!
user_main, start
\> Driver/, Connection/, Management/, Show/, Privacy/, scAn/, roaminG/, qOs/, poWer/, eVents/, Bt coexsistance/, Report/, dEbug/, biT/, aboUt, Quit
/ D S
\> Driver/, Connection/, Management/, Show/, Privacy/, scAn/, roaminG/, qOs/, poWer/, eVents/, Bt coexsistance/, Report/, dEbug/, biT/, aboUt, Quit
.../Driver> Start, sTop, stAtus
ERROR - IPC_STA_Private_Send - error sending Wext private IOCTL to STA driver (ioctl_cmd = 8000001, res = -1, errno = 19)
ERROR - Failed to start driver!
I have tried it with and without the first three lines (going straight to wlan_cu -b), and the / D S line is an unsuccessful attempt to start the driver. An attempt to just push through all the commands gives an error message with every line, and does not create the nvs_map.bin file.
Anyone have any ideas?
I had wifi on, and did not run the first 3 commands. No thoughts beyond that.
For reference, I am on the latest CM7 with the updated video stuff by wistlestop (I think)
csyria6919 & jfb9301,
I can confirm, you'll get the errors csyria6919 gets with WiFi OFF - turn on Wifi on the KF and then the ADB commands work without errors.
VERY NICE Fix - +1 thanks to TheKid2!
~J
csyria6919 said:
I'm having some difficulties with these instructions. I've tried with the WiFi setting from CM7 on and off, and also with the full instructions from the omappedia.org site, and it's still not working. A quick Google didn't come up with anything.
This is my output (from an ADB shell, obviously):
Code:
# insmod /system/etc/wifi/tiwlan_drv.ko
# start wlan_loader
# ifconfig tiwlan0 up
# wlan_cu –b
ERROR - IpcWpa_Sockets_Open - can't connect the socket
******************************************************
Connection to supplicant failed
******************************************************
ERROR - IPC_STA_Private_Send - error sending Wext private IOCTL to STA driver (ioctl_cmd = 800003, res = -1, errno = 19)
ERROR - driver is not in RUNNING state!
user_main, start
\> Driver/, Connection/, Management/, Show/, Privacy/, scAn/, roaminG/, qOs/, poWer/, eVents/, Bt coexsistance/, Report/, dEbug/, biT/, aboUt, Quit
/ D S
\> Driver/, Connection/, Management/, Show/, Privacy/, scAn/, roaminG/, qOs/, poWer/, eVents/, Bt coexsistance/, Report/, dEbug/, biT/, aboUt, Quit
.../Driver> Start, sTop, stAtus
ERROR - IPC_STA_Private_Send - error sending Wext private IOCTL to STA driver (ioctl_cmd = 8000001, res = -1, errno = 19)
ERROR - Failed to start driver!
I have tried it with and without the first three lines (going straight to wlan_cu -b), and the / D S line is an unsuccessful attempt to start the driver. An attempt to just push through all the commands gives an error message with every line, and does not create the nvs_map.bin file.
Anyone have any ideas?
Click to expand...
Click to collapse
Hi,
I only used docs as reference. Wifi should be turned on on Kindle. I issued all command from terminal emulator running on Kindle. Hope you have found solution that works for you. Also there are spaces in between just about every letter in the commands.
Let us know if you were successful.
Hello,
I am hearing about cpu utilization issue in another thread. http://forum.xda-developers.com/showthread.php?t=1411895
Can anyone running cm7 and using nvs_map file check utilization connected to secure network. My installation is not exhibiting cpu behavior stuck at 1008 that is being described. Wondering if using calibration file is actually improving performance.
As a side not same file can be used in the current build of ics they are developing in that thread.
cpu scaling issue does not show up on unsecured net. Need a few people to sound off here to determine if my kindles are the only ones not having scaling issue.
Thanks
Is there somewhere in cm7 to check cpu utilization, I looked everywhere ended up downloading task manager from market. Seems like task manager, and performance monitor should be in there somewhere. I am sure I am overlooking something simple.
Thanks
TheKid2 said:
Is there somewhere in cm7 to check cpu utilization, I looked everywhere ended up downloading task manager from market. Seems like task manager, and performance monitor should be in there somewhere. I am sure I am overlooking something simple.
Thanks
Click to expand...
Click to collapse
I used your guide, got CM7 on my device and will check that once I get home.
To check CPU utilization I'd recommend CPU Spy https://market.android.com/details?id=com.bvalosek.cpuspy
I am attempting to connect to a serial device from a Android tablet, via
USB-Serial Converter. In order to interface with this particular serial
device, a linux library must be used as an interface.
This library takes an integer as an argument, and tries to connect to the
device at the following location : /dev/ttySx, where x is the arguement. If
2 is provided to the library, it will look for the device at /dev/ttyS2.
Very simple.
When I connect the device to Ubuntu, there's is one simple extra step for
this device to work with the USB-Serial convert. The converter is exposed
at the location /dev/ttyUSB1. I just need to create a simple soft-link with
the serial port pattern (etc "ln -s /dev/ttyUSV1 /dev/ttyS99"). It works
perfectly.
Now the problem arises for Android. The converter is seen at
/dev/bus/usb/01/01. I never seen this convention in other project. The
question is how can I direct the I/O from /dev/ttySX to /dev/bus/usb/01/01
ehpaul said:
I am attempting to connect to a serial device from a Android tablet, via
USB-Serial Converter. In order to interface with this particular serial
device, a linux library must be used as an interface.
This library takes an integer as an argument, and tries to connect to the
device at the following location : /dev/ttySx, where x is the arguement. If
2 is provided to the library, it will look for the device at /dev/ttyS2.
Very simple.
When I connect the device to Ubuntu, there's is one simple extra step for
this device to work with the USB-Serial convert. The converter is exposed
at the location /dev/ttyUSB1. I just need to create a simple soft-link with
the serial port pattern (etc "ln -s /dev/ttyUSV1 /dev/ttyS99"). It works
perfectly.
Now the problem arises for Android. The converter is seen at
/dev/bus/usb/01/01. I never seen this convention in other project. The
question is how can I direct the I/O from /dev/ttySX to /dev/bus/usb/01/01
Click to expand...
Click to collapse
Which android device are you using and with which kernel and android build? In my case I am using kernel 3.0.+ with CM9 on a Kindle Fire and I do see the /dev/ttyUSBx getting created along with the /dev/bus/01/01. It has been a month since I tried it but I was able to see the problem you see and here is what I remember. When you plug the serial convertor both /dev get created but since the Android USB support only uses /dev/bus/usb/01/01, the kernel in order to save power "unmounts" the unused /dev/ttyUSBx after a certain time period. You can try using dmesg to see if that is happening in your case also. There is a kernel build flag that tells the kernel not to "unmount" it but I dont remember it off-hand. Best would be to use the Android USB support to talk to your device instead of the linux library if you can.
--------Update after testing it out again and checking dmesg etc---------------------------
When I plug the FTDI cable this is what shows up in dmesg:
<6>usb 1-1: new full speed USB device number 8 using musb-hdrc
<3>usb 1-1: device v0403 p6001 is not supported
<6>ftdi_sio 1-1:1.0: FTDI USB Serial Device converter detected
<6>usb 1-1: Detected FT232RL
<6>usb 1-1: Number of endpoints 2
<6>usb 1-1: Endpoint 1 MaxPacketSize 64
<6>usb 1-1: Endpoint 2 MaxPacketSize 64
<6>usb 1-1: Setting MaxPacketSize 64
<6>usb 1-1: FTDI USB Serial Device converter now attached to ttyUSB0
At this point if I check the filesystem I see both /dev/ttyUSB0 and /dev/bus/usb/001/0xx [ xx being the current device number ]
I can work with /dev/ttyUSB0 and all is well. Now as soon as I invoke any app that uses Android USB Host Mode API to connect
to USB (for enumeration, connection or whatever) the /dev/ttyUSB0 gets disconnected with following message from dmesg:
<6>ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
<6>ftdi_sio 1-1:1.0: device disconnected
At this point /dev/bus/usb/001/0xx is still alive and if I enumerate the USB devices using android API I see the same as the adaptor
name. So looks like till the Android USB API takes over the FTDI is available as /dev/ttyUSB0 but not afterwards.
------------------------Update ends--------------------------------
(a) If you see a /dev/ttyUSB1 device node created, then you can try the following in an Android terminal:
Code:
stty -F /dev/ttyUSB1 raw
cat /dev/ttyUSB1
If this shows data from your device, then you can use directly the device node to read()/write(), POSIX-style, without needing any library.
(b) If you cannot see a /dev/ttyUSB1 in your Android device, this means that you need to load the ftdi_sio kernel module (check android.serverbox.ch/?p=285 for instructions).
Let me link that for you:
"How to enable FTDI Support for your USB Host featuring Honeycomb Tablet (including sample native application)"
Also have a look at FTDI's Android Paper:
"White Paper: Connecting Peripherals to an Android Platform"
and this relevant blog, from this XDA thread.
pankaj013 said:
Which android device are you using and with which kernel and android build? In my case I am using kernel 3.0.+ with CM9 on a Kindle Fire and I do see the /dev/ttyUSBx getting created along with the /dev/bus/01/01. It has been a month since I tried it but I was able to see the problem you see and here is what I remember. When you plug the serial convertor both /dev get created but since the Android USB support only uses /dev/bus/usb/01/01, the kernel in order to save power "unmounts" the unused /dev/ttyUSBx after a certain time period. You can try using dmesg to see if that is happening in your case also. There is a kernel build flag that tells the kernel not to "unmount" it but I dont remember it off-hand. Best would be to use the Android USB support to talk to your device instead of the linux library if you can.
--------Update after testing it out again and checking dmesg etc---------------------------
When I plug the FTDI cable this is what shows up in dmesg:
<6>usb 1-1: new full speed USB device number 8 using musb-hdrc
<3>usb 1-1: device v0403 p6001 is not supported
<6>ftdi_sio 1-1:1.0: FTDI USB Serial Device converter detected
<6>usb 1-1: Detected FT232RL
<6>usb 1-1: Number of endpoints 2
<6>usb 1-1: Endpoint 1 MaxPacketSize 64
<6>usb 1-1: Endpoint 2 MaxPacketSize 64
<6>usb 1-1: Setting MaxPacketSize 64
<6>usb 1-1: FTDI USB Serial Device converter now attached to ttyUSB0
At this point if I check the filesystem I see both /dev/ttyUSB0 and /dev/bus/usb/001/0xx [ xx being the current device number ]
I can work with /dev/ttyUSB0 and all is well. Now as soon as I invoke any app that uses Android USB Host Mode API to connect
to USB (for enumeration, connection or whatever) the /dev/ttyUSB0 gets disconnected with following message from dmesg:
<6>ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
<6>ftdi_sio 1-1:1.0: device disconnected
At this point /dev/bus/usb/001/0xx is still alive and if I enumerate the USB devices using android API I see the same as the adaptor
name. So looks like till the Android USB API takes over the FTDI is available as /dev/ttyUSB0 but not afterwards.
------------------------Update ends--------------------------------
Click to expand...
Click to collapse
are you using ftdi's code to modify it?
change /system/etc/permissions
this is from a question on stackoverflow titled "Android USB host and hidden devices" (sorry, i can't add external URLs yet). it worked like a charm on a micromax A120 canvas 2 phone (kitkat 4.4.2). now i can control my Arduino! i used busybox tools to do all the command line work (otherwise chmod wouldn't work). my steps (perhaps some were not required):
(0) install PDAnet drivers on my Windows 8 computer.
(1) root the phone using Vroot (now called iRoot). Very simple, only catch is that the su grant/deny page is partly in chinese, no big deal.
(2) install busybox and jackpal's Android-Terminal-Emulator available on github and the google play store (free).
(3) open a terminal window and become the superuser:
# su
(4) the file system may be read-only, so you might have to remount it:
# mount -o rw,remount -t yaffs2 /
or
# mount -o rw,remount -t rootfs /
or
# mount -o rw,remount -t rootfs rootfs /system
(5) make default.prop read/write:
chmod 666 /default.prop
(6) edit /default.prop, make the following changes:
ro.secure=0
ro.debuggable=1
persist.service.adb.enable=1
... And this is the real meat of it:
(7) To enable USB host API support you should add a file named
android.hardware.usb.host.xml and containing the following lines:
<permissions>
<feature name="android.hardware.usb.host"/>
</permissions>
into folder
/system/etc/permissions
in that folder find file named
handheld_core_hardware.xml or tablet_core_hardware.xml
and add
<feature name="android.hardware.usb.host" />
into <permissions> section.
(8) Reboot your device. Usb host api should work.
Hello,
I have an issue with my U8800.
It is not detected by my PC (Windows 7 x64). When I say it is not detected, I mean nothing happens. Tried all USB ports. In fact, I have tried the phone on 6 diferent PCs (4 with windows 7 x64, 1 with windows 7 x86 and one with Vista x86). The best I could get was usb not recognized (but very quickly) in one of them (x64) but not replicated. It doesn't matter if you go to Pink Screen, with battery, without battery, with sd card or without, etc. Have tried forcing all kinds of drivers, without success. Android SDK is fully installed, etc.
I also tried using 2 diferent Linux live OS's. On one of them, I was able to mount the "CD - the one with the drivers", but again, only once.
I was using Aurora with latest update when this issue started. Never partitioned. I have downgraded to Rom 136. Tried B517 and B528. I'm only able to root the device using Z4root with froyo.
Tried 3 different cables and all of them work without any issues with a Galaxy S3 and a ZTE Racer.
The funny thing is that the U8800 is detected by my car audio system (it uses windows CE 5.0) and plays media files fine. Even the USB Debugging shows up. On another car, with a "usb radio" it also works.
The device itself charges fine in every usb port i have tried
Any help would be appreciated.
Thank you
Hi guys, just an update.
I forgot to mention that the device itself does nothing while connected to the pc. No USB mount or USB Debugging icons. Just the charging message and the lightning icon.
I have tried the device on 5 more PCs and 3 more cables. Not much luck. I did get a few odd behaviours.
This is what I have found out:
Windows 7
With the phone OFF:
If I just plug in the usb cable, it will turn on and after a few seconds, the battery image will appear. While doing that, by using UsbDview, I can see USB Mass Storage Device with the idVendor=12d1, idProduct=1037.
Windows displays "Unrecognized usb device" and a pop up says that windows was unable to find/install drivers for the "unkown device" (error 45 - device is not connected).
Phone turned ON:
If I turn the phone on, no error is displayed and no attempts to install drivers are made. Nothing happens.
Ubuntu (12.0x) - Using the same method with the phone turned OFF:
Dmesg displays:
usb 5-1: new full-speed USB device number 5 using uhci_hcd
hub 5-0:1.0: unable to enumerate USB device on port 5
If I insist, by removing the usb cable, a few times, I get this:
"usb 5-1: new full-speed USB device number 2 using uhci_hcd
[ 2463.956220] usb 5-1: device descriptor read/64, error -71
[ 2464.180120] usb 5-1: device descriptor read/64, error -71
[ 2464.396215] usb 5-1: new full-speed USB device number 3 using uhci_hcd
[ 2464.516211] usb 5-1: device descriptor read/64, error -71
[ 2464.740204] usb 5-1: device descriptor read/64, error -71
[ 2464.956203] usb 5-1: new full-speed USB device number 4 using uhci_hcd
[ 2465.372073] usb 5-1: device not accepting address 4, error -71
[ 2465.484242] usb 5-1: new full-speed USB device number 5 using uhci_hcd
[ 2465.900220] usb 5-1: device not accepting address 5, error -71
[ 2465.900263] hub 5-0:1.0: unable to enumerate USB device on port 1
[ 2467.624209] hub 2-0:1.0: unable to enumerate USB device on port 1
[ 2467.876222] usb 5-1: new full-speed USB device number 6 using uhci_hcd
[ 2468.019363] usb 5-1: not running at top speed; connect to a high speed hub
[ 2468.038249] usb 5-1: New USB device found, idVendor=12d1, idProduct=1037
[ 2468.038262] usb 5-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2468.038270] usb 5-1: Product: Android Adapter
[ 2468.038276] usb 5-1: Manufacturer: Huawei Incorporated
[ 2468.038283] usb 5-1: SerialNumber: 20XXXXXXXXXX
[ 2468.130459] Initializing USB Mass Storage driver...
[ 2468.130622] scsi5 : usb-storage 5-1:1.0
[ 2468.130718] usbcore: registered new interface driver usb-storage
[ 2468.130720] USB Mass Storage support registered.
[ 2469.133463] scsi 5:0:0:0: Direct-Access Android Adapter 0100 PQ: 0 ANSI: 2
[ 2469.136395] scsi 5:0:0:1: CD-ROM Android Adapter 0100 PQ: 0 ANSI: 2
[ 2469.139317] scsi 5:0:0:2: Direct-Access Android Adapter 0100 PQ: 0 ANSI: 2
[ 2469.141053] sd 5:0:0:0: Attached scsi generic sg2 type 0
[ 2469.170237] sr1: scsi3-mmc drive: 0x/0x caddy
[ 2469.170496] sr 5:0:0:1: Attached scsi CD-ROM sr1
[ 2469.170578] sr 5:0:0:1: Attached scsi generic sg3 type 5
[ 2469.170762] sd 5:0:0:2: Attached scsi generic sg4 type 0
[ 2469.372234] sd 5:0:0:0: [sdb] Attached SCSI removable disk
[ 2469.421238] sd 5:0:0:2: [sdc] Attached SCSI removable disk"
Phone turned ON:
Only when this information is displayed, If I turn the phone on, it will connect to linux. Usb debugging will come up and I'm able to mount the SD card.
This is very weird. Can anyone help me with this issue?
Hello again,
Over 100 views and not a single idea???
One thing, when I connect the phone to Ubuntu (not in pink screen, as it doesn't work), the internal memory is seen as unallocated. Is this normal? It say 2.0GIG but no file system. I have access to the internal memory on the phone itself. Could this be a clue (The external SD card is visible and accessable).
When i type adb devices, no device is present or if I use adb shell, error: device not found.
lsusb and dmesg show the device.
Bus 006 Device 028: ID 12d1:1037 Huawei Technologies Co., Ltd. Ideos
ls -l /dev/bus/usb/006/028
crw-rw-rw-+ 1 root gabriel 189, 667 Sep 3 09:41 /dev/bus/usb/006/028
A have, at this moment, B517 installed (tried 136, 138, 518, 526, 528 with the same results).
Come on guys, I don't believe this to be a hardware issue. Please help!!!!!!!!!
P.S. I still have IMEI, serial, etc.
jcpbs said:
Hello again,
Over 100 views and not a single idea???
One thing, when I connect the phone to Ubuntu (not in pink screen, as it doesn't work), the internal memory is seen as unallocated. Is this normal? It say 2.0GIG but no file system. I have access to the internal memory on the phone itself. Could this be a clue (The external SD card is visible and accessable).
When i type adb devices, no device is present or if I use adb shell, error: device not found.
lsusb and dmesg show the device.
Bus 006 Device 028: ID 12d1:1037 Huawei Technologies Co., Ltd. Ideos
ls -l /dev/bus/usb/006/028
crw-rw-rw-+ 1 root gabriel 189, 667 Sep 3 09:41 /dev/bus/usb/006/028
A have, at this moment, B517 installed (tried 136, 138, 518, 526, 528 with the same results).
Come on guys, I don't believe this to be a hardware issue. Please help!!!!!!!!!
P.S. I still have IMEI, serial, etc.
Click to expand...
Click to collapse
It is a strange behaviour. The only thing I could recommend you is dial *#*#2846579#*#* and see the usb port setting. On stock ROMs you should be able to change it to something like "normal" or "google".
Blefish said:
It is a strange behaviour. The only thing I could recommend you is dial *#*#2846579#*#* and see the usb port setting. On stock ROMs you should be able to change it to something like "normal" or "google".
Click to expand...
Click to collapse
Belfish, thank you for the reply. I have already tried that. Same result. Someone has suggested if the vold.fstab file has been moddified. I have never touched it so I don't know what I'm looking for. This is what's inside the file:
# Copyright (c) 2010, Code Aurora Forum. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the following
# disclaimer in the documentation and/or other materials provided
# with the distribution.
# * Neither the name of Code Aurora Forum, Inc. nor the names of its
# contributors may be used to endorse or promote products derived
# from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# < DTS2010071700153 genghua 20100717 begin
# we modified this command according to our platform to support SD card recognization in user space
# dev_mount sdcard /mnt/sdcard auto /devices/platform/msm_sdcc.1/mmc_host/mmc0
## /* <DTS2010081001800 duangan 20100814 begin */
dev_mount sdcard2 /mnt/sdcard auto /devices/platform/msm_sdcc.4/mmc_host
dev_mount sdcard1 /mnt/sdcard 14 /devices/platform/msm_sdcc.2/mmc_host
## /* DTS2010081001800 duangan 20100814 end> */
# DTS2010071700153 genghua 20100717 end >
Is it supposed to be like that?
Thanks.
The vold.fstab shouldn't matter much. If it is wrong, then it would not let you mount sd card in android too.
I don't really know how to help you. I know there are some NV items that could alter the USB interface, but it's mostly in the kernel side. Maybe you can check your "dmesg" log on your phone. Using a Terminal Emulator, first write su for superuser and then dmesg. It gives you the kernel log messages in Android side (the phone).
Blefish said:
The vold.fstab shouldn't matter much. If it is wrong, then it would not let you mount sd card in android too.
I don't really know how to help you. I know there are some NV items that could alter the USB interface, but it's mostly in the kernel side. Maybe you can check your "dmesg" log on your phone. Using a Terminal Emulator, first write su for superuser and then dmesg. It gives you the kernel log messages in Android side (the phone).
Click to expand...
Click to collapse
Ok, I will do that. I just need to go back to 2.2 so I can root it. Once I have the Logs, I will post it. I really hope to solve this so I can try your new rom. Thank you Blefish
P.S. Is there anything I should be looking for?
Dear friends,
I have rooted nexus 7 2012, and installed PPP widget. I have configured the APN. It says "connected", but the internet is not working. Here is the PPP widget log, please help me:
PPP Widget version 1.3.3
USB_ModeSwitch log from Mon Dec 23 15:00:41 IST 2013
Raw args from udev: 2-1/2-1:1.0
Using top device dir /sys/bus/usb/devices/2-1
----------------
USB values from sysfs:
manufacturer USB Modem
product USB Modem
serial 1234567890ABCDEF
----------------
bNumConfigurations is 1 - don't check for active configuration
SCSI attributes not needed, moving on
checking config: /data/data/de.draisberghof.pppwidget/app_tmp/1c9e.f000
! matched. Reading config data
devList 1:
config: TargetVendor set to 1c9e
config: TargetProductList set to 9000,9603,9605,9607
Driver module is "option", ID path is /sys/bus/usb-serial/drivers/option1
Command to be run:
usb_modeswitch -I -W -D -s 20 -u -1 -b 2 -g 2 -v 1c9e -p f000 -f $cB
Verbose debug output of usb_modeswitch and libusb follows
(Note that some USB errors are to be expected in the process)
--------------------------------
Reading long config from command line
* usb_modeswitch: handle USB devices with multiple modes
* Version 1.2.7 (C) Josua Dietze 2012
* Based on libusb0 (0.1.12 and above)
! PLEASE REPORT NEW CONFIGURATIONS !
DefaultVendor= 0x1c9e
DefaultProduct= 0xf000
TargetVendor= 0x1c9e
TargetProduct= not set
TargetClass= not set
TargetProductList="9000,9603,9605,9607"
DetachStorageOnly=0
HuaweiMode=0
SierraMode=0
SonyMode=0
QisdaMode=0
QuantaMode=0
GCTMode=0
KobilMode=0
SequansMode=0
MobileActionMode=0
CiscoMode=0
BlackberryMode=0
PantechMode=0
MessageEndpoint= not set
MessageContent="55534243123456788000000080000606f50402527000000000000000000000"
NeedResponse=0
ResponseEndpoint= not set
InquireDevice disabled
Success check enabled, max. wait time 20 seconds
System integration mode enabled
Use given bus/device number: 002/002 ...
Looking for default devices ...
bus/device number matched
searching devices, found USB ID 1c9e:f000
found matching vendor ID
found matching product ID
adding device
Found device in default mode, class or configuration (1)
Skipping the check for the current configuration
Using interface number 0
Using endpoints 0x01 (out) and 0x81 (in)
USB description data (for identification)
-------------------------
Manufacturer: USB Modem
Product: USB Modem
Serial No.: 1234567890ABCDEF
-------------------------
Looking for active driver ...
OK, driver found; name unknown, limitation of libusb1
OK, driver "unkown" detached
Setting up communication with interface 0
Using endpoint 0x01 for message sending ...
Trying to send message 1 to endpoint 0x01 ...
OK, message successfully sent
Resetting response endpoint 0x81
Resetting message endpoint 0x01
Bus/dev search active, referring success check to wrapper. Bye.
ok:busdev
--------------------------------
(end of usb_modeswitch output)
Checking success of mode switch for max. 20 seconds ...
Reading attributes ...
Reading attributes ...
Mode switch has completed
Mode switching was successful, found 1c9e:9605 (USB Modem: USB Modem)
Device class of first interface is ff
Now checking for bound driver ...
Driver has bound, device is known
All done, exiting