Jump to content
WallDisplay: 2.0.0-beta3 is uploaded and ready for test ×

List of timers not available on Shelly 1 Mini Gen3


Recommended Posts

I would like to ask you to modify the documentation to make it less confusing with respect to the term "timer". This occurs in at least three different contexts, and it has taken me several hours (ahem) to figure out what's what. This is a negative utility which you could spare future users by clearer documentation.

I would also like to ask you to make currently active Timers (at the language level, see point 3 below) queryable by RPC.

The different contexts are:

  1. An auto-flipback timer after using RPC Switch.Set and a "toggle_after" parameter, eg  http://192.168.178.13/rpc/Switch.Set?id=0&on=true&toggle_after=30
    • The UI (web browser page at the switch's URL) shows an animation of the timer counting down
    • On querying the switch's status with Switch.GetStatus it refers to a timer:
      {
          "id":  0,
          "source":  "HTTP_in",
          "output":  true,
          "timer_started_at":  1718884929.69,
          "timer_duration":  30.00,
          "temperature":  {
                              "tC":  64.8,
                              "tF":  148.6
                          }
      }
  2. A timer set in the UI under Home \ Output(0) \ Automations \ Timers, eg an "Auto ON" timer of 45 seconds
    • Switch.GetConfig refers not to a timer but to "auto_on":
      {
          "id":  0,
          "name":  null,
          "in_mode":  "detached",
          "initial_state":  "restore_last",
          "auto_on":  true,
          "auto_on_delay":  45.00,
          "auto_off":  false,
          "auto_off_delay":  60.00
      }
    • While the timer is running (but only then), Switch.GetStatus shows a timer, as in case 1 above:
      {
          "id":  0,
          "source":  "WS_in",
          "output":  false,
          "timer_started_at":  1718887526.48,
          "timer_duration":  45.00,
          "temperature":  {
                              "tC":  66.1,
                              "tF":  151.0
                          }
      }
  3. The only mention of a timer in the documentation is actually a very different beast: the Timer "global object" mentioned under "Shelly Script Language Features" (eg "Timer.set()"). It does not seem to be possible to query the currently active Timers via RPC. While I think I understand how this arises in the implementation (as a "global object", it's at the language rather than the device level), it does not correspond to the otherwise very high standard of the system to have an important aspect of system behaviour (whether and which timers are currently operating) not queryable. There should be a Timers.List function available at language and RPC level to return the list of currently active timers (and the language engine should, if necessary, maintain this list internally based on Timer.set() and Timer.clear() operations).

 

With thanks and best regards,

James Denman

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...