ID.nl logo
Nooit meer een valse melding van je ip-camera
© PXimport
Zekerheid & gemak

Nooit meer een valse melding van je ip-camera

Het is interessant om enkele ip-camera’s op te hangen, maar als de nieuwigheid eraf is, worden de beelden nog maar zelden bekeken. Bewegingsmeldingen kunnen helpen, maar worden door veel valse meldingen ook al snel genegeerd. Met Frigate NVR detecteer je veel nauwkeuriger personen, dieren en objecten, geholpen door een AI-model. Ook kun je handiger inspelen op meldingen door een integratie met Home Assistant.

In dit artikel laten we in enkele stappen zien hoe je Frigate NVR installeert en optimaliseert, zodat je alleen nog maar een melding van je ip-camera krijgt als dat echt nodig is.

  • Installatie van Frigate NVR via Docker of Home Assistant
  • Ip-camera instellen met de juiste streams
  • Streams configureren
  • Stream optimaliseren
  • Personen en objecten detecteren
  • Gebieden en zones aangeven die voor ongeweste detecties zorgen

Lees ook: Houd toezicht op je huis en tuin: 12 beveiligingscamera's met app getest

Code downloaden In deze workshop worden wat voorbeelden van stukken code gegeven. Omdat overtikken van code erg foutgevoelig is, kun je die code beter downloaden en daarna bekijken of kopiëren. Je vindt de code in het bestand frigcode.txt.

De meest praktische methode om beelden van ip-camera’s op te nemen, is een network video recorder (NVR). Alles wordt dan centraal én lokaal verwerkt. Bekende opties zijn Blue Iris, Synology Surveillance Station, Unifi Protect en Frigate NVR. Steeds vaker wordt AI toegepast. Niemand heeft immers zin om de hele dag naar camera-feeds te kijken. Liever ontvang je een melding als er echt iets interessants gebeurt, zonder overvloed aan valse meldingen natuurlijk.

Blue Iris biedt slimme detectie met CodeProject.ai of DeepStack. Maar de afhankelijkheid van Windows is voor velen een probleem. Frigate NVR is een andere bekende optie en werkt onder Linux. Recent verscheen een grote update naar 0.12.0 waar we in dit artikel mee aan de slag gaan. Aantrekkelijk is de detectie van objecten en personen die je kunt versnellen met onder meer een Google Coral Edge TPU: een kleine chip die machinelearning-taken kan uitvoeren voor een snellere en efficiëntere verwerking. Deze chip gaan we ook gebruiken. Optioneel zorgt een integratie met Home Assistant voor nog meer slimme bewakingsmogelijkheden.

01 Installatie via Docker

Een gebruikelijke manier om Frigate te installeren is via Docker met Compose. Voor je docker-compose.yml-bestand kun je het voorbeeld gebruiken dat je vindt op de installatiepagina van Frigate. Waar je vooral op moet letten, zijn de volumes voor het configuratiebestand (config.yml) en media, zoals opnames en snapshots. Voor media is om te beginnen een paar gigabyte genoeg. Daarna hangt de benodigde ruimte vooral af van het aantal dagen waarvan je opnames gaat bewaren.

Voordat we Frigate gaan starten, zorgen we eerst voor de juiste camerastreams. Als deze streams werken, gaan we verder met de detectie van personen en objecten.

Voor de installatie kun je onder andere Docker Compose gebruiken.

02 Installatie via Home Assistant

Frigate kun je ook als add-on installeren onder Home Assistant OS. Let er in dat geval wel op dat singleboardcomputers, zoals de Raspberry Pi en Odroid N2+, die vaak voor Home Assistant worden gebruikt niet altijd snel genoeg zijn. Vooral bij objectdetectie met meerdere camerastreams kun je zonder extra hardware tegen beperkingen aanlopen.

Voor de installatie voeg je deze repository toe aan de add-on-winkel, waarna je Frigate eenvoudig kunt installeren: https://github.com/blakeblackshear/frigate-hass-addons.

Voor de configuratie van Frigate maak je een bestand frigate.yml in de configuratiemap (/config) van Home Assistant.

Hier installeren we Frigate als add-on voor Home Assistant.

03 Welke ip-camera?

