webCoRE for Hubitat Updates

I have the same issue with devices not showing when they are added to a piston and don't disappear when devices are removed

I have this same issue as well.

@nh.schottfam I saw this error in one of my piston logs. What is it?

large queue size 13 clearing

It means 13 events queued up for a piston

In a pm we should discuss the piston

I can change the value to be higher

1 Like

The problem was it kept calling itself. I think there's a bug with $args.

I first invoke it manually with $args.x set to true. Then, later, when it's invoked by a trigger, $args.x is still true. It should only be true when explicitly set when I use the execute piston action.

here is an example with the full piston...sorry for huge delay... any thoughts? Did you add new features that brings out this error as it seems new.
Thx
Tim

The warning is in regards to the nested trigger on the else statement.

In your case, you can ignore it (notice it says may), as you are using the same device for the original if, at statement #3 (which is not nested, so the tracking should be correct), so everything is ok for you.

Hi @nh.schottfam , as we spoke before about the Command Execution Delay and I got intrigued by it.

When I go there and put 100ms for example and I have an IF with 3 following actions:

IF X

THEN

With switch Y
turn On
turn Off

With switch Z
turn on
Turn off

With SWITCH A B C and D
Turn on

Where the delays are inserted in there? Does that happens also on the Action with multiple devices (between each device)? Is it a good practice of doing that on a Zigbee network or it doesn't make difference for the Zigbee mesh?

I think with logging on it should tell you about the delays.

It should be for that piston it insures command are always separated by at least that length of time.

In an ideal world it would not be need as the platform would handle sending command efficiently without overloading things, but I don't think HE provides that guarantee (as RM also has this delay capability)....

@nh.schottfam imported a old piston after i set up WC again and it works fine it seems but just noticed this in the logs.

any ideas

Is there a way to call a custom command for a device inside a piston? I created a 'Remove Hold' command, inside my Honeywell Thermostat device (which works as intended). However when trying to figure out how to trigger this in a WebCore piston, I have not been able to find anything. It would be nice to be able to bring in custom commands for devices, if it isn't available already.

If the device exposes the command in the metadata it should be available via webCoRE.

2 Likes

You are correct, the reason I didn't see this at first is because I usually set the devices as a variable at the top and include it in my code that way. I must use the device directly to expose the custom commands. Would be nice if this wasn't the case, but it'll work for now. Thank you.

I'm looking for a few testers for some new graphing capabilities in webcore.

If interested send me a PM.

My goal is to allow graphing for HE tiles of fuel stream or attribute data, Similar to what you may have seen with hubigraphs.

4 Likes

I have another technical question. Why when I poll a device from webCoRE does it not seem to poll the physical device, instead polling the device status(es) in Hubitat?

My scenario: I have a LIFX LED strip inside Hubitat, using the native app for it. When I use the 'Poll' button inside the device page, it Works as it should, getting the current brightness level, etc. I also have automatic polling set to 5 mins.
In webCoRE I have a motion piston that, before changing the brightness, polls the device (and checks the current brightness, among other things) using the built in 'poll' action. Doing this will NOT get the brightness from the device, instead it gets whatever brightness was polled up to 5 mins ago. Manually polling the device before running the piston works.

How can I ensure that the device gets polled, and I don't get the old device status from hubitat?

-Also, is this the proper place to ask these questions? I see others have in the past, and I haven't found anywhere else to do it.

Sounds like it is fetching the data prior to the poll completing, might try putting a 1-2 second pause.

1 Like

I assume you are issuing the 'poll' command? I assume you see the command being issued.

I agree with @thebearmay 's suggestion that after the poll wait a little bit as depending on the device it is unclear what it needs to do to complete the command. It sounds like the device issued the poll command but did not wait for the results to update before it returned from the poll command.

Right again! Adding even an 8 millisecond delay makes it function as expected. Thank you.
If it is set to run synchronously, why does it not wait for the 'poll' to get a response? Is there a better method of waiting on the 'poll' action to complete instead of using a 'wait x seconds' action? I would like the code to act as expeditiously as possible, but I'm sure the response times will change from time to time.

Just an FYI for those coming from SmartThings. Hubitat's webCoRE processes statements much faster than SmartThings so in certain situations you may have to add delays to your pistons to get them working properly.

2 Likes

Yeah, thanks a lot @nh.schottfam! lol :smiley: