Absurd: Review of the ClockworkPi DevTerm R01

20220618

To most people, the thought of a small slab with an under-powered CPU, limited RAM, no dedicated GPU, abnormal keyboard layout, slow storage, zero USB 3, and a small ultra-wide display is horrifying. Who would want such a computer? For sure, it’s a strange beast. The issues with this machine do not stop at those listed. The issues are legion. Yet, this device inspires joy in nearly every technologist who sees it. Let’s get into why.

image of the DevTerm R01

First, the DevTerm isn’t a single computer. The DevTerm is better explained as a computing platform. I have two DevTerms. One is the A-04 (quad core ARM, 2GB RAM), and the other is the R-01 (single core RISC-V 64, 1GB RAM). The case and components of the A-04 are kept safely in my closet as spare parts, while the R-01 is actively used. At any time, I can power the machine down, swap the microSD card and the compute module, and be using a completely different computer architecture with a different amount of memory.

Second, for those technologists old enough to recall, the DevTerm calls out to past computer that was really quite special: the TRS-80 Model 100. The Model T (as it is lovingly called) is a machine that is still actively used by many and the machine had this same form factor.

Third, the DevTerm is as close to open source as most people are likely to get. Schematics and 3d printer files are available for every piece. The software is likewise open source. The machine is hackable and has an active user community.

Fourth, the R-01 is the first portable, affordable, and practical RISC-V 64 machine available.

All of this makes the DevTerm R-01 an exceedingly cool computer.

JUST LOOK AT IT AGAIN!

DevTerm R01 image

That USB-C is for charging. But, with three USB-A ports, this thing is more useful than a MacBook.

Okay, so I mentioned the downsides. Let’s get into those.

The R-01 really is under-powered, but not as badly as I first thought. Putting the thing together quickly after it arrived and booting the default Linux image… it was atrocious. Much of this is due to systemd. However, after the judicious removal of a few pieces of software and an update of everything else, the system was much much more responsive. For a single core at rather low clock rate, the R-01 is admirable. It is also cheap. It is also marvelously power efficient. Running on 2x 18650 lithium cells, the thing was able to run continually for well over 6 hours with web, screen, and audio going. It isn’t really going to win awards or anything, but this is a kit device made by and for tinkerers. The primary common task that is painful is modern web. So, this “under-powered” CPU part… not really an issue.

The lack of a GPU kind of is. Without a GPU, watching any video is beyond the capabilities of this thing, though with such a small screen I doubt that’s a serious problem for any user.

The small amount of RAM has yet to be an issue for me. Let us be rather clear about my usage though. I tend to spend time on my computers in Vim, Lynx, Mutt, SSH, Git, Tines, sc-im, and jira-cli. The missing pieces for me are slack-term and hydroxide, and go build is failing for both. The failing builds are more a symptom of RISC-V being new than any commentary on the R-01 specifically. All of these are run in Suckless’s ST with a few patches applied. Because of this, the R-01’s shortcomings of CPU, GPU, and RAM are muted. For me, the primary pain points are the GPU and the useless micro HDMI port. To be fair to the R-01, however, the HDMI port is useless on the A-04 as well. From my understanding, it is only usable on the CM3 and A-06. Clockwork Pi makes wonderful hardware, but the software is largely community driven, and that means that most popular stuff gets the most support.

The keyboard, trackball, and gamepad have been heavily criticized by other reviewers, and while I can understand their complaints, I think they’re wrong. The DevTerm has always been advertised as a portable terminal, and it serves well in that function. The trackball isn’t meant to be a primary human interface device, but one that is there when absolutely necessary. It functions well in that respect (especially as a scrolling device, which is my main use for it). The keyboard, after a period of acclimation) is perfectly usable. To be sure, it is no Model M, but it is sufficient to the task of typing. The gamepad works fine with my A-04 and some Pico8. The keys being tall and wobbly are issues I didn’t notice. I suppose that if one were an avid console gamer this might be a problem, but I seriously didn’t notice it at all.

Here are some general tips.

First, after assembly and on first boot, the apt sources.list is going to be set for devel, and should be on jammy.

sudo sed -i 's/devel/jammy/g' /etc/apt/sources.list

Next, there are some packages present that ought not be

sudo apt remove update-notifier-common linux*.15*

You also need to make sure that u-boot is configured properly

U_BOOT_ALTERNATIVES="default"
U_BOOT_MENU_LABEL="DevTerm R01 OS"
U_BOOT_PARAMETERS="earlyprintk=sunxi-uart,0x02500000 clk_ignore_unused initcall_debug=0 console=ttyS0,115200 console=tty0 cma=8M LANG=en_US.UTF-8 fbcon=rotate:1"
U_BOOT_TIMEOUT="0"
U_BOOT_FDT="board.dtb"
U_BOOT_FDT_DIR="/usr/lib/linux-image-"

Then run

sudo u-boot-update

Now you should be able to do

sudo apt update; sudo apt full-upgrade –y

On the microSD card, you will have /etc/extlinux/extlinux.conf, this file may get overwritten, and you will need to restore it via

cp /etc/extlinux/extlinux.conf.cpi.bak /etc/extlinux/extlinux.conf

During the upgrade process, my DevTerm randomly got hung on certain systemd units failing to start, and a simple ctl+c was usually enough to get it to move along. After a reboot, I ran

sudo dpkg --configure –a; sudo apt -f install

I then rebooted one more time, and the performance was rather good. Package installations and removals after this point were also much faster.

I removed several other packages due to my own preferences, and installed others. You might do the same, and in such case the right click menu of TWM is editable in the .twmrc

If you get error messages about your .Xdefaults/.Xresources file, I did notice that the folks who made the system image didn’t notice that comments in those files should start with ! and not #, so that should be fixed ( sed –i ‘s/^#/!/’ ~/.Xdefaults )

image of the Devterm R01

Absolutely charming :-)

For me personally, the DevTerm is an amazing computing device. I love it. It has its rough edges, but that actually makes it fun. It gives me something with which I can safely tinker. It has personality. It has a retro and funky design. I hope at some point that the folks at clockwork make an x86 SoM, or even an openPOWER SoM. I’d like to have even more architectures!

Largely thanks to the open source and hackable nature of the DevTerm, I may make a simple Linux distribution for the R-01 to attempt to ameliorate some of the shortcomings of the default system image. I am not certain though. It’s a ton of work, and I have other responsibilities. Stay tuned though.

⇠ back

© MMXXV, Abort Retry Fail LLC
Licentiam Absurdum