From: Sean Y. <se...@me...> - 2025-06-08 20:20:20
|
On Sun, Jun 08, 2025 at 10:41:52AM -0400, Paul Fox wrote: > sean wrote: > > On Sun, Jun 08, 2025 at 06:56:39AM -0400, Paul Fox wrote: > > > sean wrote: > > > > On Sat, May 31, 2025 at 06:51:00PM -0400, Paul Fox wrote: > > > > > patrick wrote: > > > > > > I cobbled together this command on the RPi, hoping it would send the IR > > > > > > signals to the MythTV computer in the same way the HDHR did but it doesn't > > > > > > seem to be working. I'm running irw on the 192.168.1.2 computer but it's > > > > > > not receiving any signals. > > > > > > > > > > > > /usr/bin/mode2 -d /dev/lirc0 | irtext2udp | socat - > > > > > > udp-datagram:[1]192.168.1.2:5000,broadcast > > > > > > > > > > > > I'm hoping someone else has done this or has experience with it and could > > > > > > offer me some assistance please. > > > > > > > > > > Unless something has changed recently (and I doubt it), irtext2udp > > > > > is broken, because it matches the documentation of the UDP protocol, which > > > > > is also broken. I submitted patches for these issues in March 2022: > > > > > https://sourceforge.net/p/lirc/tickets/370/ > > > > > I also sent mail to the (this) list about it at the same time -- I'm sure > > > > > it's in the archives. So that's probably at least part of your problem. > > > > > > > > I've applied a fix. I think it's easier to simply fix plugins/udp.c rather > > > > than making everything compatible with something that is clearly a bug. > > > > > > > > > > No, I don't think you can do that. You're changing an existing > > > protocol. There is code out in the wild that's decades old at this > > > point, which depends on the current behavior. (I know, I wrote some: > > > https://sourceforge.net/projects/airboard-ir/ ) > > > > > > If your patch were the right thing, I would have submitted it initially. > > > > > > As it stands now, as soon as a new release a lirc makes it's way to > > > debian, half the devices in my house, and likely other peoples', will > > > stop working. > > > > The lirc source tree contains two implementations of the udp protocol, one > > uses high bit set for pulse, the other space. The documentation says high > > bit set for pulse, and this also makes more sense. One or the other has to > > fixed. > > Can you point me at the other implementation? I didn't know there > were two. Sigh. So the udp protocol is implemented by irtext2udp and plugins/udp.c. It is also documented in various places, which is pretty unambiguous that a set bit means pulse. If we fix irtext2udp, that breaks the users of irtext2udp, however that might be. If we fix plugins/udp.c, then that breaks those users. Either way you're breaking something for someone. Might as well do the right think and implement the protocol as it is documented. Sean |