So, this took me a day of grinding teeth to figure out, so I figure I might as well post it here for others to appreciate.
Long story short, my wife got a new, free Nook Simple Touch with a subscription to the New York Times, and it is awesome. Wonderful, easy to read display, very responsive screen (both to touch and refreshing), and we were both very very satisfied with it… until the 1.1.0 software update downloaded itself and broke its wifi access, and apparently we’re not the only ones complaining.
Our home network is managed by our iMac (running Snow Leopard), which acts as out base station via the Internet Sharing option in Mac OS X. In essence, it takes our Internet connection and turns itself into a wireless router so we can use all of our devices through it. The update doesn’t seem to want to play well with it at all as it changed some very low-level code with how it negotiates with a DHCP server (the piece of software that assigns IP addresses).
Mac OS X’s DHCP server, by default, ignores requests with a reply threshold of 4 seconds or less, and the Nook’s update apparently fails those criteria. However, I have found a way to fix this on the Mac end, and allow the Nook to connect anyways.
Step 1: Start Internet Sharing. In the Sharing panel of the System preferences. This creates the file we’re going to have to tinker with named bootpd.plist.
Step 2: Make a temporary copy of bootpd.plist. Go to the Terminal and type in:
cp /etc/bootpd.plist /etc/bootpd.plist
Step 3: Shut down Internet Sharing. This causes the DHCP server to delete its copy of bootpd.plist as it doesn’t need it anymore.
Step 4: Edit our copy of bootpd.plist. Go back to the terminal and type:
pico /tmp/bootpd.plist
In the text editor that shows up find the text:
<key>reply_threshold_seconds</key> <integer>4</integer>
and change the 4 to 0. Then press [ctl]-X to prompt closing the file, “Y” to confirm writing over it, and then the return key to save it.
Step 5: Substitute our copy of the file for where the DHCP server expects it. In the Terminal, type:
sudo cp /tmp/bootpd.plist /etc
It’ll prompt you for your password, so enter it. This is the step that makes the changes permanent. If you simply edit the bootpd.plist file that’s already there, it’ll be deleted and re-written by the DHCP server.
Step 6: Restart Internet Sharing. Now that there’s *your* file there, the DHCP server doesn’t have the permissions to mess with it, so it reads it as-is.
Step 7: Re-connect the Nook. It should work.
Enjoy!
Peace,
-Steve