OpenBSD on the Huawei MateBook X (2020)

posted on aug 20th, 2021 with tags hardware, laptops, and openbsd, and last updated on aug 24th, 2021
part of OpenBSD on Laptops series

My old 2017 Huawei MateBook X has been my most reliable laptop and has continued to be my daily-use workstation despite trying half a dozen others (and a desktop or two) in the past four years. Every time I’d try a new laptop, certain components wouldn’t work properly, or the keyboard would feel strange, or the screen would look bad, or the fan or some coil-whine noise would drive me nuts. And every time, I’d return to my MateBook X and everything would just work silently.

I finally have a newer model of the MateBook X and I’m happy to say it lives up to its predecessor and will replace my 2017 model.

huawei matebooks x

Continue reading 2,648 words...

My Fanless OpenBSD Desktop

posted on jul 19th, 2021 with tags hardware and openbsd

After the disappointment of my X1 Nano and learning that all future Intel “Evo”-branded laptops would lack S3 suspend, I started thinking about returning to my M1 MacBook full-time or building an OpenBSD desktop. I chose the latter, building my first desktop machine in many years.

desktop with screen and new desktop system

Continue reading 2,791 words...

A USB Loader for the Cidco MailStation

posted on mar 31st, 2020 with tags hardware, mailstation, and z80

Last year I wrote about the Cidco MailStation and how I was using it as a Z80 development platform. One of the biggest hurdles to running code on them is that it must be uploaded over the MailStation’s parallel port with a LapLink cable and some custom software (although it’s certainly easier than having to pull and flash a chip).

I recently created a USB data loader device that allows for easier development from a modern computer and implements the MailStation’s custom data encoding routines in its firmware.

Continue reading 943 words...

Arduino Development on OpenBSD

posted on dec 17th, 2019 with tags arduino, hardware, and openbsd

Back in 2017, I bought an Arduboy, a fun little Arduino development system which integrates an ATmega32U4 8-bit CPU, 32Kb of flash storage, 2Kb of RAM, a 128x64 pixel OLED display, some buttons, a speaker, and a battery in a Gameboy-like package.

OpenBSD had an old Arduino package available without the Arduino IDE, and it instead included a custom Makefile for end-users to build off of for compiling projects. But it was all pretty old and crufty and kind of sucked the fun out of tinkering with a new piece of hardware.

Continue reading 752 words...

Cidco MailStation as a Z80 Development Platform

posted on may 3rd, 2019 with tags hardware, retrocomputing, and z80, and last updated on apr 30th, 2021

The Cidco MailStation is a series of dedicated e-mail terminals sold in the 2000s as simple, standalone devices for people to use to send and receive e-mail over dialup modem. While their POP3 e-mail functionality is of little use today, the hardware is a neat Z80 development platform that integrates a 320x128 LCD, full QWERTY keyboard, and an internal modem.

After purchasing one (ok, four) on eBay some months ago, I’ve learned enough about the platform to write my own software that allows it to be a terminal for accessing BBSes via its modem or as a terminal for a Unix machine connected over parallel cable.

mailstation on desk showing main menu

Continue reading 2,527 words...

Dolch PAC 64

posted on mar 20th, 2018 with tags hardware and retrocomputing

The Dolch PAC 64 is a portable, rugged Pentium-powered PC from the mid 1990s. It was usually used (and can usually be found on eBay) as a “portable network sniffer” complete with multiple network cards supporting multiple media types.

dolch pac with keyboard folded up

Continue reading 1,265 words...

OpenBSD on the Lenovo ThinkPad X1 Carbon (5th Gen)

posted on sep 1st, 2017 with tags hardware, laptops, openbsd, and thinkpad, and last updated on sep 4th, 2017
part of OpenBSD on Laptops series

ThinkPads have sort of a cult following among OpenBSD developers and users because the hardware is basic and well supported, and the keyboards are great to type on. While no stranger to ThinkPads myself, most of my OpenBSD laptops in recent years have been from various vendors with brand new hardware components that OpenBSD does not yet support. As satisfying as it is to write new kernel drivers or extend existing ones to make that hardware work, it usually leaves me with a laptop that doesn’t work very well for a period of months.

After exhausting efforts trying to debug the I2C touchpad interrupts on the Huawei MateBook X (and other 100-Series Intel chipset laptops), I decided to take a break and use something with better OpenBSD support out of the box: the fifth generation Lenovo ThinkPad X1 Carbon.

thinkpad x1 carbon running openbsd on desk

Continue reading 1,995 words...

OpenBSD on the Huawei MateBook X (2017)

posted on jul 14th, 2017 with tags hardware, laptops, and openbsd, and last updated on mar 24th, 2019
part of OpenBSD on Laptops series

The Huawei MateBook X is a high-quality 13” ultra-thin laptop with a fanless Core i5 processor. It is obviously biting the design of the Apple 12” MacBook, but it does have some notable improvements such as a slightly larger screen, a more usable keyboard with adequate key travel, and 2 USB-C ports.

It also uses more standard PC components than the MacBook, such as a PS/2-connected keyboard, Intel WiFi card, etc., so its OpenBSD compatibility is quite good.

huawei matebook on desk running openbsd

Continue reading 1,662 words...