===================================================
== SmallSolars Adventures (not just in December) ==
===================================================

Introducing The Re-Cyber-Lab

default

Update

Introduction

What happens if you take the big maker/hacker projects from the last few years and combine them into a single device - introducing the Re-Cyber-Lab! The Re-Cyber-Lab is a modified Pelican-based cyber deck which has been blended with a mini homelab rack but using recycled postmarket cell/mobile phones. In its first iteration it is a cluster of 3 Samsung A5 (a5y17lte) phones that are running postmarketOS edge and have usb-c ethernet dongles connected to a network switch. Each phone is held in a 3d printed mounting that sort of looks like a rack. They are all powered by a large usb hub with individual power buttons.

case_closed
case_open
case_cabled_up

Quick Fire FAQ

Is it useful?

Probably not but its been fun.

On a more serious note I’ve recycled some smartphones to make a reasonably low powered cluster of servers which works for me, I’ve been doing all my postmarketOS development on them, its quite helpful having a number of servers, you can easily set one compiling and then work on the other.

Why the pelican cyberdeck?

I had it lying around and it wasn’t doing anything.

Why do you have to remove the cables to close the lid?

It was a challenge to orientate the smartphone as you have to take into account the usb-c port, even with a right angle adapter it sticks out a bit, I’ll probably rethink the design for version 2.

Is it really environmentally worth it?

I think it is, sure more modern processors will be more efficient but people seem to be fixated on the operational emissions but forget that there is a significant amount of embodied emissions. These devices took significant amounts of emissions to be produced which needs to be taken into account. I’d like to do some more research into this cluster vs using a newer device.

What about the batteries longterm?

Yeah, thats probably an issue, interestingly there appears to be both software and hardware elements designed to identify spicy pillow situations - the charger driver in the 3.8.14 kernel has battery swelling detection but also I have found out that if the battery was to swell it would distort the back of the case which will most likely disconnect the power switch so the device stops working. I’m going to leave the batteries in place for now but I could remove them in the future - the ones I’ve got are not showing any signs of swelling.

Background

For the last few months I’ve been slowly exploring the postmarketOS ecosystem, I think its awesome that its been possible to breath life into otherwise dead devices which realistically are going to live in a draw until they go to landfill. It got me thinking, would old smartphones make useful low power servers - this is an area I have some experience in with my work on the solarcene.community solar powered mastodon instance and its associated services. I therefore spent a bit of time exploring eBay for supported smartphones which were cheap, ideally under £10 ($13), the Samsung A5 (a5y17lte) seemed to fit the specs (my first big mistake!) so I started by buying the first one. After a little work getting heimdall to work on OS X I was able to follow the lineage guide and install TWRP. Once TWRP is installed you can then boot in (power + vol up + home button) and the use adb to sideload a recovery zip of postmarketOS.

Fixing a5y17lte on postmarketOS

Unfortunately the build process for the a5y17lte was broken, so I went down a bit of a rabbit hole to fix it and was able to contribute my first merge/patch to the project. It meant that a number of open issues could be resolved which was particularly satisfying. It was now possible to sideload the image and boot into postmarketOS.

Adapting an old pelican cyberdeck

A while ago I 3D printed a cyberdeck based on Jay Doscher’s work but as I suspect happens to many cyberdecks it sat on a shelf and was eventually canabalised for parts. I had also been following along with Jeff Geerling’s MINI Rack Project and all the fancy homelab racks that were being shown off - this seemed like the perfect combination. I therefore kept the main 3D printed case insert (I remember it being a challenge to print back before good supports) as it also still had a small network switch installed and added in inserts to hold 3 ‘shelves’. There also was a space in the old design for an array of ports/switches and I made a new insert that held a usb hub with individual switches for the ports.

individual shelf

Working Perfectly?

While the devices actually do work pretty well unfortunately there is a significant issue with the fact that the a5y17lte is only supported by a very old ‘downstream’ linux kernel (3.8.14), I’ve managed to increase this up to 3.8.140 with the last kernel built by the lineageOS team but that doesn’t make much difference. The main issue is that this kernel doesn’t seem to properly support netfilter, initially i thought this was just a lack of a module but even after building them I wasn’t able to open an ports up - this means that its a lot harder to run services on the devices. My current conclusion is that its a combination of using a very old kernel with a newer root filesystem and its probably not worth the effort to try and get working right now.

The current design also makes it hard to turn the devices on and off as the power button is not on the front of the shelf, it might be that I try and stack the shelves differently for version 2 so that its more accessible.

What is good with the system?

  • I’ve used up some old parts that have been sitting on my shelves
  • I’ve recycled 3 a5y17lte smartphones
  • I’ve helped fix a few issues in postmarketOS
  • It all runs off 5V which is cool as I can use a power bank to make it portable
  • It fits into a pelican case which is yellow so it looks awesome
  • I’ve got better at using OpenSCAD with the BOSL2 library to actually make useful objects

Whats next?

The next step is a bit of a marathon task - its time to ‘mainline’ the a5y17lte! This means porting it to work with the latest linux kernel and then upstreaming the patches so that it can then take advantage of patches and fixes. Wish me luck…

References