zondag, 27 oktober 2013 14:48

Windows ledlampcontroller voor Wifi ledverlichting (programmeren)

Geschreven door
Beoordeel dit item
(0 stemmen)

In het kader van de thuis automatisering heb ik sinds een weekje een Wifi ledlamp in huis. Middels de bijbehorende afstandsbediening en middels de app kun je de ledlampen bedienen. In het starterspakket zitten een ledlamp, afstandsbediening en Wifibox. De Wifibox is nodig om onder andere de 'Wifi Controller 2 App' te gebruiken welke beschikbaar is voor Android en IOS.

ledlamp01

 

Windows Wifi ledcontroller

Omdat de Wifi Controller app helaas nog niet IOS7 proof is en ik geen Android apparaten in mijn bezit heb kon ik tot op heden de app nog niet gebruiken. Onder dat mom gekeken of het mogelijk is om een eigen controller te maken. Eerst voor Windows en wellicht later voor de Synology. Met Visual Basic 2010 Express heb ik een basale Wifi Controller gemaakt voor Witte lampen! Maar met simpele aanpassingen kan het programma ook makkelijk aangepast worden voor gekleurde ledlampen. Bovenin kan het IP adres en port (standaard 50000) van de Wifibox worden opgegeven.

ledlamp02

 

De wifibox kan worden aangestuurd middels commando's van 3 bytes lang welke via het UDP protocol naar de wifibox gestuurd kunnen worden. Een API voor de wifi ledlamp is gemaakt door www.applamp.nl. Mijn programma is daar dan ook gebaseerd. Dus alle credits voor applamp.nl op dat gebied. De hexadecimaal getallen heb ik omgezet naar ASCII codes (ofwel de byte code). Alleen de eerste byte is echt van belang. Die geeft de feitelijke opdracht door aan de wifibox. De laatste twee bytes zijn altijd ASCII (0) en ASCII (85).

Het programma kent twee belangrijke basis SUB's:

  • SendUDP
  • Wcommand

 

SendUDP

ledlamp03

 

De eerste Sub, SendUPD is verantwoordelijk voor het verzenden van het UDP pakketje over het netwerk. Voor deze SUB moeten wel de volgende referenties worden opgenomen in het programma:

  • Imports System.Net.Sockets
  • Imports System.Text

 

Wcommand

 

ledlamp04

 

De twee sub bevat een lijst alle commando's die mogelijk zijn voor een witte lamp. Het IP adres en de port worden uitgelezen van de textboxen op het form. Voor de volledige programma code inclusief een gecompileerde versie (voor de niet programmeurs) van het programma bijgaande download (click op de hardisk).

download-icon

 

Vervolg...

Het programma kan natuurlijk uitgebouwd worden. Interessanter zou het zijn om een programma te schrijven voor een NAS zoals bijvoorbeeld voor de Synology NAS. Dan zou het bijvoorbeeld mogelijk zijn om een digitale tijdschakelaar te maken welke automatisch de lampen aan en uit zet op bepaalde tijdstippen. Wellicht is het ook mogelijk om statussen terug te krijgen van de lampen om zo te zien of een lamp aan of uit is. Dit zal nog uitgezocht moeten worden.

Lees 61440 keer Laatst aangepast op zondag, 27 oktober 2013 15:38
Coen Martinus

site eigenaar :-)

1 Reactie

  • Reactielink AppLamp.nl zondag, 27 oktober 2013 19:31 Geplaatst door AppLamp.nl

    Hi Coen!
    Netjes gedaan!
    Voor de nieuwste kleurlampen zijn er nu ook 4 zones beschikbaar!
    http://www.applamp.nl zullen we snel updaten.
    Status ontvangen hoef je niet uit te zoeken, want dat isniet mogelijk.

Laat een reactie achter

Zorg ervoor dat u de verplichte (*) velden invult waar dit is aangegeven. HTML code is niet toegestaan.