Adventures with SBC's (i.e. ARM cpu computers)

OK - got a bunch of ARM devices around the house running Linux (mostly debian based)… the one with the longest uptime?

it’s a NextThing NTC C.H.I.P. in a PocketCHIP chassis :

chip@chop  ~  uptime
12:44:32 up 34 days, 3:04, 3 users, load average: 0.41, 0.12, 0.09
(note - I once had one of these [not in a pocketchip chassis!] as my SSH jumphost into my home LAN from outside, with a LiPo as “UPS”, and it had an uptime of well over 365 days!)

Got another CHIP with a HDMI “DIP” (it’s NTC’s version of an RPi “hat”) that I’m running through a Motorola Lapdock :

╭─x@hati ~
╰─➤ uptime
12:47:52 up 16:35, 3 users, load average: 0.73, 0.28, 0.23

These things are tiny, I guess similar specs to an RPi Zero (512 MB RAM and single core)… but pretty reliable, and the built in AXP209 and built in LiPo battery circuits were the “killer app” for this platform… just a shame the company went bust (and apparently left a bunch of unfulfilled / unrefunded back orders - a 1 GB multi-core version would be awesome!)…

Anyway - one of my customers has a bunch of Citrix stuff (which we engineers will use to connect and support their environment - 9-5 and after hours on-call) and I’ve been playing with it - i.e. just Citrix connectivity - on my RPi4 and on the CHIP running on a Motorola Lapdock…

Amazingly the CHIP with single core ARM, 32 bit Debian Jessie with 0.5 GB of RAM does better with the Citrix ICA client than the RPi 4 with quad core, 64 bit O/S and 4 GB of RAM… it’s unusable on the RPi4 (@ 1080P)! It’s snappy and responsive on the NTC CHIP (@ 1366x768)…

Both “work flows” are similar :

  • Fire up Chromium (and make sure the tab count is LOW!) - connect to customer’s netscaler, login with MFA, and download the *.ICA file and XDG-OPEN in the ICA client (Chrome/Chromium seems to be the only browser that lets me download the session *.ica file).

Note : the ICA web client in Firefox is usable on an Intel/AMD desktop class Linux machine. But on the NTC CHIP, Firefox is just about the only app that crashes it (reliably so!) - hence why my uptime on it is only hours (I crashed it several times last night - trying different browsers).

Anyway - hoping to work around the issue with the RPi4 - I’ve pre-ordered a 14" NexDock “2” to run with my 8GB RPi4 when it arrives (NexDock 2 not due till September - 8 GB RPi4 due well before then), which I’m planning to use for my job…

Note : I just had to SSH to my RPi4 to kill the Citrix session (GUI desktop session unresponsive)! I’m going to put most of my dramas with the RPi4 down to me running unofficial “pre-pre-alpha” elementary os on it… I reckon Raspbian would be more robust… I think I’m going to need to invest in some decent spec largish SD cards so I can put multiple RPi Operating Systems through their paces…

1 Like

My 8 GB RPi4 arrived yesterday… popped in the 128 GB Micro SD card with elementary arm64 that I setup on my RPi 4 4GB model, and it won’t boot - tells me :

start4.elf not compatible.
This board requires newer software.

on the console - oh well… lets try something else then… so burned another SD card with RaspiOS (rebranded Raspbian) for arm64 and persevered with the ugliness of the Pixel desktop (it’s so UGLY - it looks like a toy computer from the 1990s!)…

Removed Pixel… removed lxde - and could still see taints of LXDE (it’s so ugly, it looks like Windows XP) - so I went berzerk :

sudo apt purge lx*

(not recommended)

And everything was still good…

Basically stripped down to a “headless” 64 bit ARM server, shut it down and overnight took a “dd” backup dump of the image.

Then today slowly built it up to a decent looking “SOE” with XFCE - but jeez XFCE4 4.12 is ugly (amazingly 4.14 looks heaps better and integrates so much better with GTK3 themes - but can’t find any way to update arm64 XFCE to a later build of XFCE/XFWM)…

I’m going with a MacOS theme (Mojave “dark”), but I’d really rather an elementary pantheon theme (but can’t find any that integrate well with XFCE 4.12 - other than icon sets, which I’m using) :


