KlikAan KlikUit besturen met de Raspberry Pi
In mijn vorige post schreef ik hoe ik mijn eerste stapjes op domoticagebied zette met behulp van een Raspberry Pi.
Zoals aangegeven is de thermostaat van de muur gerukt en is het regelen van de kleppen aan de Raspberry Pi overgedragen.
Hier moest natuurlijk nog wel een stuk script voor komen en een begrijpelijke webinterface:

Het hele verhaal was begonnen met het aansturen van KlikAan KlikUit (KaKu) door middel van een RF send en receive setje. We begonnen met de lights software uit deze blogpost, maar al snel waren we over op de software van CurlyMo : de voorloper van pilight (in een latere post hierover meer).
Nadat we de eerste hobbels overwonnen hadden was het natuurlijk fantastisch om vanaf je Raspberry Pi een lamp draadloos aan en uit te zetten
Vanaf dat moment was mij al direct duidelijk dat ook hier een (fatsoenlijke) webinterface noodzakelijk was wilde dit enigszins slagen bij de rest van de bewoners (lees: mijn vrouw).
De eerste versie was vooral praktisch, maar kon er mee door:

Tot nu toe allemaal leuk om mee te spelen, maar vooralsnog werd alles met de hand geschakeld. Het zou al een stuk mooier zijn als de verlichting vanzelf zou schakelen. Een simpele cronjob zou al genoeg moeten zijn, maar dan mag je dit elke week gaan bijstellen.
Zolang er nog geen draadloze schermdetector (LDR) was moest ik iets anders verzinnen.
Uiteindelijk heb ik besloten om gebruik te maken van sunwait. Via een cronbjob word elke dag om 15:00 sunwait opgestart, met als parameters dat deze een half uur voor zonsondergang de 2 plafondlampen van de woonkamer aan te zetten.
Op een enkele regenachtige dag werkt dit prima. Precies op het moment dat je denkt 'straks even een lichtje aanzetten' springen de lampen aan.
Als snel kwam ik tot de conclusie dat het eigenlijk echt gaat werken als je 100% terugkoppeling hebt van de status van al je lampen.
Omdat KaKu gebaseerd is op de het oude X10 protocol, zit er geen terugkoppeling in. Hier moest dus iets op verzonnen worden.
De enige manier om eigenlijk zeker te zijn van de status van je verlichting, is alles via je Raspberry Pi te laten verlopen. Klinkt leuk, maar in de praktijk niet te doen. De rest van de familie wil namelijk toch graag gebruik blijven maken van de ouderwetse schakelaars in de muur. De KaKu schakelaars kunnen alleen maar ontvangen niet zenden.
Om toch gegarandeerd te zijn van statusupdates heb ik besloten alle schakelaars die KaKu aansturen ook te voorzien van KaKu zenders zoals de AWMT-230.
Op deze manier kun je dmv een KaKu signaal een schakelaar op ON zetten en krijg je netjes een signaal wanneer de schakelaar op OFF gezet word (je hebt dan nog wel een probleem met een draadloos geschakelde lamp die je UIT wilt zetten terwijl de KaKu schakelaar in de OFF positie staat. Later hierover meer).
Er kwam nu wel een ander probleem aan het licht (
) : de RF receiver van iPrototype bleek niet in staat te zijn alle signalen in het huis op te vangen.
Inmiddels was CurlyMo overgestapt naar een nieuwe versie van zijn software : pilight met daarbij een eigen forum.
Op dit forum werd druk gediscussieerd over antennes en hoe die te bouwen, dus heb ik op dat moment besloten de uitkomsten daarvan eerst af te wachten.
De AWMT-230 zenders bleken ook heel erg handig voor andere toepassingen : hang een zender aan een bestaande schakelaar zonder dat je de code de van de KaKu zender ergens op inleerd en je hebt een simpele 'aanwezigheidsmelder' voor vertrekken waar je gegarandeerd altijd de verlichting gebruikt.
Ik heb zo'n zender in de badkamer geplaatst, zodat de Raspberry PI altijd weer wanneer er iemand in de badkamer is. De reden leg ik uit in een andere blogpost

