Misadventures with the Teracube 2e

2023-09-30

I've been using a Teracube 2e for a little less than a year now. Upon receiving it, I installed the "de-Googled" /e/OS. I was coming from a Google Pixel with CalyxOS that I gave to a friend. My objectives with the Teracube 2e were the following:

  1. "Downgrade" my phone to something more in line with my actual usage of my smartphone. That is, to move towards essentially non-usage as much as possible.
  2. Purchase a theoretically sustainable phone with a replaceable battery, decent battery life, that supported a de-Googled Android OS, and could act as a stop-gap for my eventual switch to my Pinephone.

An intentional, but problematic, "downgrade"

The Teracube 2e was certainly an appropriate and welcome downgrade in a handful of significant ways. As I moved away from using a smartphone camera for anything other than quickly documenting something on the day-to-day, the Teracube's smaller camera and image file size was welcome. The camera is dog slow, but for what I needed from it, the flash makes any low-light issues irrelevant. I'm not taking photographs for memories or art with this thing, it's just for taking a picture of a poster for an event or a document and things like that to share with someone else. Doesn't need to be a technically high quality photograph to get the job done in 99% of cases, especially ones where I wouldn't just have my actual camera with me or would need to use a scanner anyway.

I also distinctly wanted something smaller than the Pixel 6 Pro I had. That phone is positively enormous and even with my relatively large hands, was a pain in the ass to use and uncomfortable to hold, even with my small amount of overall usage. The Teracube 2e is obviously meaningfully smaller, but still the size of a mid-level flagship Android phone and isn't exactly small. I wish 4" screens were still a thing. If someone made a Pixel-quality Android phone the size of the iPhone 4, it would jump to the top of my list of "next phones", the next time I needed one. Everyone who wants this (there are dozens of us, I swear) would die if we held our breath waiting for it, though.

Finally, it's limited technical capacity and ability and overall slowness at everything make it a pain to use, which means I generally use it less. That's a good thing in my book and if I can choose specific instances in my life where I have to tolerate devices hindered practically to the point of uselessness and un-usability, this is one that I was happy to choose. I continued to be happy with that aspect of the phone, the social problems with this below notwithstanding.

Okay, so those are some good things with the downgrade. The problems, however, make the Teracube 2e an unacceptable way of achieving my goals. What's so bad about it, from my perspective?

Things I did not expect to be issues are:

  1. societal assumptions about smartphone availability and capability;
  2. and software bugs and issues I suspect are related to /e/OS specifically, but may also be true on the stock experience.

Societal assumptions about smartphones

QR-code restaurant menus are the indisputable norm where I live, looks like they're here to stay for the time being, and many places act bowled over if you tell them your phone doesn't work with them. Whatever. This is annoying for me and for them. It shouldn't be a problem, but it is, because Square, Mr. Yum, and company have all prioritised God knows what over actually usable, snappy, and accessible web applications. Web apps don't have to be terrible, but terrible decisions and priorities from these companies have made them horrible. Unfortunately, anything outside a flagship phone doesn't seem to be able to use these things.

I wasn't exactly surprised by that experience, but found that after a while it was no longer something I could tolerate, and it breached the threshold of no longer only causing myself inconvenience, which I had chosen, but also disrupting the work of service workers, which they did not choose. Obviously I am not the only one with this problem or causing these issues, tourists, for example, often don't have the required data on their phones, but it didn't feel good for me to be on that side of it all the time in the place I live.

Something I was surprised about, related to that issue but more nefarious and problematic, are the assumptions about smartphone capabilities and availability in interactions with core institutions. I already knew that there is a general issue about governments and other core institutions assuming that folks have a smartphone. What I did not expect was that there would in some cases be literally no alternative to the smartphone in order to interact with those institutions. Specifically, the university I attended briefly before transferring to another required the use of a smartphone to make get a "ticket" in line at the student help centre. Without it, you'd just be ignored, even if the folks at the desk weren't attending to anyone. There was zero alternative to this. The queue assumed you were logged into the student network or that you could easily. I use a password manager like anyone else even vaguely concerned with personal security, and do not leave my accounts logged in anywhere as a rule, especially on my smartphone, basically without exception. This meant I had to scan the QR code for the ticket queue, wait for my dog-slow phone to load the website, then wait for my dog-slow phone to unlock my KeePass database, then wait for my dog-slow phone to load the logged-in site, and then to finally request a ticket. It is not an exaggeration when I say this could take up to 10 minutes depending on the network conditions. And I'd be lucky for Firefox not to crash or get shut down due to the phone's memory constraints getting blown out of the water by the website.

Certainly, this is unusual. At least I hope it is. For government services I never ran into this issue and have found ways around using my smartphone to access things. Almost everything is available via websites or a phone call, even if they make it more of a hassle or insist that some smartphone app or another is the better way to do it. There are other examples of this though:

  1. My bank has entire account operations unavailable from the website that you can only do in the phone app. This includes core account management functionality, like updating tax information. You can call or do these in person, of course, so there are alternatives. Luckily, their app works pretty fine, and I've never had issues with it, but it is a "sign of the times" that something as basic as banking is moving in this direction as well. The main issue here is the disparity of features between the app and the website, making it difficult to figure out where I need to go to do something, leading to me getting easily confused and frustrated just trying to make simple changes to my account information.
  2. My mobile carrier does not have any contact information available outside their smartphone app, which is merely a glorified WebView wrapper. Who knows why I can't access the very same website from my computer to find the phone number to call for support. This app actually is trash, even though it's just a website, one that should, for all intents and purposes, be entirely server-side rendered and JavaScript free.