This build is much snappier than elementary on the RPi4 4GB model - and I think that’s more down to RaspiOS arm64 VS “elementary pantheon desktop on Ubuntu 18.04 arm64” (i.e. I don’t think it’s a question of 8 GB vs 4 GB RAM). There are “caveats” at the download link that things like VLC and Chromium don’t get GPU acceleration - but that VLC window playing a 1080p video file isn’t showing any lagging or stuttering… haven’t noticed any issues with Chromium (it runs a lot better than it does on elementary running on the RPi 4 4GB)…

Citrix Web Client works 100% through FireFox - yet to try and get the actual “standalone” ICA client to open a downloaded ICA session file…

And here’s photos of my NTC CHIP’s :


PocketCHIP uptime 37 days… of all the SBC’s I’ve used, that builtin AXP209 and LiPo charging battery circuit makes these pretty awesome little doohickeys…

NTC Chip XFCE 4.12 hooked up to a Motorola Lapdock :


basically a “proof of concept” to myself, that I could use some low spec device as a “thin client”… and satisfactorily proved, to me, and the Citrix Windows 10 VDI session is actually a tiny bit more responsive than the XFCE window manager hosting the graphics…

Next step :
Try and compile Sayonara media player from source code (won’t build on 32 bit Raspbian)…

1 Like

And yet more adventures… and scorched earth…

OK - everything was running nicely… was able to build Sayonara from source code, and it sorta worked (tried it on a FLAC album and it sounded awful)… few niggles (didn’t seem to support using filesystem folders as music library, insisted on building a media library - which I hate - the only MEDIA database I want is the directory tree on my computer!).

So mostly all good… tried mpg123 and it worked just fine on mp3… tried ogg123 on a FLAC file and same result as Sayonara, so it’s not Sayonara… it’s something else…

Decided to take a look at omxplayer after reading about it on some Pi forums… seems there’s a bunch of stuff it needs (armhf stuff)…

So - by a process of elimination - its dependancies were :
libavcodec58:armhf libavformat58:armhf libraspberrypi0:armhf libssh-gcrypt-4:armhf libraspberrypi0:armhf libgssapi-krb5-2:armhf libkrb5-3:armhf libssl1.1:armhf

So I installed them - meanwhile, I’m trying to hook up a 2nd monitor with either HDMI > DVI or HDMI > VGA, and it’s not working…

I’m doing the omx + dependancies install on a remote session in a terminal window, and I’m looking across at it after I’d submitted :

