• Home
  • Portfolio
  • Contact
  • Home
  • Portfolio
  • Contact

Meffec: Realtime app-triggerable show control infrastructuur

Technologieën:

Python, WebSockets, Qt, OSC, JavaScript, Expo, React Native, ESP32, Arduino, EasyEDA

Datum:

September 2024

Wat als je via een app met één druk op de knop je muziek, atmosferische soundscapes, DMX belichting én microcontroller projecten tegelijkertijd kunt aansturen? Meffec is een scriptable WebSocket based infrastructuur die dit mogelijk maakt.

Huh, wat?

Ik geef het toe, “realtime app-triggerable show control infrastructuur” geeft je waarschijnlijk geen levendig beeld van waar ik het nou eigenlijk over heb. Meffec is een software voor op de computer, maar het is ook en app, en ook een scripting platform. Het beknopt uitleggen van de functionaliteit is best lastig, zeker als je niet weet welk probleem Meffec oplost. Dus laat ik daar maar eerst een beeld van schetsen:

Je gaat Dungeons & Dragons spelen met je vrienden. Weet je wel, dat spel waarin volwassen mensen doen alsof ze een fictief personage zijn terwijl ze dobbelstenen gooien. Jij bent de spelleider en wil het voor je spelers zo meeslepend mogelijk maken. Je hebt op AliExpress wat goedkope lampen gekocht die je met een kabeltje via je laptop kan bedienen. Je hebt een paar Spotify playlists uitgezocht en wat natuur geluiden gedownload die je tijdens het spel kan afspelen. Je hebt zelfs een rookmachine gekocht! Aan de voorbereiding zal het niet liggen. Het spel begint en je spelers zijn groot fan van het mooie felle licht, de vrolijke muziek en de vogel geluiden. Met een klein beetje rook erbij geloven je spelers volledig dat het een mistige ochtend in de natuur is. Maar dan plots komt de wending in het verhaal! Je spelers worden helemaal meegezogen terwijl je in geuren en kleuren vertelt over een demoon die uit de diepste put van de hel komt kruipen, zijn scherpe tanden smekend om vers mensenvlees… Dit betekent maar één ding…  Eerst moet je de software van je lampen openen om ze te dimmen en op rood te zetten, daarna moet je Spotify openen om een nieuwe, spannendere playlist aan te zetten, je moet dan je vogelgeluiden uitzetten en nieuwe demonische klanken opzetten en daarna nog even op het knopje van je rookmachine drukken. Het duurt zo lang dat je je spelers alweer kwijt bent… Had je daar nou maar één knopje voor!

Alles met één knop

Met Meffec kun je een simpel Python scriptje schrijven die al deze losse elementen aanstuurt. De speciale scripting toolkit heeft versimpelde functies voor muziek, ambiances en OSC. Je scriptje wordt automatisch gesynchroniseerd met een app, waardoor je met één knop op je telefoon al deze dingen tegelijkertijd kan uitvoeren. Hier is een filmpje van het hele systeem in actie:

Infrastructuur

Hoe dit allemaal werkt is als volgt: Op een computer draait de Meffec Controller software. Deze software scant een map op scriptjes en stuurt deze data door naar een server. De server bewaart dit en stuurt het dan door naar de app. Als je op de app op de knop drukt, wordt het scriptje uitgevoerd door de controller software. Hier is een filmpje van hoe snel deze data in de app verschijnt:

Hardware integratie

Maar alleen geluid en licht bedienen is natuurlijk niet genoeg. Wat als je er ook andere elektronische apparaten mee kon bedienen? Of apparaten die je zelf hebt ontworpen? Dat kan!

Voor Meffec heb ik mijn eigen development board ontwikkeld op basis van een ESP32 en die laten produceren in China. Hiermee zijn de mogelijkheden enorm. Zo heb ik bijvoorbeeld mijn hele goedkope rookmachine omgebouwd zodat ik hem draadloos via Meffec kan bedienen.

Bekijk de source code voor dit project op GitHub
ICT Immersive Software development
(VORIGE)

Node Mailer: Nuke plugin voor het delen van node setups

(VOLGENDE)

Room Booker: Een open source kamer reserveringssysteem

Soortgelijke projecten

Immersive installatie voor mijn jaarlijkse Halloweenfeest
Immersive
Operator monitor voor immersive experience Helleveeg
ImmersiveSoftware development
Het ontwerpen en bouwen van de eerste mindfulness ruimte van de AHK
ImmersiveSoftware development