Voor Frigate gebruik je bij voorkeur een ip-camera die H.264 ondersteunt, wat gelukkig heel gangbaar is. Hoewel het nieuwere H.265 een betere compressie geeft, is de compatibiliteit met browsers en Home Assistant niet optimaal. Een camera sluit je voor de beste stabiliteit aan via een netwerkkabel. Voor het gemak kun je Power over Ethernet (PoE) gebruiken, waarbij de camera vanuit de switch of een PoE-injector voeding krijgt via diezelfde netwerkkabel.

Het is een pluspunt als de camera meerdere streams kan aanbieden met verschillende resoluties. Je kunt dan opnemen in de hoogste resolutie en voor objectdetectie een lagere resolutie gebruiken, zonder dat je deze streams hoeft om te zetten. Bekende merken die vaak worden aanbevolen, zijn Dahua, Hikvision en Amcrest.

In dit artikel gebruiken we een camera van Hikvision. Het is raadzaam een camera te kiezen die RTSP-streams ondersteunt. Daar gaan we in dit artikel ook mee werken. Controleer in andere gevallen de compatibiliteit van jouw camera. In de documentatie van Frigate vind je nog andere opties om streams op te halen van bekende camera’s.

In de documentatie vind je diverse camera-specifieke configuraties.

04 Hoofdstream voor opnames

We gaan eerst de camera instellen zodat deze de juiste streams aanbiedt met de juiste resolutie en framerate. Open daarvoor de configuratie van jouw ip-camera. De camera van Hikvision kun je via de browser configureren. We gaan twee streams gebruiken: een hoofdstream voor het maken van opnames en een substream voor objectdetectie en snapshots. Voor de hoofdstream kiezen we de hoogst mogelijke resolutie (in dit geval 2688 × 1520 pixels) en een beeldfrequentie (framerate) van naar voorkeur 15 fps. Bij de optie i-frame-interval vullen we 30 in. Zorg dat H.264 is geselecteerd als je die keuze hebt en gebruik geen opties als H.264+.

Voor de opnames gebruiken we de hoogst mogelijke resolutie.

05 Substream voor detectie

De camera van Hikvision ondersteunt naast de hierboven genoemde hoofdstream ook een substream. Standaard is de hoogste resolutie voor die substream 640 × 480 pixels. Optioneel kun je via de systeeminstellingen nog een derde stream instellen. Die biedt een hogere resolutie, tot 1280 × 720 pixels. Dat heeft onze voorkeur en daarom kiezen we ervoor deze derde stream in te schakelen. Hiermee verlies je wel opties als gezichtsherkenning door de camera zelf, H.264+ en H.265+, maar die zijn niet nodig voor deze toepassing. Verder selecteren we H.264. Voor de substream selecteren we een resolutie van 1280 × 720 pixels, en een beeldfrequentie en i-frame-interval van 6 fps. Meer is voor detectie niet nodig.

Voor de detectiestream mag je een lagere resolutie kiezen.

Test de cameraverbinding We raden je aan om met een programma als VLC media player de verbinding met je camera via RTSP te controleren. Hiervoor installeer je www.videolan.org. Kies dan onder Media de optie Netwerkstream openen en blader naar de url. Voor onze camera van Hikvision is dat rtsp://gebruiker:wachtwoord@ipadres:554/Streaming/Channels/101 voor de hoofdstream. De derde stream is beschikbaar via rtsp://gebruiker:wachtwoord@ipadres:554/Streaming/Channels/103. Zulke streams zijn voor elke ip-camera anders.

Test de verbinding met je camera via RTSP met bijvoorbeeld VLC media player.

06 Configuratie

We beginnen met het toevoegen van de detectiestream. Daarvoor zetten we de onderstaande regels in het configuratiebestand config.yml. We geven hierin de camera een naam (oprit), configureren we de RTSP-stream en definiëren we de resolutie, maar zetten we de detectie nog even uit:

De code kun je bekijken in het bestand frigcode.txt, te downloaden via deze pagina.

Je kunt Frigate nu starten met dit commando in dezelfde map als het bestand docker-compose.yml:

docker compose up

Met dit commando krijg je in de terminal meldingen te zien. Als alles werkt, kun je Frigate ook als achtergrondproces starten met deze opdracht:

docker compose up -d

