My Ultimate Mobile Setup

I do 90% of my work on my Macbook Pro. It’s the 2011 model with the 15″ 1680×1050 antiglare screen, Core i7 processor, and 8GB of RAM. It’s an amazing machine and I wouldn’t want to use anything else at home. However, I also spend 4-6 hours a day in class and another 2+ just generally “out”, and it became a bit cumbersome to always carry a 6+lb laptop that gets <4hrs of battery life (this figure used to be higher). So I decided I would get some better mobile gear. The obvious choice would be a MacBook Pro (or any ultrabook) however I didn’t want to spend all that money. I made a list of what I want in a mobile device:

  1. Lightweight
  2. All day or multi-day battery
  3. Relatively cheap (<$600)
  4. Effortless sync with my other devices
  5. Ability to take notes, browse the internet, and code

This is not an easy task. At first, it seemed like such a device would have to wait a few years. But over the last few months, I figured out a setup that works for me.

Part 1:

Asus Transformer Pad TF300T – $399

The Asus Transformer Pad is a 10.1″ Android Tablet that runs Android 4.1 Jelly Bean, has a Tegra 3 Quad-Core processor, 1GB of RAM, 32GB of internal storage and costs less than $400. Compare that to any other device on the market and you’ll see what a steal that is. Just by buying this, I fulfilled the following bullet points: lightweight, all day battery, and relatively cheap. Because I am already an Android junkie, it also fulfilled the “effortless sync” bullet. When I booted the device it already had all of my Mail, Calendars, Contacts, and Google Docs. With an app called DropSync ($5 or Free) I was able to sync my Dropbox folders from my MBP. This is a good start, but I still couldn’t take notes or code easily, so this was more of a “fun” device than a work machine.

Asus Transformer TF300T

The Asus Transformer with Keyboard Dock

Part 2:

Asus Transformer Pad Keyboard Dock – $129

The tablet is not called the “Transformer” for nothing. For $129 (often less) you can get an attachable keyboard dock that provides a full suite of keys (similar to a Windows PC, plus Android specific keys). As an added bonus, the dock contains a battery that recharges the tablet with ~4 hours of extra battery life when it gets low. Now, I had 12h+ battery and I could easily take notes using Google Drive or QuickOffice. What’s left? Coding. This turned out to be the biggest challenge.

Part 3:

Raspberry Pi Model B – $35

The Raspberry Pi is an amazing device. It’s a $35 computer the size of a pack of cigarettes that has a 1GHz ARM processor, 512MB of RAM, 2 USB ports, an Ethernet port, an SD card slot, and HDMI out (plus some other ports). With an 8GB SD card containing the free Linux Distro “Raspbian”, this is a fully functioning Linux computer. What does this have to do with anything? Simple: this is the brain behind my tablet. I am using the Raspberry Pi so that I can code (and do other non-tablet work) on my Asus Transformer. Below are the steps I took:

  1. Enable SSH on the Raspberry Pi in Raspbian. From this point on, I tunneled into the RPi from my MacBook Pro and left the RPi completely “headless”.
  2. Give the RPi a static local IP, 192.168.1.xxx. This makes accessing the Raspberry Pi from a local network more consistent.
  3. In your router’s settings, port forward the ports for SSH and VNC (22 and 5901-5902, respectively).
  4. Find a Dynamic DNS provider and get a human-readable hostname to map to the external IP of your Raspberry Pi. I used dnsdynamic.org. Use ddclient on the RPi to update this DNS entry on boot and every few minutes thereafter.
  5. Install your favorite programming languages on the RPi. I installed Java and Haskell. For Java use open-jdk, the Oracle JDK won’t run on the standard Raspbian image because of some floating point compatibility issues.
  6. Install tightvncserver on the RPi and set it to run on boot.

So what did we accomplish? Well if everything worked (and it did for me, in just a few hours) you’ll be able to get ssh or vnc access to the Raspberry Pi from anywhere you have WiFi. Including (you must have seen this coming) the Asus Transformer tablet!

Raspberry Pi Model B, running headless and hanging on wall hook.

Part 4:

Apps: TerminalIDE, PocketCloud VNC Viewer ($0)

TerminalIDE provides a great terminal interface to SSH into the RPi. It maps to the hardware keyboard of the Asus Transformer so programming is simple. PocketCloud is one of many good VNC clients for android that allow you to get full GUI access to the VNC server on the RPi when you need it (I use SSH a lot more, personally).

SSH session on Raspberry Pi using Terminal IDE on Asus Transformer. Running Haskell and Java sample programs.

VNC client on Transformer displaying the Debian GUI desktop of the Raspberry Pi.

Conclusion:

So, it worked. For about $600, I have a device that weighs under 2lbs, has 12h+ battery life, syncs with all of my other devices, and allows me to do everything from read Hacker News to code in Haskell. It’s as good in practice as it is on paper. Email me if you would like a more detailed explanation of any of the above steps.

12 thoughts on “My Ultimate Mobile Setup

  1. Pingback: The Ultimate Mobile Computer: Connecting an Asus Transformer and a Raspberry Pi | My Daily Feeds
  2. Or you could just cut out the RPi and just run VM on your home computer and connect to that via SSH.

    The idea is neat, but I think it’s a waste of RPi, but this is one of the better usages for RPi people have come up with. Everyone bought the damn device, but it’s just gathering dust in most peoples drawers.

  3. Why don’t you install linux on Transformer? It works fine, probably better than on RPi. See linuxonandroid.org for detalis.

  4. Hello, on the xda forums there is a nice little topic, ” linux-on-android”, that enables you to install some distros of linux in ssh, vnc mode, directly to the root of your transformer. Of course, the tablet is running both android and linux at the same time so you would have to test for your usage, but you might check it, so you would have your linux anywhere instead of hanging on the wall. The installer can get you ubuntu, debian, backtrack, and others.

    http://forum.xda-developers.com/showthread.php?t=1585009

  5. Funny, I pointed out that this could’ve been done easily without RPi using VM, but for some reason my comment has been deleted….

  6. I’ve basically been using the same setup for 2+ years, only with a 1st gen iPad and a PogoPlug (pink, v1) running Debian Squeeze. The GPU in a Pi would make VNC more palatable, but I don’t use the GUI for much when I SSH in so it’s not a huge issue.

  7. Pingback: New Offer from Sony BDP-S590 3D Blu-ray Disc Player, watch video demo inside

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s