DIY Raspberry Pi Tablet
What is it?
I built both a 7" Raspberry Pi tablet and an 11.6" Raspberry Pi tablet. These are DIY tablets built using off-the-shelf components and (in the case of the 7" tablet) a 3d-printed case. These tablets are meant to be consumption devices, used primarily for reading blogs and news sites, while relaxing on a couch.
Here's what the 7" tablet is like to use (before I'd applied any software optimizations):
In the above video, it's plain to see the yellow "lightning bolt" indicator showing that the Pi is being throttled by a lack of adequate power (performance is noticeably better when that does not happen).
Here's an overview of the 11.6" tablet, with it's gorgeous full-HD screen:
I did eventually find a nice way to manage the cables on the 11.6" tablet:
Worked out a simple solution for a "case" for my Pi 4 tablet. I like the look of the varnished wood. Easier to hold, can lay it flat on a table, packs easier, still allows Pi 4 to run cool without a heatsink. pic.twitter.com/Dl85pTuxct
— Toby Kurien (@TobyKurien) April 26, 2020
Why?
It started back in 2015, once I got myself an official Raspberry Pi 7"touch screen, and was fascinated by the possibility of a Linux tablet:
The #RaspberryPi "tablet" in "inverted mount" configuration. Hoping to get #UbuntuTouch running on this. pic.twitter.com/XfImT5NSge
— Toby Kurien (@TobyKurien) October 9, 2015
I found some inspiration in other DIY raspberry pi tablets, like this one, but I found them to be too difficult to build, and the software side still lacking.
Then I found a great 3D-printable tablet case on Thingiverse, so I decided to start experimenting:
Easiest #raspberrypi #tablet to build that's also comfortable to use and exposes all ports! https://t.co/HnWolMHSnT pic.twitter.com/eYVNmucewt
— Toby Kurien (@TobyKurien) August 12, 2017
However I continued using my "daily driver" 10.1" Asus Transformer tablet until 2019, when the un-upgradable outdated browser engine became an impediment, and I had to ditch it. Instead of buying an iPad or Android tablet, I turned my attention back to my Raspberry Pi tablet, and decided to put in some effort to getting it usable as my main tablet. Once I'd worked out some software kinks, I ended up absolutely loving this tablet!
What can it do?
I am constantly finding new features and things I can do with this tablet, but here's a brief summary of some of the things I got excited about:
- Browsing the full desktop experience on my tablet with an up-to-date, modern browser engine. I actually now consider Firefox to be the operating system of my tablet, since almost everything I use it for is achieved through Firefox. Browsers are far more secure and privacy-friendly than using apps, so I use the web for reading and posting to social media and chat, consuming news and blogs, etc.
- Amazing Firefox plugins: Containerise keeps my sites sandboxed from each other, uMatrix disables scripts and 3rd party resources by default making for a faster and less user-hostile browsing experience, Cast Kodi allows me to send music and videos from my tablet to my Kodi TV (and to remote control the TV), URL to QR Code allows me to share a site quickly and easily with my smartphone.
- Full desktop capability, by simply plugging in (or connecting via bluetooth) a keyboard and mouse. I can ssh into servers, install programming IDE's like VSCode, install image and video editing software, etc.
- Ability to plug in an external monitor or TV. Particularily with the Pi 4, I can simply plug in a TV into one of the HDMI ports, and it appears as an extended desktop with my tablet screen still displaying the primary desktop, allowing me to watch webinars/YouTube/etc. on the TV in true dual-screen fashion. Perfect for hotel rooms.
- USB-powered second screen and desktop for my laptop! An alternative solution to the dual-screen setup above, I can simply plug my tablet into a USB port (for power), run Barrier on both the Pi and laptop, and if configured correctly, I can use the Pi tablet as a second display (e.g. run a browser on it, or display ssh terminals in it). Barrier allows my to use the laptop keyboard and trackpad on the second screen, and allows for copy/paste between the systems. This is useful when my laptop starts running out of RAM, as I can run some things on the Pi instead.
- Infinite battery life! I did not embed a battery into the tablet, instead I plug the tablet into a power bank using a USB cable. It draws less than 3 watts of power on average, which means over 10 hours of continuous use from a 10,000mAh battery! Even better, when that runs out, I swap it out for another power bank and keep going, while I charge up the first one.
- Gaming: I can plug in a PS3 controller and play various games, like online browser-based games, Linux games, or some retro games via exmulators or DosBox
- Choice of multiple OS's, like Raspberry Pi OS, Ubuntu, Android, and many more available for the Raspberry Pi. I use Raspberry Pi OS as it is optimized, fast, and always up to date. I've also had good experiences with Ubuntu MATE, which also provides a whole lot more software in it's repository than Raspberry Pi OS.
- Constantly upgradable hardware: I can upgrade the chassis by printing or making a new one, I can upgrade the screen (as above, I tried both 7" and 11.6" HD), I can upgrade the "motherboard" - I had started off with a Pi 3b but now run the Pi 4 with 4Gb RAM, I can upgrade the storage and even boot directly off an SSD should I wish to, etc. I can swap my SD card between tablets, meaning I can "transform" my 7" tablet to an 11.6" tablet on a whim.
- A nice form factor. This might be surprising, but the chunky 7" tablet with wide bezels is easier and more comfortable to hold over long priods than a paper-thin tablet with no bezels to comfortably place your fingers on. It feels more like holding a book than a sheet of glass.
- Eminently hackable - very maker friendly, and of course you can attach things to the GPIO and go crazy.
How can I build my own?
I have created a Github repository to document how to build your own, and also to provide scripts to customize the OS so that it works better than a default installation of Raspberry Pi OS. Check it out here: