[DEPRECATED Thread: visit community.webcore.co for assistance] webCoRE - Piston Design Help (ask your fellow members for assistance)

What is the correct way to write NULL (do nothing) for the end of this statement?

Speak “{$dayOfWeek == 1 ? MondayMsg : ( $dayOfWeek == 2 ? TuesdayMsg : ( $dayOfWeek == 3 ? WednesdayMsg : ( $dayOfWeek == 4 ? ThursdayMsg : ( $dayOfWeek == 5 ? FridayMsg : NULL)) ) ) }”

I think I just used ‘’.

Thanks. Tried with an earlier versions and I got a syntax error, On the latest version no error though.

Yeah, @ady624 mentioned something about fixing it and I believe he did shortly after that.

@ady624, under location in webcore-- is “execute piston” the equivalent of “follow up with piston” in CoRE?

looking to have lights turn on and off using random waits from sunset to sunrise. In core, I used “follow up with same piston” after xx minutes.

thanks!

Works for me. I use this for my Away Lighting piston, so same purpose as you’re thinking about using it for …

1 Like

does anyone have any example pistons using the gardenspots and setting random colors?

[quote=“eric182, post:747, topic:86345, full:true”]
does anyone have any example pistons using the gardenspots and setting random colors?
[/quote]@ady624 had a great one in CoRE that, while not exactly random, changed with the holidays. If and when he converts it to webCoRE, maybe he’ll share?

Yeah I got one. Handles all my outside lights.

Switch 1 is an intrusion alert virtual switch set by SHM

3 Likes

I’m trying to discriminate upon MiniMote button push sequences, as simple as Push#1 followed in five seconds by a Push#2. The timing may not be reliable due to inherent ST limitations, but I could live with the occasional failure-to-fire.

The first problem I ran into was that the only actions available for a discrete button is gets pushed (or gets held). I was hoping for a pushed in the last 5 seconds. I’d set it to be triggered on a button push but conditioned on another button having been pushed within the previous 5 seconds.

I was able - in either a piston restriction or an IF restriction (example below) – to condition it on the number of buttons changed. Idea being that any button would then be the setup for the specific button trigger.

The logs below show what happens when I hit Button#3 then Button#4. When the piston evaluates the Button#4 push, it doesn’t recognize that another button had been pushed.

Usually, I overthink the logic. Is there a simpler way?


@ady624 i updated to the newest version and now my motion based pistons aren’t working. i haven’t changed anything.

piston is very basic and worked yesterday. no changes. when i look at the trace, it’s excutiing, but the lights don’t turn on

This piston says at the top that it does not Subscribe to any Events, and that it will never run on its own. But it has time triggers. Like do this every morning at 3:59 am. But it failed this morning, so clearly I have something wrong.

Logs gave me this. (It should have run at 3:59) The mode was Night, so it should have been just fine.

2017-5-19 06:59:59 +397ms
+565ms ║Piston execution aborted due to restrictions in effect
2017-5-19 03:57:59 +230ms
+338ms ║Piston execution aborted due to restrictions in effect
2017-5-18 03:57:59 +171ms
+414ms ║Piston execution aborted due to restrictions in effect

Thanks!

This one works every other time the piston gets activated…

This one works every time…
The only change is where the restriction is placed…

@ady624 @eibyer

FYI :: all of my Pistons that had an action of set level for a light stopped working. I had to go through them all and add turn on first then set level.

Happened after updates today.

The command optimization would interfere with that, yeah, because if the level is already there (you turned them off at that level) then the command is skipped. Disable command optimizations on the piston or add a turn on too.

Sorry guys, command optimizations are important, they protect your network from getting flooded with unnecessary commands…

4 Likes

I’ve got a rather large piston that appears to be stalling at a lengthy timer. That is, one of the execution commands runs a timer and nothing further along in the piston seems to want to run. Is that what the asynchronous command under the cog is for?

No need to apologize. Just glad I could fix it Without pulling my hair out.Keep up the great work.

Just following up. Can time not be used as the only trigger anymore? Is this new in WebCore? This piston worked great in Core.

Thanks

Just a shot in the dark here, but try moving your restriction from outside the if to the action. So instead of:

Only when x
Execute
If blah blah
Set mode

Try:
If time blah blah
Then
Only when X
Set mode

No idea if this will have any effect but I’ve had better luck with action restrictions than full statement restrictions when dealing with time triggers. You shouldn’t have that message about no triggers though, something doesn’t seem right about that.

1 Like