2023 Tech adventures: Hard- and Software

Sorting my pictures from this year, I got reminded of the various pieces of tech I got into contact with..

The tech year started with writing an article in how Kanji are input with normal keyboards. The area between Japan, Kanji and technology stays interesting for me.

AsiaBSDCon

In April, we had AsiaBSDcon in Tokyo. I’m much more active in the Linux world, but BSD covers other interesting areas, for example NetBSD with support for older hardware. The event was even within cycling distance. 2 days full of speeches and meeting some interesting folks. Took the opportunity to look at OpenBSD/NetBSD/FreeBSD for desktop usage, used OpenBSD while at the conference, shared the experience in a mini talk. Details are here.

Bike navigation with OpenSource

In May, we had the ‘Golden week’, a series of national holidays in Japan. I found a chain of software which helped me navigate on a bike trip to a friends house in Tochigiken, where I helped with rice planting.
brouter-web is great for planning, allows download of the planned route, and software OSMand then allows importing of the route on Android and iphone mobiles. I used an Android and an iOS mobile sequentially for navigation, and recharged with a Thinkpad in the backpack. Software syncthing allowed to share pictures taken on the trip. Data for the trip and links, like details of the hotels etc. were stored in markup files, also synced with syncthing to the phones, and accessed there with software Obsidian. I captured more details in this article.

RISC-V

I got hands on a Star64 board with RISC-V cpu, looked at usability as Jellyfin- or webserver, compared to i.e. the Raspi. Quite interesting hardware, and the hardware features which are already supported are usable! Details are here.

RHCE cert

In June, I managed to renew my Red Hat Certified Engineer (RHCE) cert. I’m taking the RHCE certifications since more than 20 years, in the last years much Ansible knowledge is required - I use it to install virtual guest machines to replicate customer issues, but apart from that I’m not using it. Took me 6 months of training along to the normal work to learn for the cert, and I also failed on the first attempt.

Retro summer

In July, I tried to revive some hardware from the attic. The Robotron EC1834, a 8086 clone from former East Germany, does not light up the monitor I got along with the system. Now in Christmas time I got further: the video signal from the system is CGA/EGA compatible, not good for VGA monitors. I got a MCE2HDMI device which should help to access the signal - all under the assumption that the signal from the system is ok and usable at all. I get something now, but no proper sync on the signal. Details are in this thread. I got to light up an Amiga 1000 for the first time - having no keyboard for the system though. Also had to use the Amiga 500 to create a floppy disk with the kickstart code. I would love to get hands on an A1200 or A600 at some point. Details on the Robotron and Amiga activity are here.

For colleagues I created a short presentation with the more or less obscure hardware I got my hands on so far, slides are here.

At the company, we had the ‘family day’ event, and I tried to create a map of the office in the style of classic 2D role playing games like ‘Chrono Trigger’. I failed.. more details here.

Mastodon hosting and talk

Mastodon is an OpenSource micro blogging software, a bit like Twitter. Many people around me have moved to Mastodon, I’m also using it heavily. In the last months I looked into hosting a Mastodon instance myself. I’m not a big fan of containers, but as software like Mastodon or Lychee (image gallery hosting) are composed of increadibly small software pieces which all need to fit together. Putting these into a container allows easier updating: if an upgrade of the components in the container fails, one can simply fall back to the older state. I got Mastodon to run in a container controlled with podman, details are here.

Right now, I’m not planning to move my Mastodon account to the own instance. I registered a new domain for the own Mastodon instance, and use it for playing. @tracks is an account for posting game tracks, @languagelog is a bot posting updates from the great languagelog site. Writing this Mastodon bot was a nice experience! While Twitter is shutting down their APIs, all of this is easy with Mastodon.

In November, I gave a talk on Mastodon at the Tokyo Nerd Nite event: slides, recording and images are available.

AppleSilicon/Asahi Linux

At the beginning of 2023, I was up for company hardware refresh and decided to go with an Apple Macook pro this time. Apple is shipping these with AppleSilicon CPUs, an own ARM design which has a good reputation technology wise. I have colleagues using such hardware for their work in support, but for myself I did only consider the hardware with Linux natively running, not Mac OSX. The decision was basically

  • to go again for an Intel based laptop
  • or an Apple Macbook, knowing that the hardware was not yet fully supported on Linux as of requesting the hardware refresh

I asked for the Macbook, got it in summer/autumn, and now almost all features are supported. HDMI output was missing until November, I investigated a chain of

  • recording the screen contents, encode it with ffmpeg
  • and have it streamed to a different system which would display it.

Works quite nicely, just a tiny bit to slow to feel “fluent” for example when browsing web pages. But good enough for showing videos. The details are here, this might come in handy in other situations too. Direct HDMI output from the Macbook got implemented in November. Speaker output came in December, but was not essential for me as I use a Sony headset via bluetooth for conf calls, that worked fine already. Now just some pain points remaining:

  • right now no support of monitor output via USB-C, but that’s just for convenience. I can use an HDMI cable to connect monitors.
  • As this is aarch64 and not Intel, I can not easily spin up KVM guests to replicate customer issues. Spinning up aarch64 RHEL9 works, but older RHEL runs into issues. Need to investigate emulation for this.
  • I’m not a fan of the keyboard and trackpad, being used to Thinkpad keyboards and the trackpoint since years. Considering to get this keyboard for work. I’m very happy with the System76 launch keyboard, it’s just much more expensive.

