Clayton Wiley

Embedded Systems Engineer

Automation · Real-Time Control · Distributed Systems

Automated Theater Follow Spot

Raspberry Pi + infrared beacon tracking for autonomous DMX spotlight control

PythonCOpenCVRaspberry PiDMX512Computer VisionReal-TimeEmbedded SystemsHardware Design

Automated follow spotlights are a solved problem... if you have tens of thousands of dollars to spend on a BlackTrax system, Robe RoboSpot, or any of the other proprietary industry leaders. My senior thesis tackled the same usecase with a Raspberry Pi, a $125 DMX interface, and some infrared LEDs soldered to a battery pack.

The system sits inline on a DMX512 universe between the lightboard and the moving light, behaving as a passive repeater until tracking is engaged. Once activated, it overwrites only the pan/tilt position channels while passing everything else — color, intensity, focus — through untouched. Any theater company that already owns a moving light can drop this module into their existing rig without touching their lightboard or buying fixture-specific hardware. Estimated reproduction cost: ~$130.

ModuLit

PoE-powered modular LED lighting system to replace traditional string lights

Embedded SystemsPower over EthernetLED ControlSTM32Hardware DesignProduct DevelopmentStartup

Lighting a single tree in Monterey costs up to $6,000 in materials and labor. We heard that directly from Thys Norton at the City of Monterey — and it was one of a dozen conversations with Parks & Rec departments, commercial installers, and church AV integrators that confirmed the same thing: traditional string lights are a universal pain point that nobody has adequately solved.

ModuLit replaces the monolithic string with short, individually addressable LED modules that connect through a common interface. Snap them end-to-end for a classic string, branch them for icicle or mesh displays, or build fully custom layouts. A single PoE-powered host controller manages the entire installation — one plug, one point of control, no high-voltage runs across your yard. We built and pitched this as a funded startup venture, completing working prototypes and validating demand across consumer, municipal, and commercial segments before seeking $500K in seed funding.

LabLink

Distributed wireless queue management system for SCU teaching labs

FreeRTOSSTM32Bluetooth LEWiFiEmbedded CRTOSPCB DesignDistributed Systems

LabLink is a distributed embedded queue management system built on FreeRTOS and wireless mesh communication. Each node in the network is symmetric — any device can elect itself host or assume a peripheral role at startup, with no user configuration required. Nodes coordinate state in real time over a shared wireless channel, with physical LED feedback at each station reflecting live queue position across the whole network.

The immediate problem we designed for was SCU's ECEN teaching labs: up to 20 student groups per session, one TA, and no good way to manage who needs help and in what order. A button press enters a group into the FIFO queue; the TA works through stations in order with a single-click dismiss. But the underlying architecture (self-organizing wireless nodes, a centrally managed queue with distributed status feedback, plug-and-play deployment) applies anywhere a fair, ordered call system is needed without permanent infrastructure. The system is agnostic to its environment by design.

Semi-Automatic Typewriter

IBM Selectric converted to a Linux-based hybrid word processor

LinuxRaspberry PiEmbedded CMechatronicsOptical SensingActuatorsHardware Hacking

The IBM Selectric II is already a computer, it just doesn't know it yet. Its type mechanism is driven by a mechanical binary encoder:

  • each keypress is encoded into 7 output latches
  • these latches tension axis strings to a precise position using mechanical tensioning logic
  • this selects the correct character by positioning the typeball which is then flung at the paper with enough force to type

All this is done entirely through mechanical logic. That encoding layer is a natural integration point for a modern embedded system. In this project, I read the latch states with optical interrupt sensors, pair the machine with a Raspberry Pi running a custom single-application Linux distribution, and add solenoids and an LCD to close the loop: typed input is captured, processed, and can be sent directly back to the machine or transferred over USB.

The result is a hybrid word processor that bridges retro hardware with a modern workflow. Type on the Selectric, edit on screen, print back to paper, or export to USB. Beyond the specific application, this project is an exercise in system analysis: reading a pre-existing electromechanical design, identifying its integration points, and extending it without destroying what makes it interesting.

Graphical Dataflow Node-based Editor

A more intuitive way to route data

TypeScriptReactSaaSData PipelinesIndustrial IoTUI/UX DesignOptimistic DispatchingFront/Backend Sync

When I started at Casne Engineering Inc. in my Sophomore year of college, I was put to work on CloudStream, a new SaaS platform that is in production now, “providing flexible, reliable, and secure industrial data pipelines wherever you need them.” The project meant to make all disparate data sources and endpoints connectable so that clients wouldn’t have to navigate the messy transfer process on their own.

My job was to create the UI, a platform which Casne Employees would use internally to manage these connection points. I started with something serviceable (though clunky). But after getting the basic system working, and inspired by graphical node editors like those found in Blender or MatLab’s Simulink, I began an independent project to create a functional, visually intuitive design to level up the platform. The duration of the summer meant it wasn’t feasible to implement this system, but it remains one of the most robust software projects I’ve worked on and I believe it will find a home somewhere.

Please visit the functional demo available in the links tab of this card. It is just a proof of concept with a stubbed backend, but this demo shows a functional enough (I hope) frontend system to demonstrate the intention.