Nook SimpleTouch eInk Tablet v2

I recently got the nook 1.2.1 firmware and it locks down the device (again). I knew I was likely to lose all my tablet-y stuff but frankly it wasn’t doing what I wanted it to and at the battery life I might as well have a new tablet. I blame the gapps, which never close and sync in the background nonstop. To add insult to injury, nook apps tend to assume you have colors. No colors makes for a very confusing experience. Also the eInk display tended to be hacky with special secret handshakes to activate fast mode, etc. Turns out someone else got really fed up with it also and decided to write a launcher and android ROM which was based on the official 1.2.1 and also knew someone might actually want to use the nook as a nook! WOW! So the smart guys over at XDA put together NookManager which does all this good stuff and still keeps the B&N official applications so you can read their books for free in the store. It even does the right things with the buttons which is really sweet.

That being said, Amazon seems to know something is up because the kindle app isn’t available in this ROM (although I suspect it’s because it upgrades the android core OS on the device) nor through the store. You have to sideload it from here, which is as simple as using dropbox to grap the APK and then opening it on the device. It does have the google RSS feed cacher, which I have desperately wanted and would crash immediately on the old ROM. The browser is still nothing special and will “forget” to update the page if you throw too much JS at it.

The only real rub is that I have to reseat my SD card for the nook to see it if the Nook completely runs out of battery. A small annoyance since I have 30 microUSB plugs next to my bed but still requires fingernails.

The Case of the Mysterious Missing MAC Address

Coriander is dead. Turmeric is alive. What does this mean? All the content on went away except for the PDFs and various other ebook formats which I was smart enough to grab off the RAID before it entirely keeled over. The uptime for coriander was ultimately 20 minutes tops before it keeled over. Not bad for a computer I built in 2003 and then rebuilt when Drexel had the Heat Wave of Death which caused me to request an extension on the finals. The box was two RAIDed 80GB IDE drives, running OpenSuSE I had installed as a desktop and later simply retired to serving up content to my Nook and XBOX.

Turmeric, however, is a first gen nVidia motherboard. And if this is people’s experience with nVidia, I am entirely, absolutely done with them as a motherboard maker. My network is pretty standard for home use. I have an honest to god Cisco router, a Cisco WAP, a comcast bullshit cable modem which is probably going to have a terrible accident so I can get one that works, and all the devices meander through those. The XBOX is UPnP permissions, nothing else does. Turmeric/Coriander had a MAC address reservation so they would come up, get the right IP, and then the cisco firewalls would pass traffic to them as needed. It worked swimmingly well until Turmeric refused to get the IP I had reserved for it. It would always get a different IP than reserved, but it would get the IP consistently. I racked my brain on this problem for a few hours and finally broke out ettercap to see WTF it was doing.

Turns out the first gen nVidia motherboards do something really stupid with DHCP. Actually lets rewind for a minute – they generally do really stupid stuff. This motherboard has hardware RAID also, but it only works for the SATA drives. IDE? Shit out of luck. To further add insult to injury, the bootp stuff for jumpstarting a box? Doesn’t work. Never figured that one out. Finally there’s only two default devices you get set in the BIOS. For the moment it’s CDROM and then the first drive in the RAID, but to actually do the install I had to change CDROM to USB after burning out an image to it. What the heck guys?

Now, I’ll save you the boring TCP spec – When the nVidia board comes up it actually sends a DHCP packet on its own which is nice. The problem here is the HLEN of the packet is… 0. Yup. Someone didn’t know what to put in the field, so they send 0. This causes the router (thank god) to respond to FF:FF:FF:FF:FF:FF, which while it’s not correct, works because it’s a broadcast packet. The adaptor (seems) to configure itself, then Linux does something goofy where it sees the adapter is configured, so it sends out a release/renew, which the router, apparently knowing the MAC address but having an entry for a bogus MAC, sends out a different IP (next in pool) for the correct MAC address.

The BIOS, of course, doesn’t have a way to disable this “convenience feature” and to add insult to injury, dmesg doesn’t work in Linux because the BIOS is doing something funky by itself. For right now I’m just ignoring it. But seriously nVidia, fix your shit.

We Survived!

I was actually writing this post earlier on generator power but the internet is flaky doing that.

