For whatever reason, it looks like no one ever considered that the PLM may not ack an X10 command.  It is certainly odd that your PLM is failing to do so.  I will try and copy the "retry logic" that is present in Insteon commands.  That might give us the result we want.


On Mon, Mar 10, 2014 at 3:42 PM, George Clark <geomh@fenachrone.com> wrote:
Hi Kevin,

My mh.private.ini contains:

Insteon_PLM_xmit_delay = 1

George


On 03/10/2014 04:47 PM, Kevin Robert Keegan wrote:
George,

Does your ini file contain any value for 'Insteon_PLM_xmit_x10_delay'?

Kevin


On Thu, Mar 6, 2014 at 6:30 PM, George Clark <geomh@fenachrone.com> wrote:
Hi Kevin,

There might be an issue with the IP PLM code.  I've been running into
issues where mh stops transmitting to the PLM,  although it does seem to
still receive X10 and Insteon.  Trying to turn x10 or insteon devices
on/off is a NOP.   Restart of MH resolves the issue.  I don't have to
touch the PLM so I don't think it's a PLM lockup.    It seems to happen
after 3-4 days of reliable operation.

Once it's stopped, attempts to send seem to be ignored by mh.   I don't
have a capture showing an ignored insteon request, but they don't get
transmitted either.    Here I used the web interface to turn on an x10
device.

06/03/2014 09:10:40  [Insteon_PLM] x10 sending code: C1 as insteon msg: 2600
06/03/2014 09:10:40  [Insteon_PLM] x10 sending code: CJ as insteon msg: 2280
06/03/2014 09:11:00 : Saving object states ... done

Here is one instance where I think it started to go wrong:  It seems as
though there is a partial x10 send.   Comparing it to one sent later, it
looks like we never get the ACK.   And from that point on mh doesn't
send to the PLM.    Maybe we have an issue recovering from a lost ACK?

06/03/2014 08:30:00 : Saving object states ... done
06/03/2014 08:30:00  [Insteon_PLM] x10 sending code: C1 as insteon msg: 2600
06/03/2014 08:30:00  [Insteon_PLM] x10 sending code: CJ as insteon msg: 2280
06/03/2014 08:30:00  [Insteon_PLM] DEBUG2: Sending 2600 incurred delay
of 0.00 seconds
06/03/2014 08:30:00  [Insteon_PLM] DEBUG3: Sending  PLM raw data: 02632600
06/03/2014 08:30:00  [Insteon_PLM] DEBUG4:
         PLM Command: (0263) x10_send
         X10 Message: 2600
          X10 House Code: (2) C
           X10 Unit Code: (6) 1

06/03/2014 08:30:00  [Insteon_PLM] DEBUG3: Received PLM raw data: 02260006
06/03/2014 08:30:00  [Insteon_PLM] DEBUG3: Saving parsed data fragment:
02260006
06/03/2014 08:30:34  [Insteon_PLM] DEBUG3: Prepending prior data
fragment: 02260006
06/03/2014 08:30:34  [Insteon_PLM] DEBUG3: Received PLM raw data:
0226000602526100
06/03/2014 08:30:34  [Insteon_PLM] DEBUG4:
         PLM Command: (0252) x10_received
         X10 Message: 6100
          X10 House Code: (6) A
           X10 Unit Code: (1) 5

06/03/2014 08:30:34  [Insteon_PLM] DEBUG3: received x10 data: XA5
06/03/2014 08:30:34  X10: Unmatched incoming data=XA5
06/03/2014 08:30:35  [Insteon_PLM] DEBUG3: Received PLM raw data: 02526280
06/03/2014 08:30:35  [Insteon_PLM] DEBUG4:
         PLM Command: (0252) x10_received
         X10 Message: 6280
          X10 House Code: (6) A
             X10 Command: (2) On(J)

06/03/2014 08:30:35  [Insteon_PLM] DEBUG3: received x10 data: XAJ
Warning: Dummy_Interface #2: trying to set_receive motion
Warning: Dummy_Interface #2: trying to set_receive motion
06/03/2014 08:30:35  XA5AJ: mX10_dining_room motion



Here's one that worked:

10/02/2014 08:30:00  [Insteon_PLM] x10 sending code: C1 as insteon msg: 2600
10/02/2014 08:30:00  [Insteon_PLM] x10 sending code: CJ as insteon msg: 2280
10/02/2014 08:30:00  [Insteon_PLM] DEBUG2: Sending 2600 incurred delay
of 0.00 seconds
10/02/2014 08:30:00  [Insteon_PLM] DEBUG3: Sending  PLM raw data: 02632600
10/02/2014 08:30:00  [Insteon_PLM] DEBUG4:
         PLM Command: (0263) x10_send
         X10 Message: 2600
          X10 House Code: (2) C
           X10 Unit Code: (6) 1

===== This next line is missing when mh stops working=====

10/02/2014 08:30:00  [Insteon_PLM] DEBUG3: Received PLM raw data: 0263260006
10/02/2014 08:30:00  [Insteon_PLM] DEBUG4:
         PLM Command: (0263) x10_send
         X10 Message: 2600
          X10 House Code: (2) C
           X10 Unit Code: (6) 1
        PLM Response: (06) ACK

10/02/2014 08:30:00  [Insteon_PLM] DEBUG3: Received PLM acknowledge: 2600
10/02/2014 08:30:00  [Insteon_PLM] DEBUG2: Sending 2280 incurred delay
of 0.52 seconds
10/02/2014 08:30:00  [Insteon_PLM] DEBUG3: Sending  PLM raw data: 02632280
10/02/2014 08:30:00  [Insteon_PLM] DEBUG4:
         PLM Command: (0263) x10_send
         X10 Message: 2280
          X10 House Code: (2) C
             X10 Command: (2) On(J)

10/02/2014 08:30:00  [Insteon_PLM] DEBUG3: Received PLM raw data: 0263228006
10/02/2014 08:30:00  [Insteon_PLM] DEBUG4:
         PLM Command: (0263) x10_send
         X10 Message: 2280
          X10 House Code: (2) C
             X10 Command: (2) On(J)
        PLM Response: (06) ACK

10/02/2014 08:30:00  [Insteon_PLM] DEBUG3: Received PLM acknowledge: 2280