OpenBSD on the Microsoft Surface Go 2

posted on may 15th, 2020 with tags laptops and openbsd, and last updated on jul 31st, 2020

I used OpenBSD on the original Surface Go back in 2018 and many things worked with the big exception of the internal Atheros WiFi. This meant I had to keep it tethered to a USB-C dock for Ethernet or use a small USB-A WiFi dongle plugged into a less-than-small USB-A-to-USB-C adapter.

Microsoft has switched to Intel WiFi chips on their recent Surface devices, making the Surface Go 2 slightly more compatible with OpenBSD.

Continue reading 2,098 words...

Touchpad, Interrupted

posted on jul 28th, 2019 with tags debugging, laptops, and openbsd

For two years I’ve been driving myself crazy trying to figure out the source of a driver problem on OpenBSD: interrupts never arrived for certain touchpad devices. A couple weeks ago, I put out a public plea asking for help in case any non-OpenBSD developers recognized the problem, but while debugging an unrelated issue over the weekend, I finally solved it.

It’s been a long journey and it’s a technical tale, but here it is.

Continue reading 2,901 words...

OpenBSD in Stereo with Linux VFIO

posted on nov 12th, 2018 with tags debugging, laptops, linux, and openbsd, and last updated on mar 24th, 2019

I use a Huawei Matebook X as my primary OpenBSD laptop and one aspect of its hardware support has always been lacking: audio never played out of the right-side speaker. The speaker did actually work, but only in Windows and only after the Realtek Dolby Atmos audio driver from Huawei was installed. Under OpenBSD and Linux, and even Windows with the default Intel sound driver, audio only ever played out of the left speaker.

Now, after some extensive reverse engineering and debugging with the help of VFIO on Linux, I finally have audio playing out of both speakers on OpenBSD.

Continue reading 2,062 words...

OpenBSD on the Microsoft Surface Go

posted on aug 31st, 2018 with tags laptops and openbsd

For some reason I like small laptops and the constraints they place on me (as long as they’re still usable). I used a Dell Mini 9 for a long time back in the netbook days and was recently using an 11” MacBook Air as my primary development machine for many years. Recently Microsoft announced a smaller, cheaper version of its Surface tablets called Surface Go which piqued my interest.

Continue reading 3,539 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

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.

Continue reading 1,976 words...

OpenBSD on the Huawei MateBook X

posted on jul 14th, 2017 with tags hardware, laptops, and openbsd, and last updated on mar 24th, 2019

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.

Continue reading 1,643 words...

OpenBSD (not) on the Surface Pro 4

posted on jan 2nd, 2017 with tags hardware, laptops, and openbsd, and last updated on dec 30th, 2016

I recently had access to a Surface Pro 4 and tried to boot OpenBSD on it. It did not go well, so I am just putting this here for posterity.

The 2016 Surface Pro 4 is basically just a keyboard-less x86 (Core i5 on the model I had) tablet with some tightly integrated (read: not upgradeable) components. Its optional Surface Type Cover is just a USB-attached keyboard and trackpad, which magnetically secure to the bottom of the device.

Continue reading 640 words...

The 2016 MacBook Pro

posted on nov 8th, 2016 with tags apple, hardware, laptops, and macos

I’ve been using an 11” MacBook Air as my primary computer for six years. It’s a great computer that satisfied a lot of requirements I had for a laptop: thin, lightweight, small form factor, excellent keyboard and touchpad, mostly silent, but not an Atom or Core M processor.

I’ve done a lot on this little computer, like compiling and maintaining an Android ROM, writing the Rails, iOS, and Android apps for Pushover, creating Lobsters, recording and editing 40 episodes of Garbage, and lots of OpenBSD development.

Continue reading 2,061 words...

OpenBSD on the Chromebook Pixel (2015)

posted on aug 26th, 2016 with tags laptops and openbsd, and last updated on aug 22nd, 2016

The Chromebook Pixel LS (2015) has an Intel Core i7 processor (Broadwell) at 2.4Ghz, 16Gb of RAM, a 2560x1700 400-nit IPS screen (239ppi), and Intel 802.11ac wireless. It has a Kingston 64Gib flash chip, of which about 54Gib can be used by OpenBSD when dual-booting with a 1Gb Chrome OS partition.

Continue reading 3,236 words...