[Nook Touch Android Development] LastSilmaril:
SOLUTION:

If any of you are having dhcp-related issues (e.g. if WiFi status, after displaying "Connecting to YOUR-AP", says 'Unsuccessful') with some routers, the solution - or at least, the one that worked for me after much trial and error - is to replace /system/lib/libnetutils.so with the 1.0 version (attached). Before, you had to either (a) set up a static dhcp lease for your nook in your router (b) use an app like WiFi Static to have your Nook not use dhcp at all.

If you're having this issue, please try this out to confirm the fix works. Please make sure to remove any static dhcp lease assignments that you've set up for your Nook before chiming in.

(Just realized that I hit the wrong button and nothing attached. Old libnetutils is now attached to this post and can also be found here!)

## backup the 1.1 file somewhere, change name to keep track
adb pull /system/lib/libnetutils.so libnetutils_1.1.so
## remount /system as writable
adb shell mount -o rw,remount /dev/block/mmcblk0p5 /system
## push the 1.0 file attached (assuming you're in same directory)
adb push libnetutils.so /system/lib/
## fix permissions (ownership is already correct, root.root)
adb shell chmod 644 /system/lib/libnetutils.so
## reboot
adb reboot

If it doesn't work - I have no answers for you. I do NOT recommend you try patching the framework, or pushing over wpa_supplicant from 1.0. The former did not change anything and the latter

prevents the Nook from associating with your AP

after waking up from standby entirely. Replacing /system/etc/wifi/tiwlan_drv.ko or /system/bin/dhcpcd also did not change anything.

My initial half-solutions, speculations, and meanderings, in which I figured out everything that, uh, didn't work, make up the rest of this post and thread :)

NOTE:

I did have one instance of WiFi reporting it was 'Unsuccessful' (which has been about dhcp) when coming out of standby (as opposed to 'Disconnected' - which is a wpa_supplicant problem). When I checked the logs, wpa_supplicant was complaining that it could not find a suitable AP though, so maybe it is about wpa_supplicant. If the problem persists or happens again, I will try replacing libwpa_client.so with the 1.0 one to see if that changes anything, even though 'Unsuccessful' has referred to dhcp.

Ugh. It looks like downloading and compiling the Android source code/decompiling some .so drivers might be on the horizon. If that's the case, then I'm out, at least for a while. In any case, turning wifi on and off isn't that much of a hassle.

-----------------------------------------------------------------------------

Hey all,

It hasn't been discussed here very much, but over at B&N's official forums, a good amount of people have been complaining that their Nook hasn't been able to connect to their WiFi, both at home and out and about, after the 1.1.0 update. Particularly, Verizon FiOS customers with the stock ActionTec MI424-WR router have been affected - myself included.

Looking at my logs, it looked like DHCP was timing out for some reason. So at first, I went into my FiOS router and had it assign a 'static' IP to my Nook explicitly; this worked fine. Then, realizing that this would only work on this single router and wouldn't cure what ails me if it turns out the same issue comes up on the road. So I poked around in the market and found an app that'll allow me to do what I can already do with my stock Android phone, and have the nook assign itself a Static IP when detecting certain APs. Now that's not going to work if you have no other way to connect to the AP than your Nook AND you do not know the ip address of the AP, but it's still helpful.

Investigation:

As the rest of the thread suggests, I've been poking around the N2E internals in an effort to figure out just what it is got changed in the wifi/dhcp stack between 1.0 and 1.1, and after some testing, I've come closer to isolating the issue!

Replacing /system/lib/libnetutils.so with its 1.0 versions gets dhcp to 'work' again! In other words, without any additional configuration whatsoever!

Unfortunately, I think that something might still be awry. Every once in a while, the WiFi state will change to 'disconnected'. I'm not sure if this is normal behavior or what, but I don't think it is, because it's been happening with 20-30 mins of a successful connection to the router, and did not occur when I was just having the router assign a static ip via dhcp or when I wasn't using dhcp at all. But, perhaps that's the way it worked with 1.0...I really don't know, because I've never really used 1.0 on a regular basis. In fact, I haven't used the nook with dhcp on a regular basis, and am basically flying blind here.

The WiFi handling stack inside /system/framework/framework.jar has also changed. But taking the wifi folder from the 1.0 framework.jar and rebuilding the 1.1 jar based on that has had no effect on any issue - it did not help dhcp work, and nor did it prevent the WiFi from changing to 'disconnected'.

While diff indicates that /system/etc/wifi/tiwlan_drv.ko has also changed, replacing it with the 1.0 version has no effect on any of the above issues.