Infinithon 2019

Een verslag van onze jaarlijkse hackathon!

Op het randje van 2019 (nou, vooruit: net óver het randje) hielden we onze jaarlijkse hackathon. Dit jaar klusten de speciaal voor de gelegenheid samengestelde teams er vlijtig op los en met resultaat: 36 uur na de start van dit feest was Infi een racesimulator, een gepersonaliseerde deurbel, een sprekende vis en nog meer gekheid rijker.

Jeroen, Danny, Sander, Corné en Laurens doen verslag!

Team Deurbel

Stel je voor, je ziet (levensgroot) op het raam naast onze kantoordeur een semi-transparant overzicht van de aanwezige teams. Je bent blij verrast! Je kan direct al zien dat degene voor wie je komt aanwezig is.

Je wordt ook uitgenodigd om direct met Touch op het raam ‘aan te bellen’ – de bel gaat af, met custom ringtone. Degene die je ontvangt ziet dat direct in Slack, en drukt op een knopje om te laten weten dat ze de deur open gaan doen. Alle andere Infiërs zien dat ook, en bovendien zie jij op het raam door wie je wordt opgehaald!

Science Fiction? Neen! We hebben op de Infinithon 2019+1 een werkend prototype gebouwd. En als er een stemming voor een winnaar was gehouden, hadden we ongetwijfeld gewonnen!

deurbelcontent

Team Temperatuur

Met team Temperatuur hebben we aan een oplossing gebouwd om de temperatuur, luchtvochtigheid en CO2-niveaus zichtbaar te maken. Hiervoor hebben we gewerkt met de Wemos D1 Mini samen met een aantal shields. De sensordata wordt middels Domoticz verrijkt en naar de backend gestuurd, die de opslag in InfluxDB regelt en een API beschikbaar stelt aan de frontend. Allemaal zo ingeregeld dat updates aan de backend en frontend middels Ansible worden gereleased.

De technische uitdaging was om de hele keten op tijd te creëren, waarbij het begon met het solderen. Dan is het wel handig als je het niet op z’n kop soldeert, anders past het niet zo goed ;-). Toen er ergens rond het middaguur data binnenkwam, werd er hard aan de backend en de frontend gewerkt. Om het project af te ronden is er nog wat tijd na de Infinithon nodig om straks deze data op de schermen te tonen.

stevens_plaatje

Team Happininfinimeter

Tijdens de afgelopen Infinithon hebben Daniel, Wilco en ik gewerkt aan de Happininfinimeter! Hiermee kan iedereen bij binnenkomst aangeven hoe de ‘stress/drukte-index’ van die dag is voor hem/haar persoonlijk. Zit je wat minder lekker in je vel (moe, slecht geslapen, krakkemikkig), heb je last van stress, of gaat alles juist heerlijk? Laat het weten via het scherm bij de ingang! Zodra een stem wordt uitgebracht, toont de LED-strip langs de ramen hoe het overall gaat met iedereen die tot dan toe gestemd heft (in een combinatie van rood, geel of groen – uiteraard afhankelijk van de uitgebrachte stemmen).

Technisch gezien zat de belangrijkste uitdaging in de LED-strip langs de ramen. Tijdens een eerdere Inifinithon was deze strip al gemaakt met een API, maar die had nog geen ondersteuning voor wat wij wilden weergeven. Er moest dus een nieuwe versie van de API gemaakt worden, en die moest vervolgens op de Raspberry Pi gezet worden. Terwijl Wilco en ik bezig waren met de back- en front-end van de applicatie voor het stemmen, was Daniel druk bezig om uit te zoeken hoe ons gewenste patroon gemaakt kon worden op de LED-strip.

Natuurlijk ging het mis bij het uploaden van de nieuwe LED-strip API naar de Rapsberry Pi: ineens deed de LED-strip helemaal niks meer! Daniel is vervolgens een aantal uur bezig geweest om uit te vogelen wat daar misgegaan was, met hier en daar wat hulp van collega’s die de eerdere versie gemaakt hadden, en dat is uiteindelijk helemaal goed gekomen natuurlijk.

Zaterdag de schone taak aan met name Wilco om de applicatie die wij samen gemaakt hadden te koppelen aan de nieuwe LED-strip API van Daniel. Vanuit het zwembad en huis was ik bezig om de applicatie te fine-tunen, en heeft Wilco ervoor gezorgd dat het resultaat van de stemmen automatisch getoond wordt op de LED-strip langs de ramen. Benieuwd hoe het geworden is? Kom dan eens langs en breng je stem uit!

happinincontent

Team De Vis

