At UX Camp Europe 2010, my Motorola Milestone could not connect to the barcamp wifi, a WPA2/PSK WLAN running on a mesh of Enterasys APs. The phone would not even manage to associate to the AP, the debug log (adb logcat
) showing the following:
E/wpa_supplicant( 3892): ERROR - \
wpa_driver_tista_private_send - error sending \
Wext private IOCTL to STA driver \
(ioctl_cmd = 8021501, res = -1, errno = 95)
E/wpa_supplicant( 3892): ERROR - Failed to do tista scan!
W/wpa_supplicant( 3892): Failed to initiate AP scan.
So there was never a visible attempt at connecting in the UI.
After a lot of searching, reading source, asking around and debugging, I managed to solve my problem by modifying the configuration of the WLAN driver module (tiwlan.ini) as follows (requires the Android SDK / adb and root access on your phone, or a adb-root recovery partition):
No warranty if you brick your phone, if you don’t feel confident doing this, have someone with Android expertise do it for you or wait for a fix from Motorola. Or try disabling 802.11n (draft-n) in your AP if you can control it.
- Connect your phone via USB, make sure you enable USB debugging in Settings > Applications > Development.
- Get the configuration file from your phone:
adb pull /system/etc/wifi/tiwlan.ini tiwlan.ini
-
Change
HT_Enable=1
toHT_Enable=0
in the file.sed -i -e s/HT_Enable=1/HT_Enable=0/ tiwlan.ini
-
Push the changed file back onto your phone (you can’t directly overwrite the file in /system/etc/wifi/ because adb is not running as root on the phone):
adb push tiwlan.ini /tmp/tiwlan.ini
-
Start an adb shell on your phone, get root, make /system writable and move the file to the right location:
adb shell
su
mount -o remount,rw -t yaffs2 /dev/block/mtdblock6 /system
cp -f /tmp/tiwlan.ini /system/etc/wifi/
-
Reboot your phone
reboot
Your phone should now be able to associate with the AP.
People have reported similar problems with APs by other manufacturers (Enterasys, D-Link, some old Linksys WRT), so this might work for you.
ist ja fast benutzerfreundlich
This solution did not solve my problem of wifi disabling and handing there. 🙁