3d-printable case for the Odroid-H2 SBC

2019-12-29 12:15
I have designed a 3D printable case for the Hardkernel Odroid-H2 single board computer (SBC) with OpenSCAD. The H2 is an x86-based board with an Intel Celeron J4105, two DDR4 SO-DIMM slots and lots of I/O (2x GbE, 2x SATA, M.2 SSD, USB3, DisplayPort, HDMI, ...).

The case is configurable and supports up to one 2.5" disk drive with a height of up to 15 mm. It consists of two parts and is pretty easy to print.

Odroid-H2 case
Read the rest of this entry »

Computer controlled IR remote control for an RGB LED strip

2017-08-08 18:23
I've got one of these simple remote controlled RGB LED strips. Using the IR remote control that came with it to select colors is fine, but I wanted to be able to control it through a computer. That way it would be possible to do things like turning it off when playing a movie for instance, or using it to signal any kind of event.


There are different options on how to achieve that. I could have replaced the whole LED controller circuitry with my own, but I didn't want to do that. What I decided to do instead is create a small circuit that emits IR signals that the original controller understands. That way I can still use the original remote control and do not have to modify any of the original LED strip components. The downside to this is that I am stuck with the capabilities of the original controller, which are rather limited.
Read the rest of this entry »

Coreboot on the Lenovo Thinkpad X220

2016-12-30 11:00
I have finally come around to install Coreboot on my X220 laptop. It is an X220 with a Core i5-2520M and 16 GB of DDR3-1600 RAM.

Coreboot is an open source replacement for the BIOS/UEFI firmware of a variety of laptops and mainboards. Coreboot needs to be combined with a payload component, since Coreboot itself doesn't do a whole lot besides hardware initialization. The payload I am using here is SeaBIOS, which implements the features of a PC BIOS.

SeaBIOS payload

It allows you to boot most PC operating systems, including those that rely on the classic PC BIOS features. For UEFI support there is the TianoCore payload. It is also possible to use the GRUB bootloader as a payload or embed a Linux kernel as a payload (if the flash chip is large enough).
Read the rest of this entry »

Gmu 0.10.1 released!

2016-09-10 14:33
I have just released version 0.10.1 of the Gmu Music Player. It is mostly a bugfix release.

Most notably it fixes some issues with the build process which could occur on some systems. Other than that I have improved some of the decoders. The Opus decoder now supports seeking, while the Ogg Vorbis decoder accepts files with the .oga extension (in addition to the more popular .ogg file extension).

For more information about Gmu 0.10.x please have a look at the Gmu 0.10.0 release post.

Source gmu-0.10.1.tar.gz (487 KB)
md5sum: 98146012ce9b5e8971162796a0be17e3

Gmu 0.10.0 released!

2016-07-13 19:18
Attention! There is a newer version available!

Here is a new release of the Gmu Music Player. Version 0.10.0 comes with a couple of new features and bugfixes. Also, lots of code has been changed/rewritten for better quality, security and performance. Since Gmu turns 10 this year (I released the first version of Gmu for the GP2X back in 2006), 0.10.0 seems like a suitable version number for this anniversary release.

Gmu setup dialog

Noteworthy new features and bugfixes:
  • A configuration dialog in the SDL frontend for configuring lots of Gmu settings previously configurable through the config file only is now included
  • Gmu now stores its configuration and playlist information in XDG compliant locations (typically ~/.config/gmu and ~/.local/share/gmu)
  • An Ogg Opus decoder plugin for decoding Opus audio files
  • A new module decoder plugin using the OpenMPT decoder library
  • An experimental media library feature (disabled by default; only usable from gmuc currently)
  • Optional fade-out on skip feature (fades out the current track when user explicitly chooses another track)
  • A few fixes for supporting musl libc based systems
  • More robust networking code in gmuc (faster detection of lost connection) and Gmu
  • Command line mode for gmuc utility for controlling Gmu through command line commands e.g. "gmuc play /path/to/file.ogg" or "gmuc pause"
  • Improved build system with a configure script for auto detecting features (not autotools based)
This is mostly a source release right now, but I have built a version for the Z2 as well. It has been built using mozzwald's OpenWRT toolchain, so it runs on OpenWRT with musl libc.

Source gmu-0.10.0.tar.gz (493 KB)
md5sum: 6fda24acfd63bbda56e5fe227b2e5027

Zipit Z2 OpenWRT build gmu-0.10.0-zipit-z2.zip (475 KB)
md5sum: b746a7595e58f5b2360661c85de49cba
« Older entries