In short, we’re alive. Power went out Sunday at 6pm, was back on briefly and then went back out again. The winds were going nuts, it sucked. I ended up hauling about half the useable wood for the stove up to the covered deck. Then the wood stove was hard to light because of the downdraft, then when we did get it lit the draft went the opposite way like a kid blowing across the top of a straw. It was burning through full loads of wood in three hours, which is bad since it normally plods through a full load in 6 to 8 depending on what we’re burning, in addition to me or my wife having to get up and refill the thing. Also because it was burning so fast the house climbed to mid-80s. None of this low and slow keep things at 65F or 70F. I had the air turned down all the way and the catalyst running and it was still rolling like I didn’t do anything.

To add insult to injury, the radon exhaust lost the cap, so the radon system was actually letting water into the basement on top of an already full sump well. I have to go buy another 4″ cap for the thing since I have no idea where it wandered off to.

My folks showed up with the Cabelas brand 3500W generator. Now this thing is awesome. I hooked up the fridge, the sump pump (which was up to the top of the well, so just in time), the radon system, but couldn’t hook up the heater (direct wired). The generator was running at about 35% load, so we decided to get crazy and start putting power strips on it. I then hooked up the laptop, two cellphone chargers (one acting as a wifi router to the 3G internet), and the entertainment center (TV, DVD, XBox, Wii). That drove the load up to about 40% to 45%. This thing puts out stupid amounts of power. I was seriously tempted to plug the oven and the microwave in but the microwave would account for fully 33% of the load it’s capable of (for however long its running), I decided not to push it since we had the wood stove on.

Now I really want the transfer switch. Any readers install one of these before?

Building Jellybean for the Vibrant MTD (Galaxy S1)

These are Nate’s notes from the FB group. Nate runs ubuntu so all his Linux stuff is horribly broken crap but the bones are here to make this workable:

Wanna build a Paranoid Android Vibrant ROM?
I’ll point you in the right direction.
This can be applied to many devices. Want help? Just ask.
Start here:
–Install the repo
–Open your terminal and enter the following

mkdir ~/bin
curl > ~/bin/repo
chmod a+x ~/bin/repo

–Download the SDK here:
–Extract the SDK and place it in your home directory.
–I renamed my SDK to android-sdk to make it easier to navigate to.
gksudo gedit ~/.bashrc
–in terminal
–Enter your Admin. password to open the document
–Add these lines at the bottom of the file:

# Android tools
export PATH=${PATH}:~/android-sdk/tools
export PATH=${PATH}:~/android-sdk/platform-tools
export PATH=${PATH}:~/bin

–Then save and close

–Now type
gksudo gedit ~/.profile
–In terminal
–Add the following to the bottom


–Then save and close
–SDK now being set up, type this in terminal


–If you get an exception error type

sudo mount -o remount,exec /tmp

–and retry

–Now time to install packages (64 bit required)
–Paste this and enter

sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
x11proto-core-dev libx11-dev lib32readline-gplv2-dev lib32z-dev \
libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \

–Then this

sudo ln -s /usr/lib/i386-linux-gnu/ /usr/lib/i386-linux-gnu/

–Configure your USB

gksudo gedit /etc/udev/rules.d/51-android.rules

–and copy/paste this to your document.

–Save and close
–This will add all the devices to the list
–Type the following in terminal

sudo chmod a+r /etc/udev/rules.d/51-android.rules

–Creating your working directory and add a repo
–back to terminal

mkdir -p ~/android/jellybean
cd ~/android/jellybean
repo init -u git:// -b jellybean
repo sync

–Sit back and enjoy a good movie or two. This will take a long time.
–For the time being you’ll need to sync my modified PA vendor with Vibrant support

cd ~/android/jellybean/vendor
rm -Rf pa
git clone -b jellybean pa
cd ..

–The fun stuff begins!!!
./ vibrantmtd

When complete look in /out/target/product/vibrantmtd for the zip. The one listed in terminal is your choice

Looks good but I’m only human. If I made an error, let’s talk about it.

Google Voice

Suburban Station used to be a bomb shelter, back when people actually cared about bombs versus simple vaporization at the hands of nuclear weapons. We sort of brushed that fact under the carpet by taking away the signs on the walls but if you’re looking in center city you can find the signs. Mostly they’re on the forgotten byways but the really brutal part is that fallout shelters are typically lined with lead. Trying to get a piece of sky from the station is impossible. To add insult to injury, the stations are underground. Lead or no lead you simply won’t be getting signal in that much earth shadow.