`

sudo apt install libavcodec58:armhf libavformat58:armhf libraspberrypi0:armhf libssh-gcrypt-4:armhf libraspberrypi0:armhf libgssapi-krb5-2:armhf libkrb5-3:armhf libssl1.1:armhf

And what do I see? I can see it’s REMOVING a bunch of arm64 packages including ALL of xfce4!!!

WTF?

I look at the HDMI screen of the Pi4? It’s blank… I pull the plug on everything… Pi4 boots into TTY… hardly anything there…

PEZZO DI MERDA!

How can :
> sudo apt install libavcodec58:armhf libavformat58:armhf libraspberrypi0:armhf libssh-gcrypt-4:armhf libraspberrypi0:armhf libgssapi-krb5-2:armhf libkrb5-3:armhf libssl1.1:armhf

Become :

> sudo apt remove xfce*[:arm64]

???

Did it somehow interpret my installation of a bunch of [package]:armhf stuff mean I wanted to replace ALL of arm64 with armhf?

Who knows?

Currently restoring my somewhat “vanilla” RaspbiOS (i.e. no GUI or anything) backup onto the SD card… Not worth the trouble of trying to repair the damage - easier to start again. This could take hours :

xzcat mimas-bkup.img.xz| sudo dd bs=4M of=/dev/mmcblk0

the img.xz file is 800 MB, but the compressed image inside is 59 GB…


I suspect:

1 Like

Too much shit doesn’t work on the plain jane vanilla XFCE 4.12 arm64 you can install from debian buster repos, and there doesn’t seem to be any path to get XFCE 4.14 for arm64 (there’s a broken PPA for arm64 by one of the XFCE developers)… e.g. I think I’ve broken wifi on it - by installing parts of NetworkManager (Raspbian / RaspbiOS uses wicd I think) - and no bits of NetworkManager work in it anyway. No idea how to get the Bluetooth config wizard doohicky to work in XFCE on this Pi4…

So - heading out to the shops shortly to grab a couple Samsung Evo Plus micro SD cards, and going to persevere with RaspbiOS on Pixel (yeah - that ugly 1990’s looking implementation of LXDE).

But I’ll be tweaking the crap out of it - because by default it’s so hideously gharish, I feel nauseous just writing about it…

Read some stuff about success stories getting Ubuntu 18.04.4 running on the 8 GB Pi4, but they’re all running ancient pre-5 kernels… (4.19 or something - which is so last decade :smiley: [assuming 2020 is a new decade])

Wish me luck…

Hey Raspberry Pi Foundation people : The 1990’s called - they want their desktop back! image

It still kinda galls me to run 32 bit system software on a 64 bit capable platform (read : cripple)… but I think I’m going to go back to armhf on my RPi4B 8 GB - and bugger trying to make it run something like XFCE with a more modern look and feel - I’m going to get the source code for CDE and run that :


isn’t she glorious!

Heck - I used to support 32 bit Solaris 2.6 and 2.7 (2.7 had partial “half arsed” 64 bit support) running on 64 capable sparc boxes, not to mention crippling 64 bit DEC Alpha RISC systems with Windows NT 4.0 32 bit (I believe there was a beta copy of Windows 2000 floating around that was partially 64 bit on Alpha - but Redmond didn’t go 64 bit till AMD and Red Hat dragged them kicking and screaming to 64 bit world) - yes I did that almost criminal act, and still ashamed :smiley: to this day…

Heck - I just took on a new customer, still running 32 bit Lotus Notes non-SMP aware on 64 bit multiple core sparc Solaris servers…

And also Intel/AMD x86_64 is so boring and pedestrian :smiley:

I managed to get an XFCE theme that does “CDE” on my RPi 4B 8 GB (on arm64/aarch64) - but gave up trying to get it to run the included Python version of the CDE panel [barfs on a “HSV” argument in the source code]).

I’m pretty confident everything else that expects ARMHF will just work, like Citrix ICA client, and Steam Play - but use the CDE Motif XServer instead of x11…

Stay tuned…

tiny update : screen shot of XFCE CDE theme running on Raspbian arm64 on RPi 4B 8 GB :

Gave up trying to make either plank, or an XFCE panel look like the CDE panel… I think I’ll try for native instead of simulated/emulated…

3 Likes

Flashed latest armhf Raspbian Lite onto a 128 GB SD card, got all the libraries I needed and successfully compiled and installed CDE on my Pi 4B 8 GB… got it to start from “startx” command, but that’s it - it starts, loads, but then barfs on some issue or other (don’t remember what it was) - but it looks like a candidate for the “too hard basket”…

So I installed XFCE onto it and got that running nicely - anecdotally, it feels a tad snappier than XFCE on arm64 (and it hurts my head trying to figure out why that should be so)… Installed that xfce CDE theme (~/.themes/), and managed to get the CDE panel python script to work… installed Citrix ICA Receiver client and Citrix Web Helper, and SteamLink - no dramas with armhf VS arm64 binaries/dependancies/libraries…

Here she is - looking like a Sun workstation from the mid/late 1990’s :


With a Citrix session running a MobaXterm window…

I tried to “hack” the sh!t out of neofetch (it’s mostly just a big shell script - 4000+ lines), to make it lie and say that it was running on Solaris/SunOS, and display a Sun Microsystems logo - but that got too hard too - I might end up doing a “issue” and a “motd” that lie and say it’s Solaris :smiley:

>        /\
>        \ \
>       \ \ \
>      \ \ \
>    /  \ \  /
>   / /  \/ / /
>  / / /\  / / /\
>  \/ / /  \/ / /
>    / / /\  / /
>     /  \ \  /
>       \ \ \
>      \ \ \
>       \ \
>        \/
1 Like

This is first time I’ve heard Lotus Notes mentioned since about 1998. I’m pretty sure I haven’t used it since 99 or maybe 2000?

Believe me - there are places still using it… I remember seeing it running about 20 years ago, on Windows NT 4 servers, and, it was so dumb, it couldn’t run as a service, so to start the Notes/Domino Server on NT 4, you had to actually login to the console desktop as “administrator” fire up a CMD / DOS Window and run a batch file!

IBM sold it off recently to some Indian IT company “HCL”…

Why this legacy crap is still entrenched, is because “developers” used to write applications in Notes, and I guess no one ever figured out how to replace that business function with something else… That “notes running in a DOS window on NT 4 shop” was a big IBM / Lotus shop, and our WHOLE timesheet system was written in Lotus Notes (we used to “affectionately” call it Lotus Scrotes) and it was a PIG and a slug and diabolical to use…

The first ever email system I used was Lotus CC:Mail (1990?) - which eventually got merged into Notes… it was okay for a DOS application (it was only user to user - no internet email).

OK - so I shelled out and got a USB 3.1 / USB C external SSD (nVME - 500 GB Samsung T7) and cloned my SD card onto it (using “dd”) - then used this guide :
https://www.tomshardware.com/how-to/boot-raspberry-pi-4-usb

to setup my Pi 4 to boot from USB instead - and this is purely anecdotal, but it seems exponentially faster and snappier than it ever was running off SD card…

Such a PITA however, to have to dangle an external drive off it…

But it could now be considered capable of being a “daily driver”…

Still running 32 bit (armhf) on it - I’ll wait until a few things “mature” or get ported to arm64/aarch64 (like SteamLink, Citrix Workspace Client)…

2 Likes

My only experience in this area (Single Board Computers) is from about a year and half ago: I set up a Pi3B as media player (essentially for the children). I installed LibreELEC (a very lean Linux just for this purpose) with Kodi (the media player) on a SD card which just worked perfectly, put it into a cute little box, added a soft button for boot and halt, connected a small wireless keyboard with trackpad, added remote read only access to the family NAS and installed a few kids compatible apps. Since then, it works fine and the TV has a purpose again, as it is practically unused otherwise as Samsung’s SmartTV apps cannot be updated on this model, so it is a huge “dumb TV”, a monitor connected to devices.

The only thing complicated was making the YouTube Kids add-on work which required manually copying a lot of very long authentication strings. In the end, it worked.

2 Likes

What a golden choice of phrasing.

Updates : My Nexdock arrived (i.e. a “dumb” 1080p touch screen with battery, keyboard and touchpad - looks like a laptop, but it doesn’t have a computer inside) - not 100% happy with it - logged a couple of support tickets with the vendor - DeX from my Samsung S9+ exits if the Nexdock isn’t connect to mains (what’s the point of the battery?) - their response : “try another cable”. Well duh of course that’s the first thing I tried… Their 2nd response was ‘try another phone’ (like I’ve got a barrel full of DeX aware Samsung smartphones lying around)…

Anyway - better success with hooking up either of my RPi4 devices… but still some things that irk me like : DON’T CLOSE THE LID! and : TURN OF SCREEN BLANKING (sending this signal tells the Nexdock to disconnect USB power to the Pi).

In the interim, I configured my other RPi4 with 4 GB to boot off USB too (using a 256 GB USB 3 thumb drive) - it’s running Raspbian Buster arm64 - and that’s much faster now too, but still not as snappy as my RPi 4 8B running Raspbian Buster armhf (32 bit)… I don’t know if it’s a RAM thing, or a 32 bit VS 64 bit thing (note - Pi 4 kernel has arm’s version of PAE, so it can address 8 GB of RAM).

Ordered a PiJuice hat today, so I’ve got a UPS solution for one of my Pi 4’s - still don’t know if it will fit inside the cases I’m using (so I can disconnect it from the Nexdock, or close the lid of the lapdock)…

Next payday I will probably order another Pi4 8 GB, and use the 4 GB Pi4 to replace my Pi3B running PiHole, OpenVPN and acting as my SSH jumphost into my Home LAN from outside (note - do NOT do that unless you run it on a different port, or port forward a “not port 22” port from your FW / router to port 22, and don’t do this unless you’re running fail2ban as well) - and I’m probably just going to pull the SD-Card from the Pi3B and put it in the Pi4, I know this will work, because that SD Card in the Pi3B is running arm64 buster, and I actually set it up and configured it on my Pi4 4 GB system, and with a Pi4 I can cut it over to using and booting USB 3, and maybe even set it up as a mini NAS…