De parameter -d staat voor daemon. Je krijgt dan geen meldingen te zien. Je kunt dan de terminal sluiten zonder Frigate te stoppen. Als je na het starten met een browser naar http://ipadres:5000 bladert, zie je als het goed is de beheerdersomgeving met een beeld van de camera. Verander als het werkt achter detect de optie enabled naar True en herstart je container. Hierna zullen personen worden gedetecteerd.

We testen de detectiestream via de beheeromgeving van Frigate.

07 Optimalisaties toepassen

Als de stream werkt, kun je enkele optimalisaties gaan toepassen. Bij de huidige configuratie zal ffmpeg de processor gebruiken voor het (softwarematig) decoderen van de streams. Het is verstandig hardwareversnelling te gebruiken als je die mogelijkheid hebt. Hoewel een losse grafische kaart kan worden gebruikt, is een geïntegreerde gpu meer dan toereikend. Voor de negende generatie Intel-processor die we in dit artikel gebruiken, voegen we de parameter preset-vaapi toe als parameter onder ffmpeg.

De code kun je bekijken in het bestand frigcode.txt, te downloaden via deze pagina.

Vanaf de tiende generatie gebruik je preset-intel-qsv-h264. In de documentatie van Frigate vind je nog aanwijzingen voor verschillende andere systemen. Na het maken van de aanpassing zul je de Docker-container opnieuw moeten starten. Als je daarna via de beheerdersomgeving naar System gaat, zie je of een gpu wordt gebruikt voor hardware-versnelling.

Via de systeempagina kun je controleren of hardwareversnelling wordt gebruikt.

08 Detecteren personen en objecten

Frigate zal bij elke detectie een gebeurtenis maken met daarbij een clip en/of snapshot. Op het snapshot zie je een afbeelding van de gedetecteerde persoon met een kader eromheen en een percentage dat aangeeft hoe zeker het model is dat het een persoon is.

Behalve personen kun je ook bijvoorbeeld honden, katten, paraplu’s, auto’s, fietsen of paarden laten detecteren via sleutelwoorden die je aan de configuratie toevoegt. In de documentatie bij Frigate vind je een enorme lijst met opties. Ook deze opties worden als gebeurtenis toegevoegd en je kunt hier eventueel op filteren. Daarnaast kun je bijvoorbeeld ook op camera en datum filteren.

Standaard zal Frigate de processor gebruiken voor detectie. Dit gaat doorgaans prima met enkele streams, afhankelijk van de resolutie van de detectiestream en de snelheid van de processor. Een speciale detector kan de taken wel enorm versnellen. Bekende opties zijn TensorNT voor grafische kaarten van Nvidia en OpenVINO die werkt op niet al te oude Intel-systemen. De tijd die het AI-model nodig heeft om uitvoer te genereren, ook wel inference speed genoemd, is, afhankelijk van je opstelling, veel korter met zulke detectors. Een Google Coral Edge TPU (zie het gelijknamige kader), onder meer verkrijgbaar in usb-uitvoering, is een van de populairste opties. Alleen is de beschikbaarheid soms beperkt door de snelle opmars van AI.

De detectie van personen gaat veel sneller met speciale hardware.

Google Coral Edge TPU Bij machinelearning worden vaak krachtige servers in de cloud gebruikt. Erg snel en efficiënt is dat echter niet en er zijn voor bepaalde toepassingen zorgen over privacy. Met een zogeheten Edge TPU kun je lokaal je machinelearning-taken versnellen. De Google Coral Edge TPU is een populaire optie, verkrijgbaar als usb-dongel of mini-PCIe-adapter.

Hij is ontwikkeld voor het TensorFlow-platform van Google, een opensource-softwarebibliotheek. Frigate gebruikt die bibliotheek voor het detecteren en identificeren van personen en objecten. Het achterliggende model is daarbij getraind voor bijvoorbeeld personen, auto’s, dieren of andere objecten. De Edge TPU zal de detectie enorm versnellen, waardoor de processorbelasting in Frigate tot een minimum beperkt kan blijven. Dit merk je zeker in het stroomverbruik en daarmee de kosten voor 24x7-gebruik. Helaas is met name de usb-variant soms lastig te verkrijgen en al wat prijziger dan voorheen. De uitvoering met mini-PCIe is eenvoudiger te verkrijgen, maar let op: deze past niet in elk M.2-slot.

De kleine Google Coral Edge TPU kan objectdetectie enorm versnellen.

09 Coral Edge TPU toevoegen

