Apparaten Apparaten...1 Introductie...1 Structuur...2 Apparaat Types...3 Meerdere IDs...4 Meerdere protocollen per apparaat...4 Protocol instellingen overschrijven...5 Introductie Deze pagina zal een basis uitleg legen over het configureren van apparaten aan de hand van een aantal protocollen. Voor een volledige lijst aan ondersteunde protocollen en hun respectievelijke syntax, kijk naar naar de protocollen gedeelte van deze handleiding. pilight kan gedraaid worden zonder vooraf geconfigureerde apparaten. Het voordeel van het wel configuren van apparaten is dat je ze dan kan gebruiken in events of kan bedienen via bijvoorbeeld de geïntegreerde webgui. Ook zullen status updates automatisch opgeslagen worden net als weerstation informatie. De protocol namen die te zien zijn in pilight-receive komen niet (altijd) overeen met de protocol namen die gebruikt worden in de apparaten configuratie. De reden hiervoor is dat verschillende merken hetzelfde protocol gebruiken. Het arctech_switch protocol wordt gebruikt door tenminste vijf verschillende merken. 1. Achterhaal eerst het merk apparaat dat je probeert te configureren. 2. Kijk of dat apparaat wordt herkent door pilight. 3. Kijk in de protocol pagina of je apparaat erbij staat en wat de respectievelijke syntax is. Als het specifieke merk / apparaat niet in de lijst staat, maar je apparaat wordt wel door pilight herkent, laat dit dan aan ons weten zodat we het apparaat alsnog kunnen toevoegen aan de lijst van ondersteunde merken.
Structuur 2 "television": 3 "protocol": [ "relay" ], 5 "gpio": 3 6 ], 7 "state": "off" 8, 9 "bookshelflight": 10 "protocol": [ "kaku_switch" ], 11 "id": [ 12 "id": 123456, 13 "unit": 1 14 ], 15 "state": "off" 16 17 Elk apparaat dat je wil configureren wordt op zichzelf toegevoegd aan het devices onderdeel van de configuratie. In dit voorbeeld worden er twee apparaten geconfigureerd. Een aan de GPIO aangesloten Relais om de television mee aan en uit te zetten en een via KlikAanKlikUit bedienbaar bookshelflight. Zodra er een actie is uitgevoerd of ontvangen van of op een van deze apparaten dan zal pilight deze status ook bijwerken. Zou je dus in dit voorbeeld de bookshelflight handmatig aanzetten met een KlikAanKlikUit afstandsbediening, dan zal pilight dit ook oppikken, en de status van de bookshelflight op aan zetten. Je moet hiervoor natuurlijk wel een ontvanger hebben aangesloten. In de basis heeft elk apparaat een vast aantal velden die moeten worden geconfigureerd: 1. name 2. protocol 3. id De syntax van elk specifieke protocol staat beschreven in de protocollen sectie van deze handleiding.
Apparaat Types pilight ondersteund een groot aantal type apparaten. Elk apparaat heeft zijn eigen functionaliteit en vereisten, maar soms gebruiken ze in de basis dezelfde onderliggende code. Een voorbeeld is de KlikAanKlikUit schakelaars, dimmers, deurbel, en rolluiken. In pilight kan deze KlikAanKlikUit code als volgt opgepikt worden: "protocol": "arctech_switches", "code": "state": off, "protocol": "arctech_dimmers", "code": "state": off, "protocol": "arctech_screens", "code": "state": up, Zoals je kunt zien wordt een enkele KlikAanKlikUit commando opgepikt als drie soorten apparaten. Je dient zelf goed na te gaan welk apparaat daadwerkelijk het commando verzond om te weten hoe je hem in de apparaten set-up configureert. Een dimmer zal bijvoorbeeld een schuif hebben én een aan/uit knop, een schakelaar heeft alleen een aan/uit knop en een rolluik heeft twee omhoog/omlaag moment schakelaars. Je dimmer configureren als een rolluik is mogelijk, maar geeft je niet de mogelijkheden om je dimmer als een dimmer te bedienen vanuit de verschillende GUIs.
Meerdere IDs Elk protocol dient tenminste een ID te hebben zodat pilight weet welk apparaat er is bediend. Het is echter ook mogelijk dat je meerdere KlikAanKlikUit afstandsbedieningen hebt die dezelfde KlikAanKlikUit schakelaar bedienen. In dat geval kan je meerdere IDs aan je apparaat koppelen. In geval van de KlikAanKlikUit schakelaar: 3 "protocol": [ "kaku_switch" ], 5 "id": 1234, 6 "unit": 0 7, 8 9 "id": 2345, 10 "unit": 1 11 ], 12 "state": "off" 13 14 Als een status update vanuit een van deze IDs zal worden ontvangen dan werkt pilight de status van het apparaat bij. Meerdere protocollen per apparaat pilight ondersteund het definiëren van meerdere protocollen per apparaat. De oude KlikAanKlikUit afstandsbedieningen kunnen bijvoorbeeld ook de nieuwe schakelaars bedienen. Dit betekent dat pilight beide protocollen moet ontvangen om te weten of de status van de schakelaar is verandert. Als er een KlikAanKlikUit dimmer wordt gebruikt, dan moet pilight drie protocollen nagaan. Als je meerdere protocollen per apparaat wil toevoegen, dan moet elk protocol een valide ID bevatten. 3 "protocol": [ "kaku_dimmer", "kaku_switch", "kaku_old" ], 5 "id": 123456, 6 "unit": 1 7, 8 9 "id": 10, 10 "unit": 5 11 ], 12 "state": "off", 13 "dimlevel": 10 14 15
Er zijn een aantal belangrijke stappen die je dient te volgen als je meerdere protocollen per apparaat toevoegt. 1. De kaku_dimmer en kaku_switch protocollen hebben dezelfde ID specificaties, maar de kaku_old niet. kaku_old kan alleen ID codes hebben < 16 en unit code < 33. De IDs van de kaku_switch en kaku_dimmer worden daarom niet ondersteund door het kaku_old protocol. Een aanvullende ID moet daarom toegevoegd worden volgende de eisen van kaku_old. 2. Aangezien we een dimmer en een schakelaar combineren is het van belang dat we een dimlevel en een state toevoegen aan het apparaat. 3. De kaku_dimmer wordt als eerste gedefinieerd. Dit is belangrijk, omdat pilight het gehele apparaat nu als een dimmer zal beschouwen in plaats van een schakelaar. Als de kaku_dimmer als tweede of derde protocol zou zijn gedefinieerd, dan zou pilight het apparaat beschouwen als schakelaar. Protocol instellingen overschrijven Elk protocol heeft een aantal specifieke instellingen die over te schrijven zijn vanuit de apparaten set-up. Wat deze specifieke instellingen zijn per protocol is te lezen in de protocol sectie van deze handleiding. Deze instellingen kunnen de interne werken van een protocol veranderen of de waardes die een protocol kan hebben limiteren. Deze instellingen zijn sterk protocol afhankelijk. Een voorbeeld, we willen niet dat onze dimmer naar zijn volledige dim niveau kan gaan, omdat hij dan te fel is. We willen ook niet dat hij tot zijn laagste dim niveau kan gaan, omdat hij dan te zwak brandt. In dat geval overschrijven we het minimum en maximum niveau van de dimmer: 3 "protocol": [ "kaku_dimmer" ], 5 "id": 1234, 6 "unit": 1 7 ], 8 "state": "on", 9 "dimlevel": 3, 10 "dimlevel-minimum": 3, 11 "dimlevel-maximum": 10 12 13 De KlikAanKlikUit afstandsbedieningen kunnen natuurlijk het dim niveau wel instellen buiten deze limieten, pilight zal er echter weigeren om deze dim niveaus op te slaan of om de lampen buiten deze limieten te bedienen.