Piston calling another piston when running a Logitech Harmony Activity


#1

1) Give a description of the problem
When in turn an Harmony activity, a piston should run

2) What is the expected behaviour?
When the activity starts, the piston doesn’t run.

3) What is happening/not happening?
The piston doesn’t run as expected.

**4) Post a Green Snapshot of the piston!!

5) Attach logs after turning logging level to Full

9/30/2020, 8:11:24 PM +767ms
+1ms	╔Starting piston... (v0.3.110.20191009)
+97ms	║╔Subscribing to devices...
+104ms	║║Subscribing to Watch TV [Harmony Activity].switch...
+154ms	║╚Finished subscribing (67ms)
+200ms	║Comparison (time) 72684941 is_after (time) 1601506320000 = true (7ms)
+202ms	║Time restriction check passed
+217ms	╚Piston successfully started (217ms)

#2

This piston will only run when Switch 10’s switch changes.
(notice the lightning bolt in the left margin)


#3

Yes that’s what i want. Turn the activity on and run the other piston. I do turn the activity on but the called piston is not running.


#4

What I mean is, something has to turn on Switch 10 before this piston will run…

What are you using to turn on Switch 10?


Side Note:

99% of devices do not recognize a difference between programmatic and physical interactions.
(the general recommendation (for line 20) is to use the default, ANY interaction)


#5

I use my Hamony remote.


#6

Can you please post a Full log showing Switch 10 turning on please?


#7

Trying tonight. I run the activity (switch 10 changes to on) but nothing is logging.

edit: if i change condition #3 from a trigger to a condition ie.: replace the “changes to” to “is” then the piston is called.

Not what i’m after.


#8

IF Switch 10 changes to on
is a trigger, and will execute the piston anytime that switch turns on or off

IF Switch 10 programmatically changes to on
is a trigger, but not reported by 99% of devices

As mentioned before, my advice is to go with the first example (the default)


#9

Sorry, forgot to mention I switched it back to any interaction before I tried again.

I get that the the switch changes to on, it should start the piston which would call the other piston. But I do it change it to with the remote but nothing is registering, nothing is logged.


#10

Hmmm… Are you 100% certain that it started out OFF, and then turned ON?
(IE: going from ON to ON will not trigger the piston)


Maybe post the current piston so I can see if anything stands out?


#11

I wrote a new piston from scratch. same issue.

I do turn the activity off using the remote just to make sure Harmony keeps track on the state.

Nothing gets logged either if I go thru google home.

Couple times the piston started with some delay… 3-5 minutes range. trying to replicate to have some log to show. unsuccessful so far.


#12

That piston looks OK, although it won’t work after midnight, and the TCP does nothing here.


Just to clarify…

Everything I have said in this thread is referring to a (real or simulated) switch turning on or off …
I am not referring to Harmony’s “Activity” turning on or off…


#13

Unsure how this happened… but it started.

+1ms ╔Received event [Watch TV [Harmony Activity]].switch = on with a delay of 50ms
+31ms ║RunTime Analysis CS > 17ms > PS > 4ms > PE > 10ms > CE
+33ms ║Runtime (37319 bytes) successfully initialized in 4ms (v0.3.110.20191009) (31ms)
+34ms ║╔Execution stage started
+41ms ║║Comparison (enum) on changes_to (string) on = true (1ms)
+42ms ║║Cancelling condition #2’s schedules…
+43ms ║║Condition #2 evaluated true (5ms)
+64ms ║║Comparison (time) 76853490 is_after (time) 1601592600000 = true (5ms)
+65ms ║║Time restriction check passed
+66ms ║║Condition #5 evaluated true (22ms)
+67ms ║║Cancelling condition #1’s schedules…
+67ms ║║Condition group #1 evaluated true (state changed) (29ms)
+69ms ║║Cancelling statement #3’s schedules…
+80ms ║║Executed virtual command executePiston (7ms)
+83ms ║╚Execution stage complete. (48ms)
+83ms ╚Event processed successfully (83ms)
`indent preformatted text by 4 spaces`

#14

Sweet…

The only thing I would double check is to make sure the outside logic turns that switch back off at the right time. (to prepare it for the next trigger)


#15

Thanks for the patience. looks like a bit more time was required for the piston to register the switch was off, about 5 minutes to show up on the log. Once registered off, it works as intended when turning the activity on.


#16

I love the capabilities of the Harmony hub, but I agree, the speed leaves much to be desired…