Reinterpretation of the mobile workstation
For some years I have been longing for two things:
- A “Laptop” with a high-quality keyboard and a trackball
- An ARM-architecture based “workstation” to be productive with
Unexpectedly, and because I somehow managed to lose my BIOS password and lock myself out, I had to part with my old and beloved laptop, the one running Debian (I travel with both a Linux and Windows laptop, No I can’t think of a single reason to bring a Mac along).
But instead of just jumping to the latest Thinkpad, I wanted to see if I could somehow mix those cravings mentioned above: a deconstructed “mobile” ARM-based workstation where I could choose all the parts, without solder or duct-tape, just off-the-shelf components. It would be power-efficient. It would adapt to the places I’ll be working at (using screens if available, power, etc. ), so I’d just need to take the components I’d need for my journey. It would be low-budget.
So off I went with a small shopping list. I already knew I’d use my ergonomic keyboard and trackball, because those are the input tools I’m the most proficient with. I just needed a computing unit, a screen and a battery.
Those last two components were easy to come by, Amazon has plenty of them:
- A standard 13.3" 1080p chinesium panel that somehow works (can’t change brightness and contrast is wrong: should’ve picked something better)
- A 25000mAh power pack with USB and 12V outputs (that’s important). Mine is from Krisdonia, and unlike the screen, I’m very happy with it.
Choosing an ARM-based computing unit, powerful enough to “work” with (decent computing and graphics capabilities) and with a robust storage medium (ie: not microSD) was a bit more difficult: I already had plenty of experience on Raspberry Pi’s (this was before the 4 came out, more on that below) for home projects and monitoring solutions, but knew it would be lacking as a day-to-day work platform. After a small comparison of available alternatives, I went with the Odroid N2 4GB, mostly because of the robust eMMC storage. As for a more complete list of what it offers:
- BIG.little architecture: “BIG” quad Cortex-A73 and “little” dual Cortex-A53, making it a heterogeneous hexacore, associated with 4GB DDR4 RAM
- a decent Mali-G52 GPU
- eMMC memory (up to 128GB)
- Gigabit ethernet, HDMI (4k@60hz), 4 USB3 ports and
- Comes in a nice package with a massive passive cooler, acting as support for the whole unit
Install went like a breeze (Debian Buster with 4.9.190-odroidn2-arm64 kernel), and before long my usual working environment was installed and fully functional. It works. I use it to actually make work happen. I’m writing this article on it. It’s hardware you’d find in a smartphone, it’s small, and now I plugged my peripherals in and everything is great. It also happens to minimize my environmental impact, the power consumption being very limited compared to a standard laptop, let alone desktop (the screen is the most power hungry element here, just like in Smartphones).
So, what does it feel like to work on ARM ?
Well, for starters: Thanks to Debian compiling the whole distribution for multiple architectures, I have access to almost all the tools I could wish for. Some (proprietary!) software, like Synology’s cloud station, are not available for ARM architectures. Slack isn’t available either, but they offer a workable web-based interface.
I didn’t experience any problem with day-to-day tools such as vim, node, npm, though Docker is a tad slow to build. But even GIMP and FreeCAD work ! Working on the battery is nice too, I didn’t really stress it but until now I never managed to empty it.
Occasionally a tab crashes in Firefox. Otherwise browsing is a mundane affair, though nothing comparable to mean-16GB-i7-machine. Client-heavy web applications are another matter and sometimes a bit slow (but switching to Chrome for Google docs helps, for example).
It didn’t become my sole and unique “computer” I take with me though… I still carry a Thinkpad along most of the time, and they turn out to be quite complementary. I just need some more time to set it all up when I arrive and to strip it all down when I leave.
This however won’t be the end of my ARM adventures. There are still some weaknesses that I would like to be addressed, for a device like this to fulfill all my needs. Like, for example:
- Tens of cores. BIG.little is great, just add more !
- More RAM !
- Even better storage (NVMe ?)
- On-board quality networking (wifi, ethernet, Bluetooth)
- 2 video outputs
- hardware-based full-disk encryption: these things are easy to loose, and may contain sensitive data
And let’s not forget Microsoft is expected to release an ARM-powered Surface hybrid soon: I may end up working exclusively on ARM sooner then I thought possible.
But how does it compare to the Raspberry Pi 4 ?
Shortly after I bought the Odroid, the Raspberry Pi 4 came out, completely unannounced, much to the surprise of virtually everybody. Most readers will probably want to know how both ARM platforms compare to each other. This short and subjective comparison won’t include the advantage of raspberry’s formidable community, which is mostly why I went with raspberry when beginning my ARM adventure in the first place. I will only focus on the specific use-case I have, but one should not forget that both platforms don’t really address the same market segment.
All-in-all, the technical differences with the A72-powered raspberry 4 are small:
- While the Odroid’s A73 CPU is a completely different architecture, it only offers some improvements to the A72, as detailed on anandtech: https://www.anandtech.com/show/10347/arm-cortex-a73-artemis-unveiled
- but HardKernel’s Odroid has 2 extra “little” A53 cores, as used by the Raspberry Pi 3 (who has 4 of them). So you get like the computing equivalent of a Raspberry Pi 4 and half a Rasbperry Pi 3.
- Both have Gigabit ethernet and USB 3 ports
- Odroid comes with it’s own heatsink, while the raspberry throttles quickly without one
- the Odroid’s Mali G52 GPU should be at least twice as powerful as the Raspberry Pi’s videocore 6 (850Mhz, 6.8 Gpix/s vs. 500Mhz, 2.5 GPix/s)
- The Odroid’s onboard chipset does not include wifi nor bluetooth, it needs a little dongle… that’s a shame, really, because the RaspBerry’s include both
While I would have loved the dual micro-HDMI outputs of the Raspberry Pi 4, the micro-SD storage is just too unreliable to be considered for day-to-day work. eMMC is, in my opinion, the decisive argument in favor of the Odroid, compared to the Raspberry Pi 4.
Because this is 2019, I have to add I am not sponsored or influenced in any way: this is just me, browsing, comparing and shopping around, trying things out and offering some of the experience and knowledge I gained from it.