Programmeer Handleiding
Meerdere Protocollen
Wij willen het programmeurs zo makkelijk mogelijk maken om met onze lampen en led computers te communiceren. Daarom zijn onze protocollen volledig open. Onze led computers praten verschillende protocollen, die door ons zelf zijn ontwikkeld. Er zijn drie protocollen waar u gebruik van kunt maken. Deze protocollen zijn: ArtiAPI, ArtiNET en ArtiTCP.
ArtiNET is een protocol dat onze apparaten onderling met elkaar praten. Dit protocol is op TCP gebaseerd en geschikt voor realtime communicatie. Communicatie gaat middels efficiënte socket programming met simpele byte streams. Hierbij kan je alles maar moet je wel veel zelf regelen.
ArtiTCP is een protocol dat onze Hub praat met onze apparaten. Dit is ook een gebaseerd TCP gebaseerd protocol, maar tekst gebaseerd en niet geschikt voor realtime communicatie. met ArtiTCP is het ook mogelijk om de gehele lamp of led controller te besturen zoals bijvoorbeeld het updaten van de software.
ArtiAPI is gebaseerd op HTTP/HTTPS REST en werkt met JSON. Hierbij heet het protocol veel meer intelligentie en neemt het werkt uit handen, maar dit is niet geschikt voor realtime.
Multi Client Communicatie
Onze led computers en lampen praten zowel ArtiNET als ArtiTCP. Deze protocollen zijn beiden multi client. Dat wil zeggen dat het mogelijk is om met meerdere apparaten tegelijk met een lamp of led controller te communiceren Met het ArtiNET protocol kan dit echter op hoge snelheid tot 50 wijzigingen per seconde. Het is zelfs mogelijk dat u met de ene controller één deel van een led strip of lamp bedient, terwijl een compleet andere controller een andere deel van de led strip bedient.
Onze ArtiHUB praat het ArtiAPI protocol. Via de Smart ArtiHUB en ArtiAPI is het echter mogelijk om meerdere lampen tegelijk aan te sturen en om bijvoorbeeld scenes aan te roepen. Via ArtiNET communiceert u altijd direct met één enkel apparaat.
En daarnaast we kunnen ook nog eens onze Smart ArtiHUB tegen andere apparaten laten aanpraten om ze te combineren in scenes. Denk hierbij aan bestaande Philips Hue lampen of bijvoorbeeld Zwave lampen via een Fibaro controller. Op deze manier heeft u alles centraal via één API.
Veel commando’s
Onze protocollen bevatten veel commando’s. Zo zijn er commando’s voor het aansturen van hele led strips, of segmenten hier van, individuele pixels, meerdere segmenten of meerdere pixels tegelijk. Er kan gewerkt worden met kleur paletten, die u zelf kunt definiëren, diverse effecten zijn standaard ingebouwd. Er kan gerekend worden met kleuren, een patroon kan worden verschoven, segmenten gewisseld en veel meer. Lees de protocol definitie voor alle commando’s. Het is echt te veel om op te noemen.
Er kan ook heel veel informatie worden opgevraagd uit een lamp of led controller. Hoeveel vermogen wordt er verbruikt?, wat was het maximale verbruik?, Wat zijn de temperaturen in de controller of in de lamp? hoeveel commando’s per seconde zijn er ontvangen? Welke ledjes zijn aan? Hoeveel leds zijn er aan? Welke kleuren zijn er actief. De mogelijkheden zijn bijna oneindig.
En als iets nog niet kan dan denken wij graag met u mee hoe we dit alsnog kunnen realiseren. Wij maken zelfs custom firmware en custom producten als het nodig is.
ArtiNET Protocol
Het ArtiNET protocol is door ons ontworpen om op een zo efficiënt mogelijke manier onze lampen en led computers aan te sturen. Het protocol is gebaseerd op een TCP byte stream en is volledig open. Dat betekent dat u alle commando’s kunt inzien en wij uitleggen wat alles doet. In de illustratie is de plek van het protocol in het OSI model te zien.
Het protocol begint altijd met een Start byte, gevolgd door een Command byte dat het uit te voeren commando bevat. Hierna volgt altijd een Realtime byte dat aangeeft of het om een real time communicatieopdracht gaat zonder antwoord of dat er een antwoord verwacht wordt. Het volgende byte bevat het kanaal waar het commando voor bedoeld is. Kanaal 0 betekent alle kanalen. Dan volgt een Amount byte bestaande uit een lsb/msb byte dat het aantal Data bytes aangeeft dat volgt. Dan volgen de daadwerkelijke data bytes zoals aangegeven. En als laatste een Stop byte.
U kunt de hele ArtiNET protocol definitie zien door op onderstaand knop te klikken. Mocht u vragen hebben neem dan gerust contact met ons op. Wij ondersteunen u graag. Maar lees ook verder voor de standaard libraries die wij reeds bieden.
ArtiTCP Protocol
Het ArtiTCP protocol is door ons ontworpen om op een zo makkelijk mogelijke manier onze lampen en led computers aan te sturen. Het protocol is gebaseerd op een TCP stream met leesbare tekst commando’s en is volledig open. Dat betekent dat u alle commando’s kunt inzien en wij uitleggen wat alles doet. In de illustratie is de plek van het protocol in het OSI model te zien.
U kunt een simpele Telnet sessie starten naar de led controller of lamp en direct commando’s invoeren of dit doen vanuit uw software. Er moet wel vooraf een authenticatie gedaan worden met een token dat per controller of lamp uniek is.