Notice: This forum has been recovered from an old backup, so some content, links, and dates may be outdated. The forum is currently read-only while we restore sign-in and registration functionality. Details

If you find this forum valuable and would like to help keep it online, donations to help cover hosting and domain costs are greatly appreciated, but never expected. You can support the forum through Buy Me a Coffee or Ko-fi. Thank you for helping preserve the EventGhost community.

LIRC Client

Questions and comments specific to a particular plugin should go here.
radengr
Posts: 18
Joined: Sat Sep 17, 2011 6:31 am

Re: LIRC Client

Post by radengr »

I have lirc 0.9.0 running on a Pogoplug (/w the newest Archlinuxarm installed). It seems to be working great with a MCE ir receiver and blaster.

However, the lirc client plugin for EventGhost didn't like my lirc server at all.

After a little digging it turns out that I was seeing the same problem @cstrutton mentioned below, namely, certain responses were being split into multiple events. In my base the "BEGIN" tag was always being received separately from the rest of the lirc message. That is, I would get "BEGIN", which would issue an malformed response message from the plugin, and then "LIST", "SUCCESS", ..., "END" which would also issue a malformed response message. This is very consistent with my lirc server, it happened every time.

So I made some slight changes to the plugin. Basically if I get just a "BEGIN" tag in a message I stick that begin on the start of the next buffer. A somewhat ugly and (very) simple hack but it works for me. It could be extended if you have a server that splits at other consistent points.

I see one other issue with the plugin that I am not going to fix right now. When I go to send a code it looks like this:

SEND_ONCE sharp 00000000000043aa NAV_UP

The "00000000000043aa" is my IR code and it shouldn't be there. Basically the IR code is appended to the front of all my "Actions". I just remove that from the "Event String" before saving the IR send event. I can receive events fine so this is a minor inconvenience.

Hope this helps someone else.
Attachments
__init__.py
lirc client plugin
(32.04 KiB) Downloaded 503 times
juanson
Posts: 10
Joined: Tue Dec 11, 2012 3:11 am

Re: LIRC Client

Post by juanson »

THANKS!!!!!!!
It seems to solved the problem!!!
wawa79
Posts: 25
Joined: Fri Nov 02, 2012 11:01 pm

Re: LIRC Client

Post by wawa79 »

Hello,
I am using the LIRC plugin to receive IR from one single IRTrans USB device and dispatch it to 2 computers both running Eg:
- PC1 with the USB device attached has its Lirc plugin configured to listen to Lirc server on localhost
- PC2 has its Lirc plugin configured to listen to Lirc server on PC1
This is working perfect except that time to time, PC1 looses connectivity (on standby, during reboot or network issue)

When this happens, Lirc plugin on PC1 reports:
"21:06:20 LIRC Client: Disconnected from the LIRC server!"
and then
"21:06:51 LIRC Client: Auto-connected successfully after 1 attempts"
which is perfect and as expected :D

But in the meantime, PC2 does not "see" that it has lost connection to the Lirc server on PC1 (no notification in Eg Log) and therefore does not try reconnecting. As a result, PC2 stops handling IR. :(
Deactivating/reactivating the plugin manually in Eg triggers the reconnection process and restores connection to Lirc server.

Could there be any fix to the plugin to make it detect connectivity loss of the remote Lirc server?

Thank you in advance,

Wawa
wawa79
Posts: 25
Joined: Fri Nov 02, 2012 11:01 pm

Re: LIRC Client

Post by wawa79 »

Hello,

This is the endless looping errors I get when Eg starts with Lirc plugin configured to listen to a remote computer which is offline.

17:25:14 LIRC Client: Disconnected from the LIRC server!
17:25:14 LIRC Client: Disconnected from the LIRC server!
17:25:20 LIRC Client: Disconnected from the LIRC server!
17:25:25 Exception in thread Thread-83:
17:25:25 Traceback (most recent call last):
17:25:25 File "threading.pyc", line 532, in __bootstrap_inner
17:25:25 File "threading.pyc", line 736, in run
17:25:25 File "D:\Bin\EventGhost\plugins\Lirc\__init__.py", line 503, in Reconnect
17:25:25 if self.CheckConnection():
17:25:25 File "D:\Bin\EventGhost\plugins\Lirc\__init__.py", line 478, in CheckConnection
17:25:25 asyncore.poll()
17:25:25 File "asyncore.pyc", line 132, in poll
17:25:25 error: (10038, 'Une op\xe9ration a \xe9t\xe9 tent\xe9e sur autre chose qu\x92un socket')
17:25:25
17:25:26 LIRC Client: Disconnected from the LIRC server!
17:25:31 LIRC Client: Disconnected from the LIRC server!
17:25:35 LIRC Client: Disconnected from the LIRC server!
17:25:37 LIRC Client: Disconnected from the LIRC server!


I am trying to handle smoothly disconnection / reconnection to remote computer as it is currently crashing Eg.

Thank you in advance for your help!
Post Reply