Zoals aangegeven is de thermostaat van de muur gerukt en is het regelen van de kleppen aan de Raspberry Pi overgedragen.
Hier moest natuurlijk nog wel een stuk script voor komen en een begrijpelijke webinterface:

Het hele verhaal was begonnen met het aansturen van KlikAan KlikUit (KaKu) door middel van een RF send en receive setje. We begonnen met de lights software uit deze blogpost, maar al snel waren we over op de software van CurlyMo : de voorloper van pilight (in een latere post hierover meer).
Nadat we de eerste hobbels overwonnen hadden was het natuurlijk fantastisch om vanaf je Raspberry Pi een lamp draadloos aan en uit te zetten

Vanaf dat moment was mij al direct duidelijk dat ook hier een (fatsoenlijke) webinterface noodzakelijk was wilde dit enigszins slagen bij de rest van de bewoners (lees: mijn vrouw).
De eerste versie was vooral praktisch, maar kon er mee door:

Tot nu toe allemaal leuk om mee te spelen, maar vooralsnog werd alles met de hand geschakeld. Het zou al een stuk mooier zijn als de verlichting vanzelf zou schakelen. Een simpele cronjob zou al genoeg moeten zijn, maar dan mag je dit elke week gaan bijstellen.
Zolang er nog geen draadloze schermdetector (LDR) was moest ik iets anders verzinnen.
Uiteindelijk heb ik besloten om gebruik te maken van sunwait. Via een cronbjob word elke dag om 15:00 sunwait opgestart, met als parameters dat deze een half uur voor zonsondergang de 2 plafondlampen van de woonkamer aan te zetten.
Op een enkele regenachtige dag werkt dit prima. Precies op het moment dat je denkt 'straks even een lichtje aanzetten' springen de lampen aan.
Als snel kwam ik tot de conclusie dat het eigenlijk echt gaat werken als je 100% terugkoppeling hebt van de status van al je lampen.
Omdat KaKu gebaseerd is op de het oude X10 protocol, zit er geen terugkoppeling in. Hier moest dus iets op verzonnen worden.
De enige manier om eigenlijk zeker te zijn van de status van je verlichting, is alles via je Raspberry Pi te laten verlopen. Klinkt leuk, maar in de praktijk niet te doen. De rest van de familie wil namelijk toch graag gebruik blijven maken van de ouderwetse schakelaars in de muur. De KaKu schakelaars kunnen alleen maar ontvangen niet zenden.
Om toch gegarandeerd te zijn van statusupdates heb ik besloten alle schakelaars die KaKu aansturen ook te voorzien van KaKu zenders zoals de AWMT-230.
Op deze manier kun je dmv een KaKu signaal een schakelaar op ON zetten en krijg je netjes een signaal wanneer de schakelaar op OFF gezet word (je hebt dan nog wel een probleem met een draadloos geschakelde lamp die je UIT wilt zetten terwijl de KaKu schakelaar in de OFF positie staat. Later hierover meer).
Er kwam nu wel een ander probleem aan het licht (

Inmiddels was CurlyMo overgestapt naar een nieuwe versie van zijn software : pilight met daarbij een eigen forum.
Op dit forum werd druk gediscussieerd over antennes en hoe die te bouwen, dus heb ik op dat moment besloten de uitkomsten daarvan eerst af te wachten.
De AWMT-230 zenders bleken ook heel erg handig voor andere toepassingen : hang een zender aan een bestaande schakelaar zonder dat je de code de van de KaKu zender ergens op inleerd en je hebt een simpele 'aanwezigheidsmelder' voor vertrekken waar je gegarandeerd altijd de verlichting gebruikt.
Ik heb zo'n zender in de badkamer geplaatst, zodat de Raspberry PI altijd weer wanneer er iemand in de badkamer is. De reden leg ik uit in een andere blogpost




01-'14 Het gevecht met het bubbelbad (en hoe de Raspberry Pi won)
01-'14 Hoe de Raspberry Pi alles veranderde
Reacties
Leuke post, erg interessant om te lezen dat je bezig bent geweest met het er zeker van zijn dat een signaal is aangekomen.
Ben 2 jaar geleden zelf bezig geweest met een eigen geprogrammeerd domotica systeem d.m.v. een arduino met ethernet shield. Deze kon de de temperatuur in de woonkamer weergeven en enkele lampen schakelen. Ik had hier toen de tijd een webinterface voor gemaakt waar ik per dag "cronjobs" kon instellen.
Heb het project helaas toen niet doorgezet, er zijn helaas al zo veel kant en klare oplossingen zoals HomeWizzard of Domoticz
Ben 2 jaar geleden zelf bezig geweest met een eigen geprogrammeerd domotica systeem d.m.v. een arduino met ethernet shield. Deze kon de de temperatuur in de woonkamer weergeven en enkele lampen schakelen. Ik had hier toen de tijd een webinterface voor gemaakt waar ik per dag "cronjobs" kon instellen.
Heb het project helaas toen niet doorgezet, er zijn helaas al zo veel kant en klare oplossingen zoals HomeWizzard of Domoticz
De laatste paragraaf snap ik niet helemaal: "Hang een zender aan een bestaande schakelaar zonder dat je de code de van de KaKu zender ergens op inleerd en je hebt een simpele 'aanwezigheidsmelder'." Kun je daar misschien nog wat meer over vertellen? 

Zenders zoals de AWMT-230 zijn bedoeld om met 1 bestaande schakelaar meerdere lampen te schakelen.Puch-Maxi schreef op donderdag 16 januari 2014 @ 23:58:
De laatste paragraaf snap ik niet helemaal: "Hang een zender aan een bestaande schakelaar zonder dat je de code de van de KaKu zender ergens op inleerd en je hebt een simpele 'aanwezigheidsmelder'." Kun je daar misschien nog wat meer over vertellen?
Stel : je hebt een grote kamer met slechts 1 lamp en 1 schakelaar. Als je dan een AWMT-230 zender tussen je schakelaar en bedrading hangt, word er elke keer bij het schakelen een ON of OFF signaal verstuurd.
Zo kun je dus diverse ontvangers laten reageren op die ene zender. Wanneer je dan die ene schakelaar omhaalt, gaan er meerdere lampen aan.
Wanneer je echter alleen maar dat uitgezonden signaal oppikt, heb je dus een indicatie dat er iemand in dat vertrek is en wanneer niet.
Leuk om te lezen!
Ik heb dit zelf ook gebouwd (Apache2, PHP, kaku-send). Heb toch voor de grap snel een backup (image) gemaakt van mijn SD kaartje en vervolgens bovenstaande geïnstalleerd.
Zeer mooie ontwikkeling! Echter mis ik "voor gedefinieerde programma's", bijvoorbeeld: "TV kijken" waarna vervolgens de speakers en beamer aan gaan en de verlichting dimmed naar een lagere stand.
Ook heb ik in mijn eigen systeempje een "wake-up light" gemaakt. Hierbij gaat alle verlichting een half uur voordat de wekker gaat aan op de laagste stand. Vervolgens iedere 2 minuten een dimstandje erbij.
Iemand suggesties om datzelfde te bereiken met pilight?
Ik heb dit zelf ook gebouwd (Apache2, PHP, kaku-send). Heb toch voor de grap snel een backup (image) gemaakt van mijn SD kaartje en vervolgens bovenstaande geïnstalleerd.
Zeer mooie ontwikkeling! Echter mis ik "voor gedefinieerde programma's", bijvoorbeeld: "TV kijken" waarna vervolgens de speakers en beamer aan gaan en de verlichting dimmed naar een lagere stand.
Ook heb ik in mijn eigen systeempje een "wake-up light" gemaakt. Hierbij gaat alle verlichting een half uur voordat de wekker gaat aan op de laagste stand. Vervolgens iedere 2 minuten een dimstandje erbij.
Iemand suggesties om datzelfde te bereiken met pilight?
@tim427
Simpel bash scriptje is voldoende om dat allemaal te bereiken, helaas zal je deze nog niet direct vanuit de webgui kunnen starten.
Simpel bash scriptje is voldoende om dat allemaal te bereiken, helaas zal je deze nog niet direct vanuit de webgui kunnen starten.
Het mooie (maar ook nog even een stukje gemis) is dat je met pilight eigenlijk van alles kunt programmeren met de "events" die er zijn. Of die nu gaat om sensoren of relays aan je RPi geknoopt, of draadloze signalen via 433.92Mhz (of andere frequenties). Je maakt zelf een client die met pilight communiceert (daarvan zijn verschillende voorbeelden in verschillende talen) en je programmeert vervolgens je eigen events.
Ik draai op die manier zelf ook een wakeup light via een python script dat communiceert met pilight.
Ik draai op die manier zelf ook een wakeup light via een python script dat communiceert met pilight.
Met nogal een prijs kaartje voor externe hardware. pilight doet alles met alleen de RPi en een zender/ontvanger van +/- 7.50. En doordat je ook sensoren of relais kunt aansturen, kan je pilight ook gebruiken voor bijv. een thermostaat. Daarnaast zijn beide alleen geschikt voor 433.92Mhz, terwijl pilight ook modulair is als het gaat om andere frequenties. Als laatste heeft pilight de mogelijkheid om een netwerk op te zetten met met elkaar communicerende clients. Zo kan je verschillende RPi's hebben met pilight die allemaal samenwerken in een groot domotica netwerk. Eventueel draai je de hoofd daemon op je X86 NAS (zonder GPIO) zodat je zeker weet dat deze blijft draaien. Mocht je je NAS opnieuw opstarten, dan wachten de clients rustig totdat je hoofd daemon weer beschikbaar is.Heb het project helaas toen niet doorgezet, er zijn helaas al zo veel kant en klare oplossingen zoals HomeWizzard of Domoticz
[Reactie gewijzigd op vrijdag 17 januari 2014 06:35]
Ik ga dit hele verhaal volgend. ik vind het best interessant. ga ik later denk ik ook doen. is wel iets moois denk ik.
ja, maar het is toch wel leuk als je dit zelf kan, of niet somsDw1-nl schreef op donderdag 16 januari 2014 @ 19:00:
Leuke post, erg interessant om te lezen dat je bezig bent geweest met het er zeker van zijn dat een signaal is aangekomen.
Ben 2 jaar geleden zelf bezig geweest met een eigen geprogrammeerd domotica systeem d.m.v. een arduino met ethernet shield. Deze kon de de temperatuur in de woonkamer weergeven en enkele lampen schakelen. Ik had hier toen de tijd een webinterface voor gemaakt waar ik per dag "cronjobs" kon instellen.
Heb het project helaas toen niet doorgezet, er zijn helaas al zo veel kant en klare oplossingen zoals HomeWizzard of Domoticz

Ik zie nu jou tablet in de muur, en ben meteen in mn hoofd gaan klussen
ik zocht een oplossing voor een tablet in mn kastdeur maar met wat plintjes ziet het er al prima uit!
Zelf heb ik ook een soort gelijk domotica systeem gemaakt, kijk eens in dit topic op t.net:
http://gathering.tweakers...message/41190665#41190665

Zelf heb ik ook een soort gelijk domotica systeem gemaakt, kijk eens in dit topic op t.net:
http://gathering.tweakers...message/41190665#41190665
Erg leuk. Zat al tijden te denken om een Raspberry te bestellen maar dit is toch wel de doorslaggevende reden. Bedankt!
Echt super gaaf. Ik wil ook aan de domotica. Maar waarom de Raspberry? Is dat alleem maar vanwege het lage energie gebruik? Want als je zelf een PC hebt draaien als home server. Waarom zou je die dan ook niet de rest van je huis aan later sturen?
Of maak ik een denkt fout?
Of maak ik een denkt fout?
Omdat een gemiddeld moederbord geen GPIO pinnen heeft, en ook niet in mijn meterkast past.
Daarnaast is een Raspberry Pi bijna verwaarloosbaar goedkoop om links en rechts eentje in je huis neer te gooien.
Daarnaast is een Raspberry Pi bijna verwaarloosbaar goedkoop om links en rechts eentje in je huis neer te gooien.
Je kan pilight wel op die hoofdcomputer draaien, maar je zult inderdaad computers nodig hebben met GPIO om zenders en ontvangers aan te sturen. Dat kan in theorie ook een PCduino zijn, maar daarvoor moet iemand eerst een software hardware module maken.MorgothG schreef op vrijdag 17 januari 2014 @ 19:43:
Echt super gaaf. Ik wil ook aan de domotica. Maar waarom de Raspberry? Is dat alleem maar vanwege het lage energie gebruik? Want als je zelf een PC hebt draaien als home server. Waarom zou je die dan ook niet de rest van je huis aan later sturen?
Of maak ik een denkt fout?
[Reactie gewijzigd op vrijdag 17 januari 2014 22:10]
Oh ja, dat scheelt....aansluiten van de sensoren. Maar toch. Ik zou het liefst een soort Main computer in huis willen hebben die als een soort star trek main computer werkt.
En klik aan klik uit is.goedkoop. maar systemen als Z-wave bieden meer voordelen met het heen en.weer reageren van de sensoren. Ik blijf je volgen. Want blijft vet dit. Ga zo door!
En klik aan klik uit is.goedkoop. maar systemen als Z-wave bieden meer voordelen met het heen en.weer reageren van de sensoren. Ik blijf je volgen. Want blijft vet dit. Ga zo door!
Klopt, maar nu gooi je gewoon meerdere RPi's door je huis heen en je mist ook nooit meer een code.MorgothG schreef op zaterdag 18 januari 2014 @ 14:05:
En klik aan klik uit is.goedkoop. maar systemen als Z-wave bieden meer voordelen met het heen en.weer reageren van de sensoren. Ik blijf je volgen. Want blijft vet dit. Ga zo door!
Ik kan niet zo gauw iets meer vinden over je opmerking Later hierover meer in:
"Om toch gegarandeerd te zijn van statusupdates heb ik besloten alle schakelaars die KaKu aansturen ook te voorzien van KaKu zenders zoals de AWMT-230.Op deze manier kun je dmv een KaKu signaal een schakelaar op ON zetten en krijg je netjes een signaal wanneer de schakelaar op OFF gezet word (je hebt dan nog wel een probleem met een draadloos geschakelde lamp die je UIT wilt zetten terwijl de KaKu schakelaar in de OFF positie staat. Later hierover meer)"
Ik ben daar nu ook mee bezig en voeg me af wat jouw oplossing hiervoor is...?
"Om toch gegarandeerd te zijn van statusupdates heb ik besloten alle schakelaars die KaKu aansturen ook te voorzien van KaKu zenders zoals de AWMT-230.Op deze manier kun je dmv een KaKu signaal een schakelaar op ON zetten en krijg je netjes een signaal wanneer de schakelaar op OFF gezet word (je hebt dan nog wel een probleem met een draadloos geschakelde lamp die je UIT wilt zetten terwijl de KaKu schakelaar in de OFF positie staat. Later hierover meer)"
Ik ben daar nu ook mee bezig en voeg me af wat jouw oplossing hiervoor is...?
Wat ik heb gedaan is het volgende : Plaats tussen een schakelaar met KaKu relais nog een extra AWMT-230. Wanneer je nu de schakelaar fysiek wisselt van stand, word er een KaKu signaal de lucht ingestuurd. Als je deze opvangt, weet je dat er iemand de schakelaar heeft veranderd van stand.
Kan ik een amwt-230 ook aansluiten achter een amwd-230 of een amwr-210? En hoe moet ik hem dan aansluiten?
alexswart schreef op zondag 18 januari 2015 @ 20:17:
Kan ik een awmt-230 ook aansluiten achter een awmr-210 of een awmd-250? En hoe moet ik hem dan aansluiten?
Ik zou een AWMT-003 nemen en deze fysiek niet aan je dimmer koppelen.
Dus als je de schakelaar omhaalt, stuurt deze een signaal, de dimmer pikt dat weer op en reageert door de lamp aan of uit te zetten.
Dus als je de schakelaar omhaalt, stuurt deze een signaal, de dimmer pikt dat weer op en reageert door de lamp aan of uit te zetten.
Om te kunnen reageren moet je ingelogd zijn. Via deze link kun je inloggen als je al geregistreerd bent. Indien je nog geen account hebt kun je er hier één aanmaken.