Ikea Tradfri
Ik heb nu circa 20 Ikea Tradfri lampen, de meeste van het type GU10. Deze lampen kunnen gedimd worden en tevens kan de kleurtemperatuur aangepast worden. Met de afstandsbediening kun je alleen tussen drie standen drie kleurstanden kiezen maar met de app en via de gateway kun je alle tussenwaarden tussen koud wit en warm wit instellen.
Het koppelen van de lampen en afstandsbedieningen is goed beschreven in de documentatie van Ikea en ook de app geeft goede informatie hoe je moet koppelen. Daar wil ik dus niet verder op ingaan.
Probleem met Tradfri integratie (time-out)
Toen ik de eerste keer de gateway wilde koppelen aan HA ging dat zonder problemen. Eerst het IP adres in configuration.yaml ingevoerd waardoor de integratie werd herkend en vervolgens het secret in HA ingevoerd. Werkte prima en ik kon eenvoudig via HA de lampen in en uit schakelen. Helaas was de versie van HA die ik gebruikte (0.107.7) niet stabiel. Na enkele dagen werkte de Tradfri integratie niet meer hetgeen alleen door een reset opgelost kon worden. Ik heb daarom met een automatisering HA elke nacht laten resetten.
Om te voorkomen dat ik met experimenteren de installatie van HA om zeep help, heb ik ook een tweede container met HA draaien op poort 9000. Die tweede container heb ik regelmatig geupdate naar een nieuwere versie. Toen ik toekwam aan het testen met de Tradfri integratie kreeg ik deze niet werkend. Dat was inmiddels met versie 0.118.1. Om te voorkomen dat ik eventueel last had van oude meuk, heb ik zelfs een geheel nieuwe container aangemaakt maar telkens als ik de integratie wilde configureren, kreeg ik een time-out foutmelding. De productiecontainer (versie 0.107.7) bleef echter goed werken. Ik heb vervolgens bewust een fout IP adres ingevoerd en dat gaf dezelfde foutmelding, dat zette me aan het denken. Berichten komen niet aan bij de gateway, dat moet wel aan de firewall liggen.
Ik heb daarom (nogal lomp) twee nieuwe regels voor de firewall van de NAS aangemaakt. Een voor in-bound en een voor outbound verkeer op de poorten 5683 en 5684. Ik vermoed dat alleen outbound 5684 benodigd is maar dat zoek ik later nog uit.
Dit werkte en nu is de productiecontainer ook op versie 0.118.1 gebracht. De automatisering die elke nacht HA reset is inmiddels weer verwijderd.
Waarom een oude versie van HA zonder de firewall rules werkt is me nog steeds een raadsel, als iemand een idee heeft hoor ik dat graag.
Buitenverlichting
Inschakelen
Een deel van de verlichting wil ik schakelen op een astronomische klok. Daartoe heb ik eerst een groep aangemaakt zodat ik niet elke lamp apart hoef te schakelen. In group.yaml heb ik de volgende regels opgenomen
buitenverlichting_1:
entities:
- light.patio_links
- light.patio_midden 
- light.patio_rechts
- light.schuur_links
- light.schuur_midden
- light.schuur_rechts
Vervolgens heb ik een automatisering ‘Zonsondergang’ aangemaakt. deze gebruikt een trigger met de volgende eigenschappen:
Trigger-type: Numerieke staat
Entiteit: sun.sun
Attribuut: Elevation
Onder: -0.2
Ik gebruik de Elevation omdat daarmee beter is te regelen wanneer de verlichting moet schakelen dat bijvoorbeeld de eigenschap zonsondergang. Omdat ik met een andere automatisering de verlichting op een bepaald tijdstip dim voor de nacht, heb ik ook een voorwaarde nodig. Met deze voorwaarde voorkom ik dat de de automatisering ‘Zonsondergang’ getriggerd wordt als de stand van de zon veranderd en daarmee de verlichting weer op ‘vol’ wordt gezet. De voorwaarde heeft de volgende eigenschappen:
Type-voorwaarde: Tijd
Vaste tijd
Nadat: 15:00:00
Alle dagen van de week enabled
Tenslotte twee acties met de volgende eigenschappen:
Type actie: Service aanroepen
Service: light.turn_on
Service data:
entity_id: group.buitenverlichting_1
brightness: 175
color_temp: 350
transition: 10
en
Type actie: Service aanroepen
Service: light.turn_on
Service data:
brightness: 225
color_temp: 350
entity_id: light.voordeur
Bij de eerste actie heb ik transition gebruikt. Daarmee wordt ingesteld hoelang het duurt voor de verlichting helemaal is ingeschakeld. HA zal dan stapsgewijs de brightness verhogen totdat het gevraagde niveau is bereikt (in dit geval duurt dat 10 seconden)
Uitschakelen
Voor het uitschakelen van de lampen heb ik de automatisering ‘Zonsopgang’ gemaakt met de volgende trigger:
Trigger-type: Numerieke staat
Entiteit: sun.sun
Attribuut: Elevation
Boven: -0.6
en de volgende acties:
Type actie: Service aanroepen
Service: light.turn_off
Service data:
entity_id: group.buitenverlichting_1
transition: 10
en
Type actie: Service aanroepen
Service: light.turn_off
Name(s) of entities to turn off: light.voordeur
Bij de laatste actie heb ik geen gebruik gemaakt van de service data maar direct de entiteit ingevuld. Ik heb dat gedaan om te laten zien dat de entiteiten op twee manieren ingevuld kunnen worden, voor de werking maakt het niets uit.
Nachtstand
Tenslotte heb ik nog een derde automatisering ‘Nachtstand’ gemaakt om de verlichting op een bepaald tijdstip te dimmen. Deze automatisering heeft de volgende eigenschappen:
Trigger-type: Tijd
Vaste tijd
Op tijd: 23:00:00
Type actie: Service aanroepen:
Service: light.turn_on
Service data:
entity_id: group.buitenverlichting_1
brightness: 60
color_temp: 350
transition: 15
Type actie: Service aanroepen
Service: light.turn_on
Service data:
brightness: 60
color_temp: 350
entity_id: light.voordeur
Verlichting binnen
In de aanbouw heb ik twee groepen spots die ik wil bedienen met pulsdrukkers. Een puls schakelt de groep aan in gedimde toestand als deze uit is of schakelt de groep uit als deze aan is. Twee pulsen schakelt de groep aan op volle sterkte zowel vanuit een uit als een gedimde positie. Continue indrukken dimt de groep en eerst een puls en dan ingedrukt houden laat de groep sterker branden.
Dit wil ik realiseren door met een Arduino de pulsdrukkers uit te lezen en het resultaat middels mqtt berichten door te geven aan HA. HA zal vervolgens met automatiseringen de verlichting schakelen. In ene volgende blog zal ik hier verder op ingaan.