I'm sure there were others, these are just the examples I remember, the ones I had to interact with the most often, and which actually caused problems for me at one point or another.

Software (and maybe hardware) problems

Since day 1 of owning the Teracube 2e on /e/OS I have not been able to adjust the volume in calls. You can adjust speakerphone volume, and volume in every other application, but if you want to take a private call with the phone on the side of your head (you know, the normal way we use phones, I think?) either hope that the line is quite or hold the phone a good 10 centimetres from your ear to avoid it getting blown out. Every single software update I installed on this phone I hoped and prayed that the release notes would indicate the issue had been fixed. But nope. It's still a problem as recently as yesterday when I made my last call on the 2e.

Additionally, the phone simply refuses to charge on certain power supplies. It doesn't work with my USB-C PD power bank (which works for literally everything else) no matter what cable I try. Certain wall-plugs won't charge it despite charging everything else. This was an issue with a handful of video calls with friends where I couldn't find any way to charge the phone in the contexts I was in, and I had to cut calls short because of it. This is bizarre to me, the phone is somehow choosier than the Nintendo Switch, which I thought was bad enough. It's also not a power level issue, surely, because the phone sips battery. It also does not charge when completely off, meaning you have to leave it on overnight to charge it. I never figured this one out, to be honest, because I did run the battery down to 0 a couple of times, and it eventually woke up and charged back up. Just another example of strange charging behaviour. This could be a hardware issue. I'd be surprised if /e/OS managed to break this in modifying the stock image.

There are other issues here as well, almost all too minor to mention, paper-cuts, essentially. But there are three specific problems that broke the camel's back for me:

  1. /e/OS's App Lounge just stopped working suddenly. It won't return any apps, just PWAs. This means it also stopped updating apps for a very long time. I only noticed when the libwebp issue recently broke. When I went to update Firefox, it was over a month out of date after having updated on a nightly basis just fine for a long time. This persisted through /e/OS upgrades as well.
  2. The phone suddenly stopped connecting to my home Wi-Fi. I don't know if this is a general Wi-Fi issue with the phone as my home Wi-Fi is the only one I ever connect it to, but this is essentially intolerable. It meant that KDE Connect no longer works, which is a bad inconvenience when testing stuff for work. It also meant I was eating up my mobile data for basic things like app and OS upgrades. Unacceptable.
  3. /e/OS did not prioritise an update to the WebView Chromium after libwebp was fixed. Another unacceptable issue.

All of these were on top of extremely frustrating assumptions I had to fight with /e/OS every step of the way when trying to make my phone work, on a basic level, the way I wanted it to work. /e/OS is, I think, meant for someone ready to pay E Foundation to back up your data and integrate with their NextCloud instance. In this sense, /e/OS is great if you're okay swapping Google out for some other company. That's not where I'm at for almost anything on a phone these days, just generally, but also in particular due to problems like this, which are way too easy to make. I'd rather KISS and using SyncThing, bypassing the cloud entirely. I did do this with /e/OS, but had to work around their insistence to handle things on my behalf. As a side effect of this target audience, they've loaded several assumptions into the way the phone works, in particular, by loading up a whole heap of stock applications that are either duplicates of things I actually use or just plain useless crap. The agonisingly slow pace of releases meant core applications stay out of date for long periods of time. Their instance to fork everything and white-label it with /e/OS branding means that some things just don't get updated. Maintaining forks is a pain in the ass. Just use upstream! It's absurd to claim a de-Googled Android is "privacy focused", when regularly shipping relatively ancient software to devices. You can't have privacy without at least basic security and staying on top of software updates is a critical aspect of this.

Where does that leave me?

I had to switch phones. I wanted badly to return to something closer to CalyxOS, but even then, I ran into issues with assumptions built into how the phone "should be used". Fine for folks with less experience and who need more guidance, but frustrating for me. It's the same reason I continued to use Arch for so long. Other people's assumptions about how my computer should work were essentially intolerable. I want my computer to just work and only do the things I told it to do and nothing else. I run Fedora Kinoite now and am happy with it, but Fedora's assumptions are relatively minor compared to other distros, and they more or less align with my values and do not come into play with general usage or maintenance. The security and stability trade-off is also more than enough to make up for any of the inconveniences I've found and distrobox makes every other issue trivial to work around.

So, GrapheneOS is the only viable option. It's a coherent modification of AOSP, it comes only with AOSP apps and nothing else, aside from GrapheneOS management applications, which update independent of the OS (imagine that!). It only runs on Pixel phones. Shame, a bitter pill, but okay, I'll swallow it, their reasons for it make sense. I'm on a Pixel 7a now. It's essentially the same physical size of the Teracube 2e, and I can artificially create barriers to it encroaching on my boundaries with respect to smartphone usage. GrapheneOS makes that easy as well. Its assumptions make sense to me and I don't have to fight them.

There you go. I wouldn't recommend the Teracube 2e for anyone who is looking to run a de-Googled OS on it. There are alternatives to /e/OS for that on it, but they have similar issues with slow updates and significant usage assumptions, or hokey "privacy" features that don't do much for privacy but come at a significant usability cost. Others are not officially supported, like LineageOS, and as such won't have the stability and security I want my phone to have. Even if I don't use it often, when I do use it, it needs to "just work", if not right away, at least after I've set it up to do so.

For me, the 2e is not a suitable transitional phone, not even a suitable temporary phone. It'll go into a drawer and be a back-up until I turn it into a side-project or hand it off to someone else. Good riddance, what a miserable and disappointing experiment this was.