Automatiseer je je huis met de nfc van je smartphone
Je pc aanzetten door je telefoon tegen een fiche aan te leggen? Je navigatie-app en je favoriete afspeellijst starten wanneer je je smartphone langs de deur haalt? Je thermostaat die uitgaat als je je telefoon op het nachtkastje legt? Je merkt het: de smartphone staat centraal in het geautomatiseerde huis dat we maken. Het enige wat je nodig hebt, is een Android-telefoon met nfc-chip en enkele nfc-tags, die voor een paar euro verkrijgbaar zijn.
Nfc (near-field communication) is een techniek voor draadloze communicatie die zoals de Engelse naam het zegt op korte afstand werkt, meestal maximaal tien centimeter. Velen van ons gebruiken nfc dagelijks zonder er erg in te hebben: de OV-chipkaart bevat namelijk een nfc-chip. Ook contactloos betalen met een betaalpas gebeurt met nfc. Je houdt je betaalpas dan tegen een nfc-betaalautomaat in de winkel en hoeft zo je pincode niet in te toetsen als het bedrag lager is dan 25 euro.
Minder bekend is dat je ook thuis zelf met nfc aan de slag kunt. Je scant dan een nfc-tag (een kleine chip met antenne in de vorm van een sticker of sleutelhanger) met je smartphone om allerlei taken uit te laten voeren. In deze basiscursus tonen we je de mogelijkheden met een Android-telefoon.
01 Nfc-tag scannen
Het eerste wat je dient te doen, is nfc inschakelen in je Android-telefoon. Die optie vind je in de instellingen, meestal in de categorie Draadloos en netwerken: schakel daar het schuifknopje NFC in. Android toont nu bovenaan het nfc-icoontje: een grote N. Daarna heb je nog een app nodig om de nfc-tags (zie ook het kader ‘Waar nfc-tags kopen?’) uit te lezen op je telefoon. Dat doen we in deze cursus met de app NFC TagInfo van NXP, mede-uitvinder van het nfc-protocol. Houd daarna een nfc-tag enkele seconden stil tegen de onderkant van je telefoon terwijl de app open is. Als alles goed gaat, krijg je dan allerlei technische informatie over de tag te zien, zoals de fabrikant en het chiptype. Een tip: scan je OV-chipkaart eens!
02 InstaWifi
Voordat we allerlei zaken gaan automatiseren, tonen we je eerst enkele handige apps die specifieke zaken met nfc doen. Een eerste is InstaWifi. Hoewel de app al enkele jaren geen nieuwe versie meer heeft gekregen, is hij nog steeds even eenvoudig als handig. Je schrijft er de inloggegevens van een wifi-netwerk mee naar een nfc-tag, zodat je vrienden of familie die gewoon maar hoeven te scannen om met je wifi-netwerk te verbinden. Je hoeft dus geen lang wachtwoord meer te dicteren en ze hoeven niet meer allerlei speciale tekens in te typen. Je bezoekers dienen wel de app InstaWifi geïnstalleerd te hebben.
©PXimport
Waar nfc-tags kopen?
Nfc-tags kun je op allerlei plekken aanschaffen: Bol.com, lokale gespecialiseerde webwinkels, maar ook op Chinese websites zoals AliExpress en Banggood.com. Meestal is het de moeite niet om op Chinese websites naar de laagste prijs te gaan zoeken, tenzij je grote hoeveelheden nfc-tags nodig hebt. Een nfc-tag kost immers niet zo veel: voor enkele euro’s vind je ze in allerlei formaten. Ze bestaan in de vorm van sleutelhangers, creditcardformaat, stickers, transparant, in kleur en waterdicht. Ze zijn vaak ook in een pakket te vinden met vijf tot tien tags voor een lagere prijs.
03 Puzzle Alarm Clock
©PXimport
Als je moeite hebt met opstaan, helpt Puzzle Alarm Clock je wel af van dat probleem. Bij elk alarm kun je een puzzel opgeven die je moet oplossen voor het alarm stopt. Maar wat als je nu echt geen ochtendmens bent en bij het afgaan van je wekker mentaal nog helemaal niet in staat bent om een puzzel op te lossen? Ook voor dat type mensen heeft de app een oplossing: de verplichting een nfc-tag in te scannen voordat het alarm stopt. Die mogelijkheid zit wel alleen in de Pro-versie, die je voor 4,59 euro aanschaft. Selecteer een alarm, druk op Tap to add a Puzzle en kies dan NFC tag scanner. Druk op Tap to add a tag en houd de nfc-tag die je dient te scannen om het alarm uit te schakelen tegen je telefoon. Geef hem een naam (bijvoorbeeld badkamer) en zet de schuifschakelaar ernaast aan (anders kun je iedere nfc-tag scannen om het alarm uit te schakelen). Plaats daarna je nfc-tag in je badkamer en vanaf nu moet je je bed uit en naar de badkamer om de tag te scannen voordat je alarm stopt. Dan ben je zeker wakker!
04 Trigger - Task Launcher
Als je algemenere zaken wilt gaan automatiseren met behulp van nfc, heb je een algemenere app nodig. Er zijn er die specifiek gericht zijn op het koppelen van acties aan nfc, zoals NFC Tasks. Maar er zijn ook veel algemenere automatisatie-apps voor Android die ook op het lezen van nfc-tags kunnen reageren. In deze basiscursus maken we gebruik van Trigger - Task Launcher, een handige automatisatie-app die in zijn gratis versie nfc als trigger ondersteunt. De Pro-versie met meer triggers koop je voor 2,99 euro.
©PXimport
05 Je eerste taak
Als je de app Trigger voor de eerste keer opstart, dan zie je in het venster Mijn taken dat je nog geen taken hebt gedefinieerd. Druk je op Probeer nu een voorbeeld, dan krijg je een voorbeeld van een taak te zien, zoals: zet wifi uit en verlaag de helderheid van het scherm als de batterij bijna leeg is. In het venster Voorgestelde taken vind je meer voorbeelden. Maar we gaan nu onze eerste taak maken: druk op Creëer een taak en selecteer als trigger NFC. Druk dan op Volgende. In het volgende scherm kun je restricties toevoegen om te bepalen wanneer de taak wordt geactiveerd. Denk maar aan een specifiek tijdsinterval (tijdens de kantooruren), specifieke dagen (weekdagen), verbonden met een wifi-netwerk, bluetooth-netwerk, in vliegtuigstand en of je telefoon al dan niet aan het opladen is. Kies je restricties (en vergeet niet de schuifschakelaar ernaast aan te zetten) en druk op Voltooid.
©PXimport
06 Actie!
Je kunt met een druk op het plusteken nu ook nog extra triggers toevoegen, zoals wifi of bluetooth. Druk daarna op Volgende om acties toe te voegen. Hier vink je nu de acties aan die je wilt uitvoeren als je telefoon de nfc-tag scant. Druk dan weer op Volgende. Je configureert daarna de acties die je hebt gekozen (bijvoorbeeld voor Geluidsprofiel kies je Stil) en drukt dan op Toevoegen aan taak. Daarna kun je met een druk op het plusteken nog extra acties toevoegen. Geef tot slot je taak onder aan het scherm een naam en druk op Volgende en op Voltooid. Plaats nu een nfc-tag onder je telefoon, zodat Trigger de taak ernaar weg kan schrijven. Als je nu je telefoon tegen deze nfc-tag houdt, voert Trigger je zojuist gedefinieerde taak uit.
Nfc op een iPhone
Apple heeft zijn toestellen vanaf de iPhone 6 voorzien van een nfc-chip, maar die werd tot voor kort alleen gebruikt voor de betaaldienst Apple Pay. Vanaf iOS 12 heeft Apple zijn nfc-chip ook voor ontwikkelaars van andere apps opengesteld. Daardoor hebben iPhone-eigenaars dezelfde mogelijkheden als Android-liefhebbers. Een interessante nfc-app voor iOS is Decode. Ook NFC TagInfo van NXP bestaat voor iOS.
07 Aan en uit
Zoals we de taak nu hebben gedefinieerd, zet Trigger je gsm op stil als je de nfc-tag scant die op het nachtkastje is bevestigd. Maar wat als je ’s ochtends opstaat en je geluid weer wilt aanzetten? Moet je dan een tweede taak in Trigger aanmaken en een tweede nfc-tag aan je nachtkastje hangen? Nee, gelukkig kan Trigger ook overweg met het wisselen tussen twee taken met dezelfde nfc-tag. Je kunt het beschouwen als ‘aan’- en ‘uit’-toestanden met voor elke toestand een andere taak. Maak een actie aan zoals in stap 6, bijvoorbeeld om het geluidsprofiel op stil te zetten. Druk dan op Volgende en in de laatste stap, vóórdat je op Voltooid drukt, druk je bovenaan op het plusteken en dan op Nieuwe taak. Voeg dan met het plusteken bovenaan weer een actie toe (bijvoorbeeld om het geluidsprofiel op normaal te zetten), vul een naam in voor de taak en druk op Voltooid. Beschrijf daarna je nfc-tag en vanaf dan wordt het geluid op je gsm afwisselend aan- en uitgezet als je de nfc-tag scant.
©PXimport
08 IFTTT Webhooks
Tot nu toe zijn we met onze door de nfc-tag geactiveerde taken op onze telefoon gebleven, maar we kunnen nog verder gaan. Een van de acties die in Trigger mogelijk zijn, is immers Een URL/URI openen (onder Applicaties & Snelkoppelingen). Als je daarin een url invult, bezoekt Trigger die als je de bijbehorende nfc-tag scant. Dat opent heel wat mogelijkheden. Als je gebruikmaakt van IFTTT, kun je de nfc-tags via Trigger eenvoudig koppelen. Dat kan met IFTTT Webhooks. Klik je daar op Documentation, dan krijg je een url te zien. Kopieer die naar je Android-telefoon en plak de url daar in de actie van Trigger, en vervang {event} door een zelfgekozen naam van een gebeurtenis.
09 Laat IFTTT op je nfc-tag reageren
Als je nu je nfc-tag met je telefoon scant, roept Trigger de webhook van IFTTT aan met je ingevulde gebeurtenis, bijvoorbeeld ‘slapen’ of ‘opstaan’. Maar aan de kant van IFTTT gebeurt er nog niets mee. Daarvoor moet je eerst nog een applet aanmaken, dat die webhook als trigger (het If-gedeelte van If This Then That) gebruikt. Klik linksboven in de webinterface van IFTTT op My Applets en dan rechts op New Applet. Klik op de this en selecteer Webhooks. Klik erop en vul dan bij Event Name de naam van je gebeurtenis in, zoals slapen, en klik op Create trigger. Klik dan op that om te bepalen wat er moet gebeuren als je gaat slapen. Klik na het configureren van de actie op Create action en dan op Finish. Vanaf nu kun je iets via IFTTT laten gebeuren zodra je met je telefoon de nfc-tag scant.
©PXimport
10 Domoticz
Net zoals IFTTT een speciale url aanbiedt met Webhooks om op te reageren, bieden veel domoticasystemen via een speciale url toegang tot sensors en virtuele schakelaars. Bekijk voor de juiste vorm van die url de documentatie van je domoticasysteem. We tonen je hier tot slot hoe dat met het opensource domoticasysteem Domoticz in zijn werk gaat. Hoe de url eruit moet zien, vind je in de documentatie van de Domoticz API. Heb je bijvoorbeeld in Domoticz een scène ‘Slapen’ gedefinieerd die je rolluiken omlaag doet, al je verlichting uitschakelt en je pc uitzet, dan zoek je de scène in je lijst met apparaten en noteer je de waarde in de kolom Idx. Vul dan als url bij de actie van Trigger http://GEBRUIKER:WACHTWOORD@DOMOTICZURL:DOMOTICZPORT/json.htm?type=command¶m=switchscene&idx=ID&switchcmd=On in, met in plaats van ID het id van je scène en uiteraard ook met de juiste gebruikersnaam, wachtwoord, url en poortnummer van je Domoticz-installatie. Hetzelfde kun je nu doen voor een scène ‘Opstaan’.
Pauze bij meerdere acties
Als je meerdere acties gaat uitvoeren bij het scannen van een nfc-tag, dien je even op te letten. Stel dat je een scène in Domoticz wilt activeren en daarna je gsm op stil wilt zetten en de vliegtuigstand wilt inschakelen. Dan dien je een pauze in te lassen na het oproepen van de Domoticz-url en voordat je de vliegtuigstand inschakelt, anders krijgt Trigger mogelijk niet voldoende tijd om de scène te activeren. In Trigger vind je de actie Pauze in de categorie Applicaties & Snelkoppelingen.