1) Give a description of the problem
I have two “synched” switches (either switch turning on turns the other on. either switch turning off turns the other off) and the piston works flawlessly about 99% of the time. The exceptions always involve flipping a switch and then flipping it again right away.
2) What is the expected behaviour?
I expect that whenever I flip one switch, the other will be set to the same setting (on or off). I would tolerate ignoring a second flip within a certain amount of time after a first flip.
3) What is happening/not happening?
Most times, it works as it should. The only times it doesn’t is when two flips occur within seconds of each other. In some cases the light physically attached to the switch turns off and then flips back on again.
5/10/2019, 10:07:54 AM +584ms
+2ms ╔Received event [Kitchen Sink/Stove Lights].switch = off with a delay of 531ms
+91ms ║RunTime Analysis CS > 18ms > PS > 49ms > PE > 24ms > CE
+94ms ║Runtime (40549 bytes) successfully initialized in 49ms (v0.3.10a.20190223) (92ms)
+95ms ║╔Execution stage started
+116ms ║║Comparison (enum) off changes_to (string) on = false (1ms)
+119ms ║║Condition #2 evaluated false (16ms)
+120ms ║║Condition group #1 evaluated false (state did not change) (18ms)
+135ms ║║Comparison (enum) off changes_to (string) off = true (0ms)
+137ms ║║Condition #6 evaluated true (13ms)
+138ms ║║Condition group #5 evaluated true (state did not change) (15ms)
+154ms ║║Comparison (enum) off is (string) on = false (2ms)
+157ms ║║Comparison (enum) off is (string) on = false (1ms)
+162ms ║║Cancelling condition #14's schedules...
+163ms ║║Condition #14 evaluated false (22ms)
+165ms ║║Cancelling condition #13's schedules...
+166ms ║║Condition group #13 evaluated false (state changed) (24ms)
+169ms ║║Cancelling statement #17's schedules...
+178ms ║║Calculating (string) Kitchen Sink/Stove Lights + (string) turned off >> (string) Kitchen Sink/Stove Lights turned off
+183ms ║║Kitchen Sink/Stove Lights turned off
+187ms ║║Executed virtual command log (4ms)
+190ms ║╚Execution stage complete. (95ms)
+191ms ╚Event processed successfully (191ms)
5/10/2019, 10:07:50 AM +440ms
+2ms ╔Received event [Kitchen Fan & Light].switch = off with a delay of 478ms
+102ms ║RunTime Analysis CS > 22ms > PS > 55ms > PE > 24ms > CE
+104ms ║Runtime (40514 bytes) successfully initialized in 55ms (v0.3.10a.20190223) (101ms)
+105ms ║╔Execution stage started
+125ms ║║Comparison (enum) off changes_to (string) on = false (1ms)
+127ms ║║Cancelling condition #2's schedules...
+128ms ║║Condition #2 evaluated false (17ms)
+130ms ║║Cancelling condition #1's schedules...
+131ms ║║Condition group #1 evaluated false (state changed) (19ms)
+145ms ║║Comparison (enum) off changes_to (string) off = true (1ms)
+147ms ║║Cancelling condition #6's schedules...
+148ms ║║Condition #6 evaluated true (14ms)
+150ms ║║Cancelling condition #5's schedules...
+151ms ║║Condition group #5 evaluated true (state changed) (16ms)
+166ms ║║Comparison (enum) on is (string) on = true (2ms)
+169ms ║║Comparison (enum) off is (string) on = false (2ms)
+174ms ║║Cancelling condition #14's schedules...
+175ms ║║Condition #14 evaluated true (21ms)
+177ms ║║Cancelling condition #13's schedules...
+178ms ║║Condition group #13 evaluated true (state changed) (25ms)
+181ms ║║Cancelling statement #7's schedules...
+199ms ║║Executed physical command [Kitchen Sink/Stove Lights].off() (15ms)
+201ms ║║Executed [Kitchen Sink/Stove Lights].off (17ms)
+205ms ║║Cancelling statement #17's schedules...
+213ms ║║Calculating (string) Kitchen Fan & Light + (string) turned off >> (string) Kitchen Fan & Light turned off
+218ms ║║Kitchen Fan & Light turned off
+222ms ║║Executed virtual command log (5ms)
+225ms ║╚Execution stage complete. (120ms)
+227ms ╚Event processed successfully (227ms)
5/10/2019, 10:07:45 AM +18ms
+1ms ╔Received event [Kitchen Fan & Light].switch = on with a delay of 466ms
+89ms ║RunTime Analysis CS > 18ms > PS > 50ms > PE > 22ms > CE
+92ms ║Runtime (40545 bytes) successfully initialized in 50ms (v0.3.10a.20190223) (89ms)
+93ms ║╔Execution stage started
+112ms ║║Comparison (enum) on changes_to (string) on = true (1ms)
+114ms ║║Condition #2 evaluated true (15ms)
+116ms ║║Condition group #1 evaluated true (state did not change) (17ms)
+132ms ║║Comparison (enum) on is (string) off = false (2ms)
+136ms ║║Comparison (enum) on is (string) off = false (1ms)
+141ms ║║Cancelling condition #12's schedules...
+142ms ║║Condition #12 evaluated false (23ms)
+144ms ║║Cancelling condition #11's schedules...
+145ms ║║Condition group #11 evaluated false (state changed) (27ms)
+149ms ║║Cancelling statement #15's schedules...
+157ms ║║Calculating (string) Kitchen Fan & Light + (string) turned on >> (string) Kitchen Fan & Light turned on
+162ms ║║Kitchen Fan & Light turned on
+166ms ║║Executed virtual command log (4ms)
+182ms ║║Comparison (enum) on changes_to (string) off = false (0ms)
+184ms ║║Condition #6 evaluated false (14ms)
+185ms ║║Condition group #5 evaluated false (state did not change) (15ms)
+188ms ║╚Execution stage complete. (96ms)
+189ms ╚Event processed successfully (189ms)
5/10/2019, 10:07:40 AM +976ms
+1ms ╔Received event [Kitchen Sink/Stove Lights].switch = on with a delay of 455ms
+70ms ║RunTime Analysis CS > 16ms > PS > 34ms > PE > 19ms > CE
+73ms ║Runtime (40515 bytes) successfully initialized in 34ms (v0.3.10a.20190223) (70ms)
+74ms ║╔Execution stage started
+92ms ║║Comparison (enum) on changes_to (string) on = true (1ms)
+95ms ║║Cancelling condition #2's schedules...
+96ms ║║Condition #2 evaluated true (15ms)
+97ms ║║Cancelling condition #1's schedules...
+98ms ║║Condition group #1 evaluated true (state changed) (19ms)
+115ms ║║Comparison (enum) on is (string) off = false (2ms)
+118ms ║║Comparison (enum) off is (string) off = true (2ms)
+123ms ║║Condition #12 evaluated true (21ms)
+124ms ║║Condition group #11 evaluated true (state did not change) (23ms)
+127ms ║║Cancelling statement #3's schedules...
+141ms ║║Executed physical command [Kitchen Fan & Light].on() (10ms)
+143ms ║║Executed [Kitchen Fan & Light].on (12ms)
+147ms ║║Cancelling statement #15's schedules...
+156ms ║║Calculating (string) Kitchen Sink/Stove Lights + (string) turned on >> (string) Kitchen Sink/Stove Lights turned on
+161ms ║║Kitchen Sink/Stove Lights turned on
+163ms ║║Executed virtual command log (3ms)
+179ms ║║Comparison (enum) on changes_to (string) off = false (0ms)
+181ms ║║Cancelling condition #6's schedules...
+182ms ║║Condition #6 evaluated false (15ms)
+184ms ║║Cancelling condition #5's schedules...
+185ms ║║Condition group #5 evaluated false (state changed) (17ms)
+188ms ║╚Execution stage complete. (114ms)
+189ms ╚Event processed successfully (189ms)
5/10/2019, 10:07:39 AM +54ms
+2ms ╔Received event [Kitchen Fan & Light].switch = off with a delay of 462ms
+98ms ║RunTime Analysis CS > 20ms > PS > 56ms > PE > 22ms > CE
+101ms ║Runtime (40546 bytes) successfully initialized in 56ms (v0.3.10a.20190223) (98ms)
+102ms ║╔Execution stage started
+122ms ║║Comparison (enum) off changes_to (string) on = false (1ms)
+124ms ║║Cancelling condition #2's schedules...
+125ms ║║Condition #2 evaluated false (17ms)
+127ms ║║Cancelling condition #1's schedules...
+128ms ║║Condition group #1 evaluated false (state changed) (20ms)
+145ms ║║Comparison (enum) off changes_to (string) off = true (1ms)
+148ms ║║Cancelling condition #6's schedules...
+149ms ║║Condition #6 evaluated true (17ms)
+150ms ║║Cancelling condition #5's schedules...
+151ms ║║Condition group #5 evaluated true (state changed) (20ms)
+168ms ║║Comparison (enum) off is (string) on = false (2ms)
+171ms ║║Comparison (enum) off is (string) on = false (2ms)
+177ms ║║Condition #14 evaluated false (22ms)
+178ms ║║Condition group #13 evaluated false (state did not change) (24ms)
+181ms ║║Cancelling statement #17's schedules...
+190ms ║║Calculating (string) Kitchen Fan & Light + (string) turned off >> (string) Kitchen Fan & Light turned off
+197ms ║║Kitchen Fan & Light turned off
+201ms ║║Executed virtual command log (4ms)
+205ms ║╚Execution stage complete. (103ms)
+206ms ╚Event processed successfully (206ms)
5/10/2019, 10:07:37 AM +9ms
+1ms ╔Received event [Kitchen Fan & Light].switch = on with a delay of 446ms
+93ms ║RunTime Analysis CS > 25ms > PS > 51ms > PE > 18ms > CE
+96ms ║Runtime (40511 bytes) successfully initialized in 51ms (v0.3.10a.20190223) (94ms)
+97ms ║╔Execution stage started
+116ms ║║Comparison (enum) on changes_to (string) on = true (1ms)
+118ms ║║Cancelling condition #2's schedules...
+119ms ║║Condition #2 evaluated true (16ms)
+121ms ║║Cancelling condition #1's schedules...
+122ms ║║Condition group #1 evaluated true (state changed) (19ms)
+138ms ║║Comparison (enum) off is (string) off = true (2ms)
+141ms ║║Comparison (enum) on is (string) off = false (2ms)
+146ms ║║Cancelling condition #12's schedules...
+148ms ║║Condition #12 evaluated true (22ms)
+149ms ║║Cancelling condition #11's schedules...
+150ms ║║Condition group #11 evaluated true (state changed) (25ms)
+153ms ║║Cancelling statement #3's schedules...
+170ms ║║Executed physical command [Kitchen Sink/Stove Lights].on() (13ms)
+171ms ║║Executed [Kitchen Sink/Stove Lights].on (15ms)
+176ms ║║Cancelling statement #15's schedules...
+185ms ║║Calculating (string) Kitchen Fan & Light + (string) turned on >> (string) Kitchen Fan & Light turned on
+189ms ║║Kitchen Fan & Light turned on
+193ms ║║Executed virtual command log (4ms)
+208ms ║║Comparison (enum) on changes_to (string) off = false (0ms)
+210ms ║║Cancelling condition #6's schedules...
+211ms ║║Condition #6 evaluated false (14ms)
+213ms ║║Cancelling condition #5's schedules...
+214ms ║║Condition group #5 evaluated false (state changed) (17ms)
+217ms ║╚Execution stage complete. (120ms)
+219ms ╚Event processed successfully (218ms)