Voor dit artikel gaan we de usb-uitvoering van de Coral Edge TPU gebruiken. Je hoeft op de host in principe geen drivers te installeren voor de detector, omdat je deze doorgeeft aan de Docker-container, zoals je in docker-compose.yml kunt zien. De container bevat alle vereiste drivers. In de configuratie van Frigate voeg je de volgende regels toe:

De code kun je bekijken in het bestand frigcode.txt, te downloaden via deze pagina.

Het is overigens wel handig wat drivers en software te installeren op je Docker-systeem, zodat je kunt testen of het apparaat werkt. Zeker als je zoals in onze situatie een Linux-container in Proxmox gebruikt en de hardware voor die container beschikbaar wil maken, wat soms een uitdaging kan zijn. Voor het testen kun je de instructies van Coral volgen. Merk op dat de gebruikte PyCoral-bibliotheek beschikbaar is voor ten hoogste Python 3.9. Debian 11 en Ubuntu 20.04 hebben een nieuwere Python-versie. Eventueel kun je de oudere Python-versie dan via pyenv installeren om de test te doen. Na enkele installatiestappen kun je een model testen met de afbeelding van een papagaai.

Volg de instructies bij Coral voor het testen van de detector.

10 Gebieden maskeren

Het is nuttig om bepaalde gebieden op het camerabeeld die ongewenste detecties geven te maskeren om de systeembelasting te beperken. Denk bijvoorbeeld aan een overhangende struik die beweegt in de wind.

Je kunt zien welke gebieden veel detecties geven. Open hiervoor het camerabeeld, klik op Show options en zet een vinkje bij Motion boxes. Je ziet nu rode vakjes op het camerabeeld rond plekken weer beweging werd gedetecteerd. Klik op Mask & Zone creator. Klik op Add om een eerste masker toe te voegen. Klik op het camerabeeld op plekken waar je een punt toe wil voegen of houd een punt ingedrukt om deze te verslepen. Je ziet nu een hele reeks coördinaten die je handmatig aan je configuratie moet toevoegen bij de betreffende camera, bijvoorbeeld:

De code kun je bekijken in het bestand frigcode.txt, te downloaden via deze pagina.

Hierna moet je Frigate herstarten. Je kunt meerdere maskers toevoegen voor verschillende gebieden in het beeld. Uiteraard kun je dit ook bij andere camera’s doen.

Bekijk welke gebieden ongewenste detecties geven, zodat je die kunt maskeren.

Zones aanwijzen

Binnen je beheeromgeving kun je zones aanmaken voor delen van je camerabeeld. Dat werkt vergelijkbaar met het maskeren van gebieden. Op het beeld van je oprit wijs je bijvoorbeeld een apart gedeelte aan met daarin de voordeur. Vaak zul je immers extra geïnteresseerd zijn in personen die voor de voordeur staan.

Zones helpen je ook om ongewenste meldingen tegen te gaan. Neemt de camera bijvoorbeeld een stukje van de weg mee, dan helpen zones je om auto’s die langsrijden of personen die langslopen te negeren, door jouw terrein als zone in te stellen. In je configuratie voeg je de zones dan weer toe bij de betreffende camera:

De code kun je bekijken in het bestand frigcode.txt, te downloaden via deze pagina.

11 Opnames en snapshots

Voor opnames in hoge kwaliteit kun je voor de betreffende camera een extra stream toevoegen met onder roles de optie record. Als je geen aparte stream hebt, kun je eventueel de stream die je voor detectie gebruikt deze extra rol geven. Verder zetten we opnames (onder record) aan met enabled: True. Voor snapshots doen we hetzelfde onder snapshots. Hier wordt de detectiestream voor gebruikt.

Let op: als bepaalde opties in het configuratiebestand uitstaan, heeft het geen effect als je ze via de beheerdersomgeving aanzet! Dat geldt onder meer voor opnames en snapshots. De totale configuratie voor de bewuste camera ziet er dan als hieronder uit:

De code kun je bekijken in het bestand frigcode.txt, te downloaden via deze pagina.

Standaard zal Frigate gebeurtenissen van de laatste tien dagen bewaren, maar je kunt dit op allerlei manieren aanpassen.

De uiteindelijke configuratie voor de betreffende camera.