Note to TMobile – want to be really popular in the city real quick? Put a low power cell antenna in the station.

That being said, I am a huge fan of google voice. If you have an android anything with as much as a speaker and a microphone, you want this. I use it for just about all my calls now when at home, since there’s no sense in using my minutes and I know my wifi isn’t going anywhere. Even if you want a “burner number” so you can finally call Taco Bell and order a Border Jumper, make a fake google account, grab a number and go nuts. The one big problem is that it doesn’t work unless it has cellphone signal. This is particularly hilarious when you realize that a lot of “tablets” (android devices which aren’t phones) can’t ever get cellphone signal by virtue of the fact that they’re not phones. No antenna, no SIM card, no NAM number.

The simple reason is because Google Voice integrates tightly with the cellular state machine. XDA has a whole thread on it. The amount of work that has to go into hacking Google Voice to not do a cellular state check is frankly over the top and manufacturers have gone out of their way to customize the OS and framework to prohibit you from taking a “tablet” device and using it as a cellphone (samsung, I am looking at you). AOSP ROMs get a bit of a pass since they have a more vanilla framework but the whole binary module loader thing that ATI and nVidia blazed a trail for means that the state machine sometimes ends up in one state and the API reports another because no-one has really dumped a working version of the modem firmware yet for samsung devices. Frankly Google I’m sort of happy this is biting you in the ass for having to support older phones.

Anyway, the good news is the same XDA thread above also mentions someone who solved the problem. If you have a 2.1 or better device (read: all samsung phones), you can download GrooVe IP which makes the calls for you. I have a bit of a problem paying him $5 for the registered version because literally all the developer did was enter the google voice API (voice is required to be installed) after the state machine check and just piggyback from there. The 1MB file size is UI cruft, the actual application is only a few KB. Now I can make calls over the comcast xfinity access points without burning up minutes and more importantly without any cellular connectivity at all.

Nook Simple Touch: A $50 Tablet

I have reloaded my nook simple touch about four times now. Some of it is very good, some of it isn’t so hot. The nook can be a $50 tablet in addition to being an e-reader, etc. If you combine it with a phone that supports tethering, it’s truly a neat piece to have. My one gripe is the android 2.1 OS on the device tends to seriously underperform. At first I thought it was the eink display and then I figured out it really is just that crashy. The nook was developed to be an e-reader and not much more.

So why root it? For one, it reads books really, really well. If you root it, you now have access to Google Books, Google Market, Amazon AppStore, Amazon Kindle Books, Kobo and just about anything else you could want. In addition to all that wonderful crap, you can install Google Reader, which weirdly enough doesn’t support offline reading, and whatever PDF viewer you want. The stock B&N one is pretty good, but I’ve found for older PDFs, Documents Easy Viewer is essential and also lets you view office documents in 16 shades of glorious gray.

Note that the process I used roughly followed the lifehacker article, except that I’ll link to the newest versions of things. You can follow the LH version, just keep in mind you’ll end up about one version behind everything. It was dated pretty much the moment it was written. You should seriously install dropbox first on your nook, it makes the rest of this much easier.

Before doing anything, sign in with your google account and register the device. You must also have a youtube account married to your google account. You will not be prompted after you root it to register and I haven’t figured out how to get to the java object controlling this process and this is why I reloaded my nook several times. You have been warned. Register the device first.

If you follow the lifehacker article, you have more customization with the nook because you’ll be using touchnooter. If you want to bang out this entire process in one flash but don’t mind having any customization, use SalichaNooter. Finally if you really want to hurt yourself, consider minimalnooter. You should read all three of those first posts to know what’s going to happen with each of those ROMs. They’re all fairly interrelated. I went the touchnooter route and that’s what this doc will cover but I ended up customizing it to SalichaNooter’s standard before even knowing about the other ROM. Oops. The big difference is Salicha’s ROM comes with the ADW theme out of box.

Before you do anything, update the firmware. (Current as of this writing). Throw the ZIP into the root directory of the nook when mounted to your PC and then unmount the nook and put it to sleep. It will reboot. You should be on 1.1.2. You will know if you got there because the display will be faster and wifi will actually work. You want wifi working first.

Step 1: Download the touchnooter rom. Use a high quality SD card (go buy one). If you’re using a mac or Linux do something like dd if=touchnooter of=/dev/sdb bs=1M and you windows guys are probably screwed.

