Minimyth on Zotac zbox ID84

This would have been posted in the forum, but I have not been able to create an account there.

I've finally decided to retire the EPIA ME2000 board that I was using as a Minimyth client. It was amazing that such a lowly platform managed to cope with it for so long, but now that mythtv has dropped support for XvMC there seemed no choice.

The Zotac zbox ID84 was no trouble to get going as a minimyth client. I'm rather under-using it though since at the moment it is only viewing standard definition content on a VGA input TV. So this is mostly a success story, but highlights some outstanding issues.

Of course the fiddly part is always the remote control. With the EPIA board I used the lirc_serial module and a homebrew receiver. The zbox comes with an MCE usb IR receiver, and no serial port. At the moment IR reception is in a state of flux in Linuxland because a lot of has been brought into the kernel.

Currently I'm using ram-minimyth-0.24.3-82-x86_64, so the latest minimyth but mythtv 0.24. The remote control mostly worked without any set up. The IR USB receiver, which looks like this:

# lsusb
Bus 005 Device 002: ID 0471:20cc Philips (or NXP)

is handled as a keyboard and a lot of the buttons just work, but the Red, Green, Yellow, Blye, and play, pause, stop etc. do nothing. I suppose this is not surpising, the same USB IR receiver must ship with many different remotes.

This is my summary....

The kernel handles the conversion of the infrared signal to data on /dev/input/eventN. The right protocol and table to use for commands is determined from the usb id and treats the device like a keyboard. A few of the buttons on my remote (most notably the Teletext Red etc.) are not recognised at this stage. The utility evtest can be used to see this.

It should be possible to use the program ir-keytable to change this behaviour, I even tried making a file with the necessary scancode/keycode pairs, but ir-keytable segfaults a lot, and I am not convinced it is doing what it should. The red, green, yellow, blue keys must be using a different protocol or IR Command table, because I don't see them even with evtest. I'd like to use ir-keytable to add the RC5 protocol, so that I can receive button presses from my old hauppauge remote too.
There should be a directory /sys/class/rc with one entry per remote, but this is not populated (perhaps because the remote is only treated as a keyboard, or perhaps because something is wrong in the kernel/udev interactions. I've not solved this one.

Minimyth prefers the solution that its own program eventlird takes input from /dev/input/eventN and passes it out on /var/run/lirc/lircd. It is not really part of lirc, it just looks like it so that other tools work with it. It maps from one KEY_ to another KEY_. The utility irw can be used to see what appears on /var/run/lirc/lircd. The idea of this architecture is that whatever remote you use on minimyth, a standard set of keys appear on the pipe.

All the mapping files live in /etc/eventlird.d, the one to use is chosen by udev rules based on the usb id. There was not a table for the usb id of my mce receiver, so eventlird did not take control of /dev/input/eventX event though ps aux showed it was loaded.

I created a file 03_0471_20cc.evmap, and made an entry in minimyth.conf to get it loaded. To do this I determined the input KEY_ codes to use by running evtest, and I determined the output KEY_ codes by looking at /etc/lirc/lircrc.d/mythtv/base.

So I have play, pause, stop etc. working, which is enough for now. I have no solution to get red, green, yellow, blue working. Or to be able to use my old RC5 remote with the same USB IR receiver... and the volume buttons don't auto-repeat.

The next step is to uprade the whole mythtv system from 0.24 to 0.26.

03_0471_20cc.evmap1.44 KB
Monday, 19th April 2021

A Deodar site terms