Op het kantoor in Amsterdam hebben wij een Big Mouth Billy Bass waar we dagelijks gebruik van maken, maar het enige nummer dat deze vis zingt, “I will survive”, begon na een half jaar wel een beetje te vervelen. Ons doel was daarom om de vis te modden zodat we deze kunnen voorzien van onze eigen geluiden met bijbehorend gespartel. Om dit te bereiken was het masterplan om de vis uit te rusten met een arduino + motor shield voor de beweging, raspberry pi voor de geluidsbibliotheek en API waarmee we via de spiksplinter nieuwe Flutter app de vis kunnen aansturen, zie hier het UML diagram:

visdiagramcontent

Dit ging natuurlijk niet zonder slag of stoot; onze proefvis heeft het niet overleefd en we kwamen er na een uurtje kloten met de arduino achter dat motortjes liever stroom uit het stopcontact krijgen dan uit de laptop. Uiteindelijk is alles goedgekomen en begonnen we diep in de nacht al met stretch goals zoals Text To Speech, eigen geluiden uploaden via de app en nog meer. We kunnen dus weer jaren plezier hebben van onze vis Billy Bass.

Team Samagotchi

Bij Infi worden we vaak verblijd met de aanwezigheid van onze favoriete hond Sambal. Helaas is deze vrolijke snuiter er niet elke dag. Daarom heeft Niels de perfecte oplossing bedacht: Sambal in tamagotchi-vorm, oftewel een Samagotchi! Samen met Susanne, Joralf, Jolanda en Laurens is dit in elkaar gezet tijdens de Infinithon.

Omdat een Samagotchi wel handzaam moet zijn, hebben we gekozen voor een Raspberry Pi met een 2,7 inch e-ink scherm. Een uitdaging met dit scherm is dat het verversen tijd kost, dus we konden niet al te gekke animaties laten zien. Aan de andere kant kost het scherm weinig stroom en is het perfect afleesbaar in elk licht.

We hebben een lijstje gemaakt van de dingen die Sambal nodig heeft (zoals slapen, aandacht en VEEL wortels) en bij elke behoefte een bijpassend plaatje bedacht.

samagothcicontent_1

Daardoor kan het nog lastig zijn: als ze haar tong uit haar bek laat hangen, heeft ze dan honger of is ze gewoon moe? Als je niet oplet, wordt Sambal steeds verdrietiger. Gelukkig (of, volgens sommige teamleden, helaas) kan Sambal in de Samagotchi niet dood gaan. Met de knopjes onderaan het scherm kies je een bijpassende oplossing voor Sambals behoefte. Verwend als ze is komt er dan ook gelijk weer een nieuwe behoefte te voorschijn. Heb je even geen zin om voor de hond te zorgen, is er ook de optie om even lekker op je mobiel te gaan zitten. Die hond zorgt maar zelf voor haar eten, nu even tijd voor jezelf!

Al met al was dit een leuk project, waardoor we ons nu geen zorgen meer hoeven te maken als Sambal er niet is: de Samagotchi wil altijd wel een wortel. Woef!

En dan was er nog team Racesimulator, die – je raadt het al – een eigen racesimulator hebben gebouwd. Awesome! Binnenkort lees je hoe ‘ie precies werkt (en hoe je dit thuis ook kunt doen).

Infi maakt het allemaal waar:

browser-icon

Webapplicaties

Wij ontwikkelen webapplicaties op maat waarmee we jouw ideeën waarmaken. Maatwerkapplicaties gebouwd door ambitieuze nerds die niet schrikken van uitdagende logica, complexe databases, datamigraties of betaalomgevingen. Daarnaast verzorgen we ook de hosting, onderhoud en support. Wij willen jouw ideeën fixen. Wil je weten hoe?
Ontdek wat een webapplicatie voor je kan doen >

mobile-icon

Mobiele apps

We zijn nerds met liefde voor softwareontwikkeling, dus ook voor de ontwikkeling van mobiele applicaties (apps). Native apps voor iOS en Android, maar ook voor mobiel gebruik geoptimaliseerde webapplicaties. Wij weten wat erbij komt kijken en hebben de kennis voor web, iOS en Android allemaal in huis. Wil je weten wat het beste bij je past? 
Ontdek wat een mobiele app voor je kan doen >

Ben jij onze nieuwe ontwikkelheld(in)?

› Dit kun je verwachten als jij je aanmeldt.

Wil je iets waarmaken met Infi?

Wil jij een eigen webapplicatie of mobiele app waarmee jij het bij anderen maakt?

Waargemaakt door de nerds van Infi.
Nerds met liefde voor softwareontwikkeling en die kunnen communiceren. En heel belangrijk: wat we doen, doen we met veel lol!

Wij willen het fixen. Laat jij van je horen?