Loading
[ about ]

I’m Oluwafemi Bamigboye, a software developer with a background spanning medicine, civil engineering and art.

I take a user-centric approach to building solutions, which is why I focus on the experience design of the systems I create. These include websites and web apps, full-stack software, interactive systems and unified systems that combine hardware and software.

[ AI ]

The rapid development of AI over the past couple of years has made writing code more accessible, but it doesn’t replace the need for sound, well-designed architecture. Over the past year, I’ve been refining workflows built on software development standards and best practices, giving AI tools a grounded framework for integration and execution.

Another theme is the steadily improving cybersecurity capabilities of these models, and the resulting need to harden both current systems and the new ones we build.

Here’s some of my work

IHK final project 2025

Fürst-Pückler Commentary Station

BrightSignNeuroomnetRFIDPIR sensorUDP

A museum station that wakes when you approach and plays its film in your language.

Project title
Development of an application for an interactive commentary station (Entwicklung einer Applikation für eine interaktive Kommentarstation)
Role
Sole developer: requirements, architecture, implementation, testing, documentation
Context
IHK final project, application developer training at inSynergie GmbH
Timeframe
80 hours, 2025
Stack
BrightSign, BrightAuthor:connected, Neuroomnet, RFID, PIR motion sensor, UDP
Status
Delivered, signed off without reservations

Intro

Muskau Park lies on both sides of the German–Polish border, and its Villa Pückler exhibition follows the prince on his journey through the Orient. Visitors arrive from both sides of that border, so the museum wanted comment stations along the route that tell each story in German, Polish or English.

The stations had to meet two needs that pull in opposite directions: inviting enough to catch a visitor's eye, and quiet enough to run all day with no staff, little power in an empty room, and no technician for routine use. My job, as my IHK final project, was the software - a robust, low-maintenance system that autonomously controls the whole flow of the station.

Highlights

Four behaviors carry the project. Each is a problem I was handed and the decision I made.

AWakes on approach

A station must catch your eye, but it can't run its screen all day. So the screen stays in sleep mode until a visitor triggers the PIR motion sensor. The sensor is wired straight into the BrightSign player's input pins and the player passes the ping on to Neuroomnet, the central media control - no extra hardware anywhere. Neuroomnet wakes the station and starts the introduction film: a portrait comes to life and invites the visitor closer.

BLanguage from the ticket

A station cannot see which language the person in front of it prefers, so the language is decided at the ticket desk: staff pick it on a dashboard and scan the visitor's RFID ticket, which binds the two together in Neuroomnet's ticket list. At the station, the visitor taps the ticket; the reader's UDP message reaches a Neuroomnet script, which looks up the stored language and answers with the matching play command. Two modules carry this: the language-assignment dashboard with the logic behind it, and the Neuroomnet scripts that process the incoming UDP signals.

CNothing interrupts a film

On a busy floor, people walk past mid-film and tap their tickets out of curiosity. A film cut in half spoils the visit for everyone in the room. So while the main film plays, the station locks its ticket reader and ignores new sensor pings; the reader unlocks the moment the film ends.

DSleeps when the room empties

The energy requirement does not end when the film does. After each playback the application returns to a defined idle state, waiting for the next visitor; if the sensor stays quiet past a timeout, it drops into sleep mode until someone approaches again. Every state the station can be in is named and reachable - which is exactly what made every state testable.

Proof

  • 22 of 22 test cases passed; signed off without reservations
  • ~130 ms from ticket tap to play command, against a 2-second requirement
  • Delivered within the 80-hour budget
  • One application, running six or more stations

The whole loop

One top-level animation shows the entire system — everything a live demo would show, without hardware in the browser. Each step is a chip; each chip links to the highlight that explains it.

  1. Ticket desk - language assigned to the RFID ticket B
  2. Visitor approaches the station A
  3. PIR sensor triggers, signal to Neuroomnet A
  4. Station wakes and plays the intro A
  5. Portrait invites an RFID tap B
  6. Neuroomnet reads the stored language B
  7. Language-appropriate playback, input locked C
  8. Film ends, back to idle D
  9. Timeout, sleep mode D

Summary

The project was delivered in budget and signed off without reservations. It also threw me in at the deep end: networking and hardware integration were both new to me, and most of the hard problems lived in the gap between the two systems rather than inside either one - like the controller that silently ignored every message until I traced the traffic and found it expected a "#" at the end of each one. That lesson stuck: test on the real hardware, early. Working in visual tools taught me a second one - when there is no code to read, the structure of the states and messages is the design, so it has to be clear to the next person who opens it.

If I extended the system today, I would move the films and the language list into a central content management system, so the museum could update every station from one place.

Client: Stiftung Fürst-Pückler-Park Bad Muskau · Exhibition design: KOCMOC Exhibitions GmbH · Films: m box bewegtbild GmbH · Supervision at inSynergie: Lisa Rau, Martin Bosshart.

My part was the software. Hardware installation, on-site network setup and the films were handled by others.

Contact

0 / 3000