Aansturing ZAIX12

Alles m.b.t. de Homeseer Xanura PMIX35, CTX15, CTX35 HS3 Plugin van sddroog (Dutch Forum)

Moderator: stefxx

Post Reply
Bastiaan
Senior Member
Senior Member
Posts: 1257
Joined: Sat May 24, 2008 11:36 am
Location: Netherlands
Contact:

Aansturing ZAIX12

Post by Bastiaan »

Bij het aanpassen van mijn scripts naar HS3 loop ik toch tegen vreemde dingen op:

Mijn ZAIX12 stuurt mijn dak bediening aan. Wanneer ik die bedien via de device page kan ik met de slider een waarde zetten en gaat het dak naar zijn positie.
Doe ik dit met het commando &hs.SetDeviceValueByRef(10, 25, true) dan beweegt er niets. Echter in de advanced tab van het device kan ik zien dat de waarde keurig naar 25 is gegaan.
Ook als ik het dak dan aanstuur via de device control, krijg ik exact hetzelfde plaatje in het advanced overzicht.
Stuur ik het aan via een event aktie naar de plugin werkt het ook goed. Ik zou dus voor allemaal stapjes events kunnen aanmaken en die weer met het script kunnen triggeren maar dat is niet de mooiste manier.
Bij HS2 moest ik ook al een andere weg bewandelen door het commando i = hs.ExecX10 ("D10","Extended", rPos, 1) te gebruiken wat nooit ergens anders nodig was.
Iemand een idee wat ik verder kan proberen in HS3 scripting?
stefxx
Advanced Member
Advanced Member
Posts: 679
Joined: Fri Sep 12, 2008 2:26 pm
Location: Netherlands

Re: Aansturing ZAIX12

Post by stefxx »

Ja, dit zijn de betere vragen... want in eerdere versies van HS3 kon je inderdaad gewoon het device value zetten maar dat werkt nu dus niet meer. Het is in ieder geval niet voldoende om de plugin te "triggeren". Je zult met CapiControl aan de slag moeten. Zie hier voor enkele goede voorbeelden: board.homeseer.com/showpost.php?p=10727 ... ostcount=1

Praktisch voorbeeld in jouw geval hoe je een A10 device on, off of dim 10% kan zetten:

Code: Select all

Sub Main(parms As Object)
  CallCAPI(3, "on")
  CallCAPI(3, "off")
  CallCAPI(3, "dim 10%")
End Sub

Function CallCAPI(ByVal intDevRef As Integer, ByVal strDevCmd As String) As CAPIControlResponse
  CallCAPI = CAPIControlResponse.Indeterminate
  For Each objCAPIControl As CAPIControl In hs.CAPIGetControl(intDevRef)
    If LCase(objCAPIControl.Label) = LCase(strDevCmd) Then
      CallCAPI = hs.CAPIControlHandler(objCAPIControl)
      Exit For
    End If
  Next
End Function
Bastiaan
Senior Member
Senior Member
Posts: 1257
Joined: Sat May 24, 2008 11:36 am
Location: Netherlands
Contact:

Re: Aansturing ZAIX12

Post by Bastiaan »

Wow dat is wel even wat anders. Waarom makkelijk doen als het moelijk kan toch?

Dank voor je voorbeeld dat help al een beetje. Is het ook mogelijk om gewoon numeriek getal naar de functie te jagen?
Ik neem aan dat de functie dan aangepast moet?
CallCAPI(3, 50) bv om het dak halverwege te zetten?

Ik heb mijn ZAIX op de nul positie als 'Closed" gedefineerd, heeft dat nog invloed op On/OFF commando's.
Moet ik dan bv CallCAPI(3, "Closed") geven als ik binnen de strings blijf?
stefxx
Advanced Member
Advanced Member
Posts: 679
Joined: Fri Sep 12, 2008 2:26 pm
Location: Netherlands

Re: Aansturing ZAIX12

Post by stefxx »

Nee, niet eenvoudig. Maar je moet via CapiControl om de plugin aan te spreken helaas.

Overigens, het kan ook wel wat korter denk ik (niet getest!):

hs.CAPIControlHandler(hs.CAPIGetSingleControl(hs.GetDeviceRefByName("Verdieping Slaapkamer Rolluik"), True, "dim 10%", False, True))

Natuurlijk kun je ook de eerdere functie aanpassen, als je dan eerste test of je een nummerieke parameter hebt gegeven zal het wel "dim" zijn, anders "on" of "off".

Ik weet ook even niet of on/off de juiste commando's zijn, ik heb eea van de week getest met een normale dimmer, niet met een ZAX12. Wellicht moet je on/off vervangen door open/close ofzo.

Volgens mij heb je voldoende om er eens lekker mee te spelen. Laat me weten wat het geworden is! :D
Bastiaan
Senior Member
Senior Member
Posts: 1257
Joined: Sat May 24, 2008 11:36 am
Location: Netherlands
Contact:

Re: Aansturing ZAIX12

Post by Bastiaan »

Ja ga ik zeker doen, ik draai een loopje wat op basis van temp windows/stappen een waarde uit geeft, daar lopen nog wat checks overheen bv op max windspeed en of het alarm aanstaat, daarna gaat het resultaat naar de functie voor de positie.
Lastige is natuurlijk dat je zo lang mogelijk met nummers wil werken dus ik zal een string maken aan het eind.
Sluiten moet ook in kleine stappen omdat er nog wel eens een kat precies onder wil liggen zonnen....
Dus ik heb een sluit loop die ik nu ook met strings moet gaan maken.
Ik laat je weten hoe en wat.
Bastiaan
Senior Member
Senior Member
Posts: 1257
Joined: Sat May 24, 2008 11:36 am
Location: Netherlands
Contact:

Re: Aansturing ZAIX12

Post by Bastiaan »

En het juiste antwoord is: Down en Up voor de twee uiterste posities. Tussen standen inderdaad met DIM
Post Reply

Return to “Homeseer PMIX35, CTX15, CTX35 - Plugin HS3”