View Single Post
Copernicus's Avatar
Posts: 1,986 | Thanked: 7,698 times | Joined on Dec 2010 @ Dayton, Ohio
#759
Originally Posted by Cue View Post
I have the hardware part hopefully, a Raspberry Pi (Sony UK version) with more GPIO options. I was just wondering if it were just a case of using the --listen, --connect option on the appropriate LIRC daemon. I have no idea if those options are what I think they are but from the man page they seem to be what I need to make connecting Pierogi to my Raspberry Pi transparent.
Aha! Well, most likely you've got your Pi running a flavor of Linux. (At least, I haven't heard of any running a non-Linux OS.) Hmm.

Pierogi itself does not use the LIRC server. One of the reasons I created the app was that I don't agree with some of the fundamental design decisions of the LIRC daemon; in particular, it's mainly designed to receive IR data, not send it. (In fact, you don't need a daemon if all you are doing is sending data; there's no point in sitting and waiting to receive commands.) Anyway, Pierogi wants to talk directly to the device driver itself.

The easiest solution would be to create an intermediary, something which listens for commands over the (wifi) network, and translates those into timing values to switch the IR on and off. The LIRC daemon works, as you say, as exactly such an intermediary. Unfortunately, so far as I know, the LIRC daemon can only listen for the commands for a single keyset at a time. And those commands are passed as keywords, not as timing values.

You could also create your own intermediary. That's what I'd do, to set up a daemon that simply listened for timing values and passed them on to the IR device, without worrying about keysets. That'd make things a lot easier for Pierogi, anyway.

In either case, before you can set up either LIRC or Pierogi, you'd need to construct a device driver for your IR hardware. I've not actually done this myself before, but from what I understand it isn't too hard to do...
 

The Following 3 Users Say Thank You to Copernicus For This Useful Post: