Date: Mon, 9 Sep 2013 09:04:39 +0200 From: Milan Obuch <freebsd-multimedia@dino.sk> To: Juergen Lock <nox@jelal.kn-bremen.de> Cc: freebsd-multimedia@freebsd.org Subject: Re: ITE Technologies, Inc. DVB-T TV Stick, part 2 - remote Message-ID: <20130909090439.6fe4869c@zeta.dino.sk> In-Reply-To: <201309081945.r88Jj9JW076848@triton8.kn-bremen.de> References: <20130829214227.3a6b88ab@zeta.dino.sk> <52204121.90301@bitfrost.no> <201309081945.r88Jj9JW076848@triton8.kn-bremen.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 8 Sep 2013 21:45:09 +0200 (CEST) Juergen Lock <nox@jelal.kn-bremen.de> wrote: > In article <20130830144218.0003446a@zeta.dino.sk> you write: > >On Fri, 30 Aug 2013 08:52:17 +0200 > >Hans Petter Selasky <hps@bitfrost.no> wrote: > > > >> On 08/29/13 21:42, Milan Obuch wrote: > >> > Hi, > >> > > >> > as now I can watch TV with my LV52T stick, I would like to find > >> > how to use remote controller. I think this part of stick presents > >> > itself as USB HID device, /dev/uhid0 gets created on attachment. > >> > > >> > As a blind shot I tried > >> > > >> > >> Hi, > >> > >> Usually webcamd will grab the remote part too. Have a look at > >> lircd. > > See if you get a /dev/input/eventX device node, if yes you can test > the remote with: > > ir-keytable -d /dev/input/event0 -t > > (or whatever one you get; ir-keytable belongs to > multimedia/v4l-utils.) If it works you can setup lirc, see it's > pkg-message. > When should /dev/input/event0 get created? I see no such file on my system. When I put LV52T stick in, /dev/ugen4.3 and /dev/uhid0 are created (the former is a symlink for /dev/usb/4.3.0), along with /dev/usb/4.3.[0-5] files. When I kldload cuse4bsd, /dev/cuse gets created. When webcamd is running, six moew devices are created, /dev/dvb/adapter0/demux0 /dev/dvb/adapter0/dvr0 /dev/dvb/adapter0/frontend0 /dev/dvb/adapter1/demux0 /dev/dvb/adapter1/dvr0 /dev/dvb/adapter1/frontend0 Looking at comms/lirc, it seems like it expects /dev/input/event0 already existing, so maybe webcamd should create it? If that's true, then I need webcamd somehow patched... > >> Not sure if it supports /dev/uhidX . You could also try uhidd. > >> I installed sysutils/uhidd. Now I tried some dump: uhidd -D /dev/ugen4.3 ugen4.3[1]-> Report descriptor dump: USAGE PAGE Generic Desktop(0x1) USAGE Keyboard(0x6)[Generic Desktop(0x1)] COLLECTION Application(1) USAGE PAGE Keyboard(0x7) USAGE MINIMUM Keyboard LeftControl(224) USAGE MAXIMUM Keyboard Right GUI(231) LOGICAL MINIMUM 0 LOGICAL MAXIMUM 1 REPORT COUNT 8 REPORT SIZE 1 INPUT ( Data Variable Absolute ) (2) REPORT COUNT 8 REPORT SIZE 1 INPUT ( Const Array Absolute ) (1) USAGE PAGE LEDs(0x8) USAGE MINIMUM Num Lock(1) USAGE MAXIMUM Scroll Lock(3) REPORT COUNT 3 REPORT SIZE 1 OUTPUT ( Data Variable Absolute ) (2) REPORT COUNT 1 REPORT SIZE 5 OUTPUT ( Const Array Absolute ) (1) USAGE PAGE Keyboard(0x7) USAGE MINIMUM Reserved (no event indicated)(0) USAGE MAXIMUM Unknown Usage(255) LOGICAL MINIMUM 0 LOGICAL MAXIMUM 255 REPORT COUNT 6 REPORT SIZE 8 INPUT ( Data Array Absolute ) (0) END COLLECTION ugen4.3[1]-> Kernel driver is active ugen4.3[1]-> Abort attach since kernel driver is active ugen4.3[1]-> Please try running uhidd with option '-u' to detach the kernel drivers Adding -u to flags: uhidd -D -u /dev/ugen4.3 ugen4.3[1]-> Report descriptor dump: USAGE PAGE Generic Desktop(0x1) USAGE Keyboard(0x6)[Generic Desktop(0x1)] COLLECTION Application(1) USAGE PAGE Keyboard(0x7) USAGE MINIMUM Keyboard LeftControl(224) USAGE MAXIMUM Keyboard Right GUI(231) LOGICAL MINIMUM 0 LOGICAL MAXIMUM 1 REPORT COUNT 8 REPORT SIZE 1 INPUT ( Data Variable Absolute ) (2) REPORT COUNT 8 REPORT SIZE 1 INPUT ( Const Array Absolute ) (1) USAGE PAGE LEDs(0x8) USAGE MINIMUM Num Lock(1) USAGE MAXIMUM Scroll Lock(3) REPORT COUNT 3 REPORT SIZE 1 OUTPUT ( Data Variable Absolute ) (2) REPORT COUNT 1 REPORT SIZE 5 OUTPUT ( Const Array Absolute ) (1) USAGE PAGE Keyboard(0x7) USAGE MINIMUM Reserved (no event indicated)(0) USAGE MAXIMUM Unknown Usage(255) LOGICAL MINIMUM 0 LOGICAL MAXIMUM 255 REPORT COUNT 6 REPORT SIZE 8 INPUT ( Data Array Absolute ) (0) END COLLECTION ugen4.3[1]-> Kernel driver is active ugen4.3[1]-> kernel driver detached! This looks a bit promising, however usbhidd needs a config file to know how keys should be handled... > I think I played once with an uhid remote and couldn't get repeat > to work at least with lirc... (I then patched the vdr remote plugin > for this as vdr handles repeat differently.) > > >> dd if=/dev/uhidX bs=1 > >> > >> --HPS > >> > > > >I tried dd but nothing happened. Still > > > >0+0 records in > >0+0 records out > >0 bytes transferred > > > >when I press ^T, no matter how many times I press buttons on remote. > > > Well then the driver probably didn't setup the uhid part and expects > you to use /dev/input instead... At least I see af9035_rc_query as > well as it913x_rc_query in > > work/webcamd-3.11.0.2/media_tree/drivers/media/usb/dvb-usb-v2/af9035.c > > and > > work/webcamd-3.11.0.2/media_tree/drivers/media/usb/dvb-usb-v2/it913x.c > > respectively (not quite sure which one your tuner uses, you could > build webcamd with the DEBUG knob enabled and look at the log when > starting it manually to find out, and while you're at it also look > for logs containing "ir_mode=" and "ir_type=" if its af9035.) > > >I think there is something missing or I do not understand it > >completely, or both :) > > > ..or the Linux code doesn't support your tuner's remote or (kinda > less likely) there's still code missing in webcamd. > Well, I thing I need somehow analyze USB related part of the game unless I find the way to use uhidd... I can try to run usbdump, get some info from usbconfig, but presently that's possibly all I can do. Milan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130909090439.6fe4869c>