The nook will derp around for about 10 minutes then it will turn off again. Remove the memory card.

Step 2: The nook will boot and prompt you to sign into google. You did configure wifi before you did this, right?

Step 3: Open up NookTouchTools. I map my right hand buttons to “options” and “back”. You can actually hit “options” from the menu bar up top but it tends to be glitchy and not display. I make my “n” button map to “home”. When you hit it, it will prompt you to use ADW Launcher or the B&N bar (I forget what it’s called). I set mine to the B&N bar. Observe the right hand side. You will very faintly see an arrow. This is ButtonSavior. Tapping it will always launch ADW from the “home” icon.

Step 4: Open NookColorTools, uncheck and recheck the “allow non market apps” checkbox. Not sure why but it gets screwy quickly if you don’t.

Step 5: Open YouTube, sign in (if prompted). For whatever reason until you sign in you can’t send apps to the nook from google play.

Step 6: Install the eink debug app from this thread. You have to register to see and download attachments. I prefer the regular one. This changes the screen to monochrome, which is really nice for reading text and scrolling it. This is important in google reader and opera.

Step 7: Install opera mobile. Not the one from the google market. Use that link, it goes to my dropbox. It will install Opera Mobile 12.0.2, which is the last version. Using the eink toggle gesture and opera you get that buttery smooth scrolling. The opera baked into the ROM is too old and does funky stuff. Alternative: Install Maxthon.

Step 8: Install vending.apk (google market) to enable updates. Again that’s the known-good version from my dropbox. You want updates.

That’s it. You now have a fully functioning nook tablet and ereader which will work with all the stock stuff (including in store lending) and also read email, read RSS feeds and view PDFs.

On Mysticism or The TechnOccult – Modes of Thought

Yes recently the blog has been on what most people would call a jewish mysticism kick. I find as I get older I end up going through these periods where I think about things, then I think about how I think about things. What does the mirror see when it looks into itself? These rants are inspired by the format of The Whiskey Rant. It might not be right, but lets entertain the thought.

Eventually, we decide we need to understand the structure of how we think.

While I’ve played around quite a bit with philosophy, it’s lacking. There never has been any sort of thinking where man does not look at the universe and consider it’s parts. Eventually anyone who seriously puts any time into it comes to mysticism. I think it’s a travesty we don’t teach “The Mysteries” or even civics class. Somewhere, we ended up so politically correct that we couldn’t teach these things because of the fear of indoctrination. The worst part is, institutions of indoctrination (religious schools) don’t present things as mysteries anymore, they’re concerned with putting people onto the path of salvation or somesuch. Some people want the answers. Some people (me) want to learn modes of thinking to more clearly perceive things. This doesn’t say I’m right. This just means if you haven’t gone into any sort of classical thinking and ended up at occultism, give it a try.

People tend to take it too seriously, I think. The rabbis have been kibitzing about kabalah for literally ages and I think people have the right thinking for this problem: You can reduce the process of magical thinking down to “a very small shell script”. This is a particularly sticky wicket to the believer and a nail on the cross for people who would rather see spiritual thought written off entirely. The first google result will figure out any correlation you could possibly want. Want magic squares? We do that too! (Also CPAN whores – add internationalization to author names so you can credit this module).

But that’s not the point. We can literally rip out the values of entire languages in seconds now. In the case of that last CPAN module, we’re ripping out the values of languages which aren’t even formalized (Ethiopian). Why bother? It’s not about the numbers. It’s about the modes of thinking.

Modes of thinking? Yes. I recently read The Chicken Cabalah. It’s a typical DuQuette book where it’s written lightheartedly but more importantly the joke is occasionally on the reader. (Don’t worry, you’re let into the luls later). People talk about it being a useful introduction to cabalah. It’s not. What the book provides is a good introduction to the application of the modes of thought present in classical thinking. Specifically addressed are fundamental questions about identity. Identity? Identity is how we frame ourselves in reality. What is reality? Now we’re in the thick of it. (The dry, unentertaining version is the four worlds, but I suggest you read DuQuettes book for the humorous, playful version about reality being an armchair). They start out in a room full of chairs. They  move up and they end up in a factory cutting out parts for a chair. They move up and they have the IKEA plans for a chair. They move up and they find… nothing. What does the notion of something to sit on look like?

This is really a neat model of thought, or I think it is at least.