Geavanceerde opties benutten Frigate geeft je ook nog diverse geavanceerde opties. Zo kun je met wat parameters de detectie nog wat verbeteren, om de incidentele valse melding ook nog tegen te gaan. Ook kun je go2rtc gebruiken, zodat andere systemen zoals Home Assistant de RTSP-streams bij Frigate zelf op kunnen vragen en niet bij de camera (die dat vaak niet aankan).

Ook is integratie met Home Assistant mogelijk. Je kunt dan eenvoudig via Blueprints automatiseringen maken, die zorgen dat je bijvoorbeeld voor bepaalde zones een notificatie ontvangt met clip en snapshot van de gedetecteerde persoon. Merk op dat je voor die integratie een MQTT-broker nodig hebt (bijvoorbeeld de Mosquitto-broker-add-on van Home Assistant), die je dan ook in je configuratie van Frigate moet opnemen.

▼ Volgende artikel
Spreek en luister: ChatGPT als gesprekspartner
© Limitless Visions - stock.adobe.com
Huis

Spreek en luister: ChatGPT als gesprekspartner

ChatGPT kan steeds meer en luistert tegenwoordig ook naar de prompts (opdrachten) die een gebruiker inspreekt. Bovendien leest de chatbot zelfs de uitgebreide antwoorden voor. Hardop voorlezen werkt zelfs met negen natuurlijk klinkende stemmen.

In drie stappen laten we de spreek- en luisterfunctie van ChatGPT zien:

  • Spreek prompts in door op de microfoonknop te tikken
  • Laat ChatGPT de antwoorden voorlezen
  • Kies uit negen verschillende stemmen

Typen te veel gedoe? Lees dan zeker ook: Geen toetsenbord meer nodig: laat je stem het werk doen

Opdrachten inspreken

OpenAI heeft de spraakfunctie voor ChatGPT voor iedereen beschikbaar gemaakt. In het begin was deze functie uitsluitend bedoeld voor wie een Plus- of Enterprise-abonnement had. Natuurlijk moet je via de instellingen van je mobieltje toestemming geven aan ChatGPT voor het gebruik van de microfoon. Als dat is geregeld, open je de app en tik je onderaan op de microfoonknop. Een animatie reageert op je stem en als je klaar bent met praten, tik je op het vinkje in de zwarte cirkel. De app zal wat je gezegd hebt razendsnel weergeven. Ben je tevreden over de formulering, dan tik je op het pijltje. ChatGPT genereert meteen het antwoord en onderaan verschijnt opnieuw de microfoonknop om de volgende opdracht in te spreken.

Een animatie reageert op je stem.

Antwoorden beluisteren

Vervolgens druk je in de mobiele versie lang op de tekst die de chatbot heeft gegenereerd, zodat er een aantal functies verschijnt. Daar kies je de opdracht Voorlezen. Na enkele seconden hoor je een stem die het antwoord voorleest.

Bovenaan zie je een klein gedeelte waarin je het voorlezen kunt pauzeren en met twee knoppen kun je de tekst vijftien seconden terugspoelen en vooruitspoelen.

In de desktop-versie van ChatGPT zie je onder het antwoord het pictogram van een luidspreker. Daar moet je op klikken om de stem van ChatGPT te horen. Klik dus niet met rechts op de tekst om in het contextueel menu de opdracht Spraak te selecteren. Daarmee start je de voorleesfunctie van de browser en die is niet zo goed.

Boven de tekst kun je het voorlezen pauzeren.

Over voorlezen gesproken ...

Kinderen vinden het heerlijk!

Kies een andere stem

Zowel in de mobiele versie als in de desktopversie heb je de keuze uit negen stemmen. In de Android- en iOS-versie moet je naar het beginscherm gaan van de app, waar je onderaan je gebruikersnaam ziet staan. Tik op de drie puntjes en selecteer Spraak. Je krijgt de stem te horen; ze klinken natuurlijk. Sol is ‘gevat en ontspannen’ en van Ember zegt de app dat hij ‘vol vertrouwen en optimistisch’ klinkt. Maak je keuze door op Gereed te tikken.

In de desktop-versie klik je rechtsboven op de profielknop om de Instellingen te openen. Ook daar kun je dan een van de negen stemmen selecteren.

Van iedere stem lees je de vermeende eigenschappen.

Watch on YouTube
▼ Volgende artikel
Waar voor je geld: 5 alles-in-één laserprinters voor een mooie prijs
© Tim Allen
Huis