Apart from that, the Macbook is quite nice! Amazing battery lifetime, nice screen. The Asahi project, which ports Linux to the AppleSilicon, also announced now Fedora as their new main distro. Details for running Linux on the Mac are here.

Self hosting in Japan?

My services like mail- and webserver are running on a virtual server in Germany, latency of 230-250ms from Japan. In Japan, I have 1gbit fiber into my room, and could upgrade it to 10gbit. I seriously consider running services in the flat in Japan 24/7. Services reachable from the internet via IPv4 would be an issue: my ISP is not giving me a static IPv4 address, and also the router does not allow port forwarding. I would need to switch the ISP ontop of the fiber, as media and ISP are separate in Japan. For outgoing v4 connections, there is no issue. For IPv6: I get a whole segment routed and can directly offer services via IPv6. This made me setup an experiment: I created a DNS AAAA record and offered webservices via tcp/443 via v6. For the same domain I created a DNS A-record, which I pointed at my server in Germany, and via a VPN forwarded the request to Japan. So requests for the domain via v4/v6 landing on the same webserver in Japan, just with latency differences. Running for example a Mastodon server like this should be fine, also the latency is not important in that case. For now, not hosting in Japan.. but keeping the idea in mind.

Steam Deck, OSSummit

In December, we had the Open Source Summit Japan in Tokyo, first time since beginning of Corona. I’ve been at the event since many years, in the last years at the Red Hat booth. I have the habit of bringing in more rare hardware with Linux, in 2019 that was the Nintendo Switch gaming console running Fedora.

In summer, the Valve Steam Deck got available in Japan and I ordered one. It’s a Linux based gaming console with x86 hardware. Linux is running natively, and with some software layers also almost all Windows games can run - it’s a huge hit. I spent more time tuning Linux on the system than actual playing, and to the OSSummit I brought the Steam deck running Fedora, and powered the booth monitor. 3D acceleration works out of the box, Valve is a good citizen and brought patches into the upstream projects.

Trying out the Steam deck is really fun: it comes natively with a Linux distro from Valve, the vendor. 2 years ago, I wrote code for the Performance Co-Pilot (PCP) project, this code allows measurement of electrical power consumption. Various distros include the code, so I could just log onto the Steam deck, install the PCP package, and then measure power consumption while playing a game. Nice! Curious about pmda-denki? This article has details.

With Fedora/Steam deck, I used Plasma/KDE again. Getting the consoles internal screen and the external one via HDMI (which would be the booth monitor) to work was doable, but then trying to setup remote control for that external monitor was hard - I did not get that up after some hours.

I also brought the Macbook running Asahi Fedora remix to OSSummit. Was able to chat with many folks, in Japanese and English, and even German!
Also great to catch up with colleagues at the booth, and past colleagues and partners who were around. One specialist even asked about Red Hats strategies and code for measuring power consumption!

Germany trip

Back in Germany, I tried to setup Solaris on a Sun Ultra 5 system - to no avail. For network installation, one has to provide the Solaris install data via NFS version 1, I installed Fedora core 1 from 2003 in a KVM guest as NFS server, bridged that network to the network interface of the Sun.. and still it won’t boot Solaris. Ah well, now the system is happily running NetBSD 9.3. Great to see current operating systems still supporting this old hardware.

I had planned to get LED stripes with individually addressable LEDs, had been researching into this a bit. Bought 2 stripes which turned out to not have individually addressable LEDs, I will take one of these with me to Japan to light up the room in the evening. Indivitually addressable requires also a Raspi/arduino/ESP32 or such and a more complex setup.

Other project in the last 2 weeks: I got a cheap zigbee2usb device, and 5 zigbee temperature sensors. First testing went well: I connected the zigbee2usb device to the Thinkpad, and the sensors all reported the measured temperature. Then I moved the zigbee2usb device to a Raspi4, sensors still were fine. On that Raspi4, I also host a 2.4Ghz wlan access point, spanning up a network for some ’less trustable’ devices like smart power plugs which measure power consumption. As soon as the Raspi4 starts hosting that network, the zigbee sensors go silent. Turns out that the wlan and zigbee are in the same frequency area and interfere. Separating the zigbee2usb device from the Raspi with a USB cable helps with this - but still one of the smart plugs has now lost contact. Zigbee devices actually also can act as ‘router’, but only Zigbee devices like light bulbs or power plugs which have constant power supply. So I could consider to replace the wlan connected smart plugs with Zigbee ones, and do a mesh network. The temperature sensors are now getting recorded into PCP archive files, and visualized with Grafana.

Software which stayed

Most stuff stayed :)

I’m still a happy user of Wayland with the Sway window manager, also on the Apple Macbook. Tiny Tiny RSS as feed reader is my most heavily used service. For podcasts, I use the FiiO M3K with rockbox.

More direct news via the Mastodon account.


Last modified on 2023-12-24