House Off (I know I know)

Discussion in 'C-Touch/HomeGate/SchedulePlus/PICED Software' started by phcjpp, Mar 31, 2010.

  1. phcjpp

    phcjpp

    Joined:
    Oct 19, 2004
    Messages:
    112
    Likes Received:
    0
    Location:
    London
    Hi Guys,

    I know this has been discussed and I have searched the forums but I do want to confirm a couple of things.

    Right now I do a house off via a wiser macro (used to do in PAC). I have a HOUSEOFF group which I switch to 'ON' from a DLT which then triggers a macro in the wiser logic.

    This logic once completed switches the HOUSEOFF group to 'OFF'

    Now my question, in the macro, what is the best way to switch off my 150 groups. At the moment the 'virtual' ones (non dimmer logic groups) are switched off individually while I do a 'house' = off, 'garden' = off for the area codes for real dimmers that have areas of 'house' or 'garden'.

    Should all groups be turned off individually? If so, is there a way of looping over groups 1 to 150 numerically rather than typing in the full group name as I do now (some of my groups have long names !)? Finally should they all be ramped down rather than simply switched off ?

    Thanks
    Chris
     
    phcjpp, Mar 31, 2010
    #1
  2. phcjpp

    Darren Senior Member

    Joined:
    Jul 29, 2004
    Messages:
    2,361
    Likes Received:
    0
    Location:
    Adelaide, South Australia
    It is much, much better to just use a Scene. There is no need to use logic to switch off a series of groups.

    We no longer recommend the use of area addresses. You get a simpler solution using Scenes, and you avoid the few quirks of area addresses.
     
    Darren, Mar 31, 2010
    #2
  3. phcjpp

    ashleigh Moderator

    Joined:
    Aug 4, 2004
    Messages:
    2,397
    Likes Received:
    26
    Location:
    Adelaide, South Australia
    You could, equally validly, just do a loop over all the groups turning them all off.

    This will take a second or three, and you will turn off groups that don't exist (which has no consequence). Its also easy and rather foolproof.

    If you don't care about response time - which is pretty much normal for a "turn off everything and be damned" then this is a slow but very effective no brainer approach.
     
    ashleigh, Mar 31, 2010
    #3
  4. phcjpp

    phcjpp

    Joined:
    Oct 19, 2004
    Messages:
    112
    Likes Received:
    0
    Location:
    London
    Thanks for the reply.

    When you say a scene - 150 groups in a scene - is that possible - I thought it had space for 6 or so ?

    Finally if I do go for the massive loop - is there a way in code not to have to use the long group name ? Is there a group code instead (0 to 255)?

    sort of

    for i = 1 to 255
    setGroup(i,OFF)
    next i

    rather than

    setGroup("A1 - Landing Lights half way up",OFF)
    setGroup("A2 - Main stair lights",OFF)
    .... etc

    Ta
    Chris
     
    phcjpp, Mar 31, 2010
    #4
  5. phcjpp

    Darren Senior Member

    Joined:
    Jul 29, 2004
    Messages:
    2,361
    Likes Received:
    0
    Location:
    Adelaide, South Australia
    Wiser will handle 250 Scenes. The maximum capacity of a single Scene is 100 groups. You can either trigger 2 scenes, or have one Scene trigger the next.
    Code:
    for i := 1 to 255 do
      SetLightingState(i, OFF);
     
    Darren, Apr 1, 2010
    #5
  6. phcjpp

    phcjpp

    Joined:
    Oct 19, 2004
    Messages:
    112
    Likes Received:
    0
    Location:
    London
    Just tried that - worked a treat - takes about 3 seconds as suggested.

    Chris
     
    phcjpp, Apr 1, 2010
    #6
  7. phcjpp

    ashleigh Moderator

    Joined:
    Aug 4, 2004
    Messages:
    2,397
    Likes Received:
    26
    Location:
    Adelaide, South Australia
    Puts on cheesy Hollywood Style Russian Accent (cos it SOUNDS COOL):

    Cruuuuude but effective... no ?

    (Takes off Russian Accent)
     
    ashleigh, Apr 1, 2010
    #7
  8. phcjpp

    Darpa

    Joined:
    Apr 30, 2006
    Messages:
    426
    Likes Received:
    0
    Location:
    Australia
    No more playing with 230v for you Ashleigh! :p

    Sounds like you've had too many shocks.
     
    Darpa, Apr 1, 2010
    #8
  9. phcjpp

    ashleigh Moderator

    Joined:
    Aug 4, 2004
    Messages:
    2,397
    Likes Received:
    26
    Location:
    Adelaide, South Australia
    Iz true. Too much shocks iz not good. Make hair go like Albert Einstein. Iz mad scientist look. Good, no?
     
    ashleigh, Apr 2, 2010
    #9
  10. phcjpp

    Darpa

    Joined:
    Apr 30, 2006
    Messages:
    426
    Likes Received:
    0
    Location:
    Australia
    It's ok Ashleigh, here, just put on this nice warm padded jacket with the straps around it and you'll feel much better...
     
    Darpa, Apr 2, 2010
    #10
  11. phcjpp

    phcjpp

    Joined:
    Oct 19, 2004
    Messages:
    112
    Likes Received:
    0
    Location:
    London
    just discovered a side effect of setting 250 groups. It causes my comfort alarm cbus UCM module to malfunction and cause an alarm error (not every time but always immediately after a house off). Must be overloading it.

    Chris
     
    phcjpp, Apr 2, 2010
    #11
  12. phcjpp

    ashleigh Moderator

    Joined:
    Aug 4, 2004
    Messages:
    2,397
    Likes Received:
    26
    Location:
    Adelaide, South Australia
    Quite possibly. It may be that it can't receive all the information fast enough.

    I'm not sure exactly how to insert a delay - we'll have to await Mr Darren to give a suggestion there.
     
    ashleigh, Apr 3, 2010
    #12
  13. phcjpp

    Darren Senior Member

    Joined:
    Jul 29, 2004
    Messages:
    2,361
    Likes Received:
    0
    Location:
    Adelaide, South Australia
    Delays insode for loops don't work properly (must fix that some time :( )

    Best to do something like:

    Code:
    for i := 0 to 127 do
      SetLightingState(i, OFF);
    
    delay(5);
    
    for i := 128 to 255 do
      SetLightingState(i, OFF);
    You could break it into small sections if needed.

    Or you could create a few scenes and do it that way:

    Code:
    SetScene("All Off 1");
    
    delay(5);
    
    SetScene("All Off 2");
     
    Darren, Apr 3, 2010
    #13
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.