Waar voor je geld: 5 alles-in-één laserprinters voor een mooie prijs

Bij ID.nl zijn we gek op producten waar je niet de hoofdprijs voor betaalt. Een paar keer per week speuren we daarom binnen een bepaald thema naar zulke deals. Een all-in-one-printer is een handig apparaat voor het scannen, kopiëren en printen van documenten en foto's. De allerbeste afdrukkwaliteit krijg je met een laserprinter. Wij vonden vijf betaalbare modellen voor je.

Een laserprinter maakt gebruik van toner in plaats van inkt om afdrukken te produceren. Toner is een fijn poeder dat met hoge temperaturen op het papier wordt gesmolten. Dit proces zorgt ervoor dat je met grote toners kunt printen, wat betekent dat je langere tijd kunt blijven afdrukken zonder de toner te hoeven vervangen. Laserprinters zijn vaak snel en efficiënt, waardoor ze uitstekend zijn voor gebruik op kantoor. Maar ook als je thuis veel print, bijvoorbeeld als zzp'er, kan een laserprinter uitkomst bieden.

HP Color Laser 179fnw

De HP Color Laser MFP 179fnw is een van de kleinste kleurenlaserprinters in zijn klasse en is daardoor ideaal voor thuisgebruik en plekken waar niet veel plek voor een printer is. Met functies zoals printen, scannen, kopiëren en zelfs nog faxen biedt deze 4-in-1 printer een hoop veelzijdigheid. De afdruksnelheid bedraagt tot 18 pagina's per minuut in zwart-wit en 4 ppm in kleur, met een resolutie van 600 x 600 dpi.

Dankzij de automatische documentinvoer (ADF) voor 40 pagina's en wifi-verbinding is deze printer gebruiksvriendelijk en multi-inzetbaar. Hoewel de afdruksnelheid lager ligt dan bij sommige concurrenten, is zijn compacte formaat juist een pluspunt.

Brother DCP 1610W

De Brother DCP-1610W is een compacte zwart-wit laserprinter die printen, kopiëren en scannen combineert. Met een afdruksnelheid van 20 pagina's per minuut en een resolutie van 2400 x 600 dpi levert hij haarscherpe resultaten. Dankzij wifi-connectiviteit kunnen meerdere gebruikers eenvoudig draadloos printen.

De papierlade biedt plaats aan 150 vellen en het apparaat is voorzien van anti-jam-technologie om papierstoringen tot een minimum te beperken. In vergelijking met de HP Color Laser MFP 179fnw biedt deze printer geen kleurafdrukken, maar hij is wel een stuk sneller met zijn afdrukken.

HP Laserjet Pro 2Z622

De HP LaserJet Pro 2Z622 is geschikt voor onder meer kantooromgevingen. Met afdruksnelheden tot 42 pagina's per minuut en functies zoals dubbelzijdig printen, scannen, kopiëren en faxen is dit een lekker veelzijdige 4-in-1-laserprinter. Het apparaat ondersteunt zowel bekabelde als draadloze netwerken en biedt geavanceerde beveiligingsfuncties.

Canon i-SENSYS MF272wd

De Canon i-SENSYS MF272dw is een monochrome laserprinter en drukt af met en snelheid van 29 pagina's per minuut. Met een resolutie van 2400 x 600 dpi levert hij snelle en scherpe resultaten. Dankzij automatische dubbelzijdige afdrukken, wifi- en ethernetverbinding is hij veelzijdig inzetbaar.

In vergelijking met de Brother DCP-1610W levert deze Canon i-SENSYS MF272dw snellere prestaties en meer connectiviteitsopties, hoewel hij geen kleurendruk ondersteunt; dan moet je toch echt bij de HP Color Laser MFP 179fnw zijn.

Xerox B225 A4

De Xerox B225 is een zwart-wit all-in-one-laserprinter die printen, kopiëren en scannen combineert. Met een afdruksnelheid van maar liefst 34 pagina's per minuut en een eerste afdruktijd van slechts 6,4 seconden is hij goed in te zetten als je veel en vaak print. De printer beschikt over automatische dubbelzijdige afdrukken, een papierlade voor 250 vellen en kan via wifi of een vaste netwerkverbinding met je thuisnetwerk worden verbonden.