Ik stel u prototype 3 van The Open Music Box voor: een audiospeler voor kinderen die met NFC-kaartjes wordt aangestuurd, en vooral een volwaardig open source systeem dat eender wie kan namaken vanuit een Raspberry Pi.
Maar vooraleer wij de doos opendoen, een woordje over het afgelegde traject. In het vorige artikel stelde ik u het tweede prototype voor en zijn grote nieuwigheid, de playlists, die mijn zoontje graag doorbladerde met de twee knopjes vooraan. Er bleef nog één punt dat verbetering vroeg: de behuizing was te compact om een batterij in onder te brengen. Altijd op het stopcontact, en één à twee minuten wachten bij elke herstart. De v3 zet die voortdurende verbetering verder: een afgewerkte versie, klaar om de oude te vervangen, en dit keer ook klaar om gedeeld te worden.

Een interface om de inhoud te beheren
Op de v2 betekende het toevoegen van een verhaal: via SSH inloggen, MP3-bestanden in de juiste map droppen, een script starten om de kaartkoppeling voor de nieuwe playlists in gang te zetten, en daarna de service herstarten. Niet echt familievriendelijk...
Daarom heb ik een webinterface ontwikkeld die rechtstreeks door de Raspberry Pi wordt aangeboden. Vanaf eender welke smartphone of computer op hetzelfde netwerk kunt u playlists aanmaken, audiobestanden uploaden en een NFC-kaartje aan een playlist koppelen. Zonder terminal, zonder bestandsmanipulatie.

Alles wat moet gebeuren, kunt u vanuit dit scherm doen. De doos weerspiegelt onmiddellijk wat aan smartphonezijde verandert, en omgekeerd.

Het uploaden gebeurt via drag-and-drop, bestand per bestand, met een voortgangsbalk.

Het koppelen van een NFC-tag volgt dezelfde logica: u start de koppelmodus vanuit de interface, u biedt het kaartje aan bij de lezer en het is gelinkt aan de playlist. Geen handmatige manipulatie van identifiers meer.

Een batterij om het toestel mobiel te maken
Aan de hardwarekant was de grote werf van de v3 om eindelijk een batterij in de behuizing onder te brengen, zodat het netstroomsnoer overbodig werd. Ik heb de buitenkant dus opnieuw getekend, vertrekkend vanuit de batterij: eerst die afmeten, en daarna al de rest eromheen organiseren.
Binnenin is een LiPo-batterij verbonden met een kleine kaart die via USB oplaadt en in autonome modus overschakelt zodra u de stekker uittrekt. Op papier loste dat het probleem op: geen snoer meer aan het been, geen wachttijd meer bij de start.
Behalve dat de overschakeling tussen USB-voeding en batterij in de praktijk een micro-stroomonderbreking veroorzaakt, waardoor de Raspberry Pi herstart. Resultaat: wij hebben mobiliteit gewonnen, maar de wachttijd van één à twee minuten blijft.
Geen drama, u organiseert zich daar wel rond, maar wel behoorlijk frustrerend. Ik heb geprobeerd om condensatoren toe te voegen om de stroom uit te vlakken, maar ik ben geen elektronicus en dit probleem houdt tot op vandaag aan.
Knopjes voor de interactieve verhalen
Tijdens het ontwerp van de v3 begon ik na te denken over interactieve verhalen: een audioverhaal waarbij het kind het vervolg kiest door op een knopje te drukken. Daarvoor volstonden twee knopjes vooraan niet meer, het moesten er vier worden, voor een maximum aan interactiviteit.
Ik heb die vier gekleurde knopjes dus bovenop de behuizing geplaatst. Het is meteen ook de kans op een betere ergonomie: een druk op het deksel is aangenamer om mee te werken, en zo wordt de doos niet meer weggeduwd wanneer u erop drukt.
Het formaat van de interactieve verhalen is nog in de maak, maar de behuizing is nu al klaar om ze te ontvangen op de dag dat alles in orde is.
De behuizing maken
De uiteindelijke behuizing volgt dezelfde logica als die van de v2: een 3D-geprinte structuur opgevat als het skelet van een kubus, met plaatjes van MDF, uitgesneden met de laser voor de zijvlakken. Wat verandert: de afmetingen, de openingen voor de nieuwe knopjes bovenop, een toegang tot de batterij langs onder zonder dat alles uit elkaar moet, en een verfijndere structuur.
Om die kubusvormige structuur in één stuk te kunnen printen, was heel wat afstelling nodig. De uitdaging zaten in de lange bruggen van wand tot wand: ze moesten zich netjes leggen zonder door te zakken, en de supports moesten daarna zonder sporen verwijderd kunnen worden.

Heel wat geofferde prints alvorens tot een nette afwerking te komen.

Eens de structuur geprint, bleef er nog een andere oefening over: de maatvoering doen kloppen tussen de interne plaatjes die de componenten dragen, de geprinte stukken, en de met de laser uitgesneden houten panelen. Drie fabricagetechnieken, drie verschillende nauwkeurigheden, allemaal op één lijn te krijgen. Ik ben er uitgekomen met heel veel bijgeleerd over de kalibratie van een 3D-printer en de instellingen die echt het verschil maken voor de eindkwaliteit.
Het systeem reproduceren
Prototype 3 werkt, het draait elke dag bij ons thuis. Er bleef nog een laatste stap om er echt een project van te maken: het reproduceerbaar maken.
Voorlopig is het vooral de applicatie die beschikbaar is: de code is werkend op GitHub, en een configuratiescript bereidt de Raspberry Pi automatisch voor, van de installatie van de afhankelijkheden tot het opstarten van de service. Niet-commerciële licentie, vrij voor persoonlijk gebruik, voor educatieve doeleinden, en voor aanpassingen.
Aan de behuizingskant zijn de STL-bestanden en de BOM nog in afwerking. Ik publiceer ze liever pas wanneer ze echt klaar zijn om gevolgd te worden. Het komt eraan, en ik antwoord op de vragen die gesteld worden via issues.
En daarna
Deze Raspberry Pi-versie is een eindpunt, maar ook een kantelpunt. In dagelijks gebruik is hij duur, verbruikt hij veel, start hij traag op en heeft hij een volwaardig besturingssysteem nodig voor wat in wezen een door NFC aangestuurde audiospeler is. Het is te veel voor wat het doet. Ik heb veel (te veel) tijd aan deze proof of concept besteed, en het is tijd om die bladzijde om te draaien naar meer geschikte componenten.
Daarom is de Raspberry Pi-repo als afgeschreven gemarkeerd op GitHub: het vervolg vraagt op dit moment al mijn energie, en ik zal het in het volgende artikel toelichten.
Dat gezegd zijnde, deze versie blijft open source, beschikbaar en bruikbaar voor wie er mee aan de slag wil. De code staat er, werkend. De bestanden van de behuizing volgen. Als u uw eigen versie bouwt, laat het mij dan weten.