More importantly, we have another interesting idea we can apply here – the physical world is going away. What does that mean? We’re losing the strong identity of things and we’re moving into a space where things don’t physically exist. The movies we watch are delivered digitally, “filmed” digitally in a computer, we watch them on screens we don’t own, and billions are fought over “rights” and “distribution” of something which doesn’t exist in terms of 1s and 0s. I don’t mean this to be an anti-capitolism rant. I strongly feel that artists should get paid something for their work. On the other hand, owning things keeps becoming more and more of an abstract concept. At what point do we get issued a food replicator and a laptop at birth? Probably around the time when Apple decides it makes more money selling you “media” than it does selling you hardware. The future looks amazing. It will be glorious, we return to the godhead. It will be our undoing as we indulge our fetishes. “Kurt Cobain, shotgun mouthwash, daily at 3pm ONLY ON FOXNEWS”.

We are forever parodies of ourselves – the mirror looks into the mirror. Science has been “finding the resolution of reality” with the large hadron collider for how long now but we still can’t put a number on the resolution of the spirit.

What do we do now? Today? Our torah is a blog. Our kabalah is ascii. Our holy script is whatever our default font is for the paragraph tag. Mine is courier new, 10 point. It was transmitted to our prophets at 9600N81.

Of course, this got me thinking about math, and what’s our new math? Maybe we are ready for new math. The old hebrew was written right to left, in one long line, which is pretty much the reason why people have been doing crosswords on pie plate liners ever since. What would the old rabbi have done? Would they have assigned a value to right to left? Every punctuation mark? Every space? Well, if we think yes, we find some interesting places to look for inspiration.

We think about the famous first verse in the bible: “In the beginning, God created the heavens and the earth”. Running this through our electric rabbi, we have some real insights! “Kept in balance by the wisdom”, “Jesus Christ the Groom, I am that I am”, “The biggest douche in the universe” (not kidding). Well if we convert to ascii, and add up all the numbers, letters, whitespace and punctuation, we get 4808. What is 4808? In Hebrew notation: “And He Opened His Mouth In Blasphemy Against God, To Blaspheme His Name, And His Tabernacle, And Them That Dwell In Heaven”.

And that folks, is why I only use EBCDIC.


Android 4.0 (Ice Cream Sandwich): How to Block Calls

This tip will work for Android 4.x phones running Ice Cream Sandwich of all flavors. It works on numbers which you know, don’t know and existing contacts. Between Android 2.x and Android 4.x google changed the procedure. The old way was to long press on a contact and select “add to blocked list”, which also gave you another icon (a blocked list) in the contact list. Google has gotten rid of this.

Unknown Callers: Press on the number and create a contact called “Blocked Callers”. I like to set their picture to an “Do Not Enter” sign but whatever you want. If you have this contact already you can simply press on the call in the call log and choose “add to contact” and then select “Blocked Callers”. Eventually you’ll end up with “mobile 1” “mobile 2” “mobile 3” … and so on but who cares. Now proceed to reading the next part….

Known Callers: Don’t feel like hearing from someone? Open their contact and press the properties button (or menu on some phones). The menu will open. Google added a check box called “All Calls to Voicemail”. You guessed it, it sends all calls from this caller to voicemail until you uncheck it. For unknown callers, I add them to the list and they go into voicemail. For known callers, this is an easy, temporary fix. What if you want all calls to go to voicemail for a particular period?

Turn your phone off.

Camry Timing Belt

The camry was having problems. At almost 200k miles most people would retire a car but it just seemed too easy. Plus money is tight as hell right now with my wife only working one day a week so once again it was time to put on the man pants and fix stuff.

Except that stuff was a timing belt and a water pump which had long since puked out the gasket and bearings. The timing belt itself was driven by a pair of idlers, the new ones sound terrible but the old ones had wobble and had to go. I enlisted the help of my brother to be the second set of hands because there’s some things on the car you simply can’t do on your own.

Note that this is the first car I’ve truly wanted to stab. My knuckles are completely raw. I have no hair left on my hands. I managed to crush a fingertip and it’s still bleeding from under the nail. All in all things went pretty well.

The biggest lesson learned: Adjust the tension before putting it all back together. We had to retime the engine three times because I would go to close it up and the timing would wander enough to get the timing wrong. Once we figured out we were being stupid it was pretty trivial to find TDC and bolt it up.

Gasket juice: Always important.

5SFE timing belt