From: Alexander P. <ao...@ya...> - 2008-06-05 18:45:19
|
Hi, Daniel, Sure there will be joy in mudville :-) From the debug info I see that you have exactly the same imon model as I; so it should work. The fact that it correctly detects the device and creates nodes under /dev, already indicates that at least half of the driver works. There are a few things that might help you: 1. there is a bug in my driver that prevents you from stopping LIRC daemon; so if you're testing, better remove lircd.sh from /usr/local/etc/rc.d and reboot. 2. The driver is not reentrant, i.e. if one client, say LIRCd opens /dev/lirc0, then running my test script ir_test.pl will simply fail. I suggest to start with small - just install the driver (that you already did), then, without starting LIRCd or LCDProc, run lcd_test.pl to test VFD. This script alone should print text into the display. If not, look what the driver has printed into the console: there are a lot of debugging information, and you should see /dev/lcd0 being open, and then text written to it. The same holds for ir_test.pl. What it does is simply opens /dev/lirc0 and then waits for user input. Do not press enter, but rather start pressing buttons on your remote. You should see button codes coming from the driver into the console. Let me know how it goes, I am sure we can get it working. Regards, Alexander. ----- Original Message ---- From: Daniel Rich <dr...@em...> To: Alexander Popov <ao...@ya...> Cc: lir...@li... Sent: Thursday, June 5, 2008 3:37:36 AM Subject: Re: LIRC on FreeBSD with a USB imon No joy in mudville. If I don't load the driver I can still see data coming from the ugen interface, but I don't get anything from /dev/lirc0 with the driver loaded using the test code or the patched lircd. It does see the device, and it created /dev/lirc0 and /dev/lcd0. Any thoughts on debugging? Here is what I see from the driver with debug enabled on boot: imon: USB_MATCH() - enter imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: checking idVendor = 0x463, idProduct = 0xffff imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: checking idVendor = 0x7b8, idProduct = 0xb02a imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: checking idVendor = 0x46d, idProduct = 0xc505 imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: checking idVendor = 0x46d, idProduct = 0xc505 imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: USB_MATCH() - exit: 6 imon: USB_MATCH() - enter imon: checking idVendor = 0x15c2, idProduct = 0xffdc imon: found a match, idVendor = 0x15c2, idProduct = 0xffdc imon: USB_MATCH() - exit: ffffffec imon: USB_MATCH() - enter imon: checking idVendor = 0x15c2, idProduct = 0xffdc imon: found a match, idVendor = 0x15c2, idProduct = 0xffdc imon: USB_MATCH() - exit: ffffffec imon0: <vendor 0x15c2 product 0xffdc, class 0/0, rev 1.10/0.00, addr 3> on uhub0 imon: USB_ATTACH(device: imon0) - enter imon: device supports 1 interfaces imon: device supports 2 endpoints imon: filter(): found endpoint nr 0 imon: filter(): using endpoint 0 (addr: 0x81) for IR output imon: filter(): found endpoint nr 1 imon: filter(): using endpoint 1 (addr: 0x2) for VFD input imon: VFD requires 6th packet: 1 imon: IR signals decoded onboard: 1 imon: successfully created device node for IR imon: successfully created device node for VFD imon: USB_ATTACH() - exit: 0 And from usbdevs -v: Controller /dev/usb0: addr 1: full speed, self powered, config 1, OHCI root hub(0x0000), nVidia(0x0000), rev 1.00 port 1 powered port 2 powered port 3 addr 2: low speed, power 98 mA, config 1, USB Receiver(0xc505), Logitech(0x046d), rev 17.00 port 4 powered port 5 powered port 6 addr 3: low speed, power 100 mA, config 1, product 0xffdc(0xffdc), vendor 0x15c2(0x15c2), rev 0.00 port 7 powered port 8 powered Controller /dev/usb1: addr 1: high speed, self powered, config 1, EHCI root hub(0x0000), nVidia(0x0000), rev 1.00 port 1 powered port 2 addr 2: high speed, self powered, config 1, USB2.0 Hub(0x0606), vendor 0x05e3(0x05e3), rev 7.02 port 1 addr 3: low speed, power 20 mA, config 1, ellipse(0xffff), MGE UPS SYSTEMS(0x0463), rev 0.01 port 2 addr 4: full speed, self powered, config 1, Standard USB Hub(0x3301), vendor 0x03eb(0x03eb), rev 3.00 port 1 addr 5: full speed, power 100 mA, config 1, USB-Serial Controller(0x2303), Prolific Technology Inc.(0x067b), rev 3.00 port 2 addr 6: full speed, power 100 mA, config 1, USB-Serial Controller(0x2303), Prolific Technology Inc.(0x067b), rev 3.00 port 3 addr 7: full speed, power 100 mA, config 1, USB-Serial Controller(0x2303), Prolific Technology Inc.(0x067b), rev 3.00 port 4 addr 8: full speed, power 100 mA, config 1, USB-Serial Controller(0x2303), Prolific Technology Inc.(0x067b), rev 3.00 port 3 powered port 4 addr 9: full speed, power 86 mA, config 1, Bluetooth USB Adapter(0xb02a), vendor 0x07b8(0x07b8), rev 5.25 port 3 powered port 4 powered port 5 powered port 6 powered port 7 powered port 8 powered Daniel Rich wrote: > Woo hoo!!! I'll pull this down and give it at try tonight. I need to > pull the server down for a bit anyway, I just got the SPDIF interface > for my motherboard, I want to see if that plays better with my stereo > as well. > > Thanks, and I'll let you know how it goes. > > Alexander Popov wrote: >> Hi, Daniel, All, >> >> I have published the very first version of the IMON driver for >> FreeBSD. You can find it here: >> http://www.xs4all.nl/~aopopov/imon/imon.html >> Please note that this is still work in progress; I would definitely >> appreciate any help in testing & feedback. >> >> Regards, >> >> Alexander. >> >> ----- Original Message ---- >> From: Daniel Rich <dr...@em...> >> To: alexx8 <ao...@ya...> >> Cc: lir...@li... >> Sent: Wednesday, May 21, 2008 8:27:04 PM >> Subject: Re: LIRC on FreeBSD with a USB imon >> >> Wow, that's great news! I had been considering looking at porting >> the driver over, but since I haven't done any driver work in >> something like 20 years (and that was System V/386 streams drivers), >> I was hoping that someone else had beat me to it. :) >> >> If you need someone to do more testing once you have it stable, let >> me know. I'm not going to have any time to play with it until after >> the first of June, but I would love to give it a try after that. >> >> Thanks again for the reply. >> >> alexx8 wrote: >>> Hi, Dan, >>> >>> It's not that easy. ugen is just an universal USB driver that gets attached >>> to a device if no better matching driver is found. Getting imon to work with >>> ugen would be quite some effort... >>> Anyway, I have been developing (porting) linux imon driver to FreeBSD in my >>> spare time (not much unfortunately), and I am going to publish it in the >>> coming weeks. But you can already see how it looks like on my Silversone >>> case running FreeBSD 7.0: http://www.xs4all.nl/~aopopov/imon/imon.html >>> >>> Regards, >>> >>> Alex. >>> >>> >>> Dan Rich wrote: >>> >>>> I've decided to take another stab at getting my imon IR interface >>>> working on my FreeBSD server. Unfortunately, it looks like there aren't >>>> any kernel-level drivers for the imon (or any other lirc interfaces), >>>> however it does show up as /dev/ugen1.1. I can cat the device and I see >>>> data being received. For example running od -x against /dev/ugen1, I >>>> normally see "ffff ffff ffff ff2e", and when I press the mute key on the >>>> remote I see "952b b795 0000 012e". This seems to be close to what I >>>> would expect from the imon lirc.conf file I am trying to use, the >>>> imon_pad mute should send 0x2b9595b7. However, lircd doesn't seem to >>>> like this, the log file contains: lircd: Really read 2 bytes from >>>> '/dev/ugen1.1', expected 3 >>>> >>>> Does anyone have any suggestions on where I can go from here? Are the >>>> special flags I need to convince lircd that it is connected to a usb >>>> serial device? Am I out of luck unless I break down >>>> and write a device >>>> drive (ick)? >>>> >>>> Thanks! >>>> >>>> -- Dan Rich <dr...@em...> | http://www.employees.org/~drich/ | "Step up to red alert!" "Are you sure, sir? | It means changing the bulb in the sign..." | - Red Dwarf (BBC) |