
A test of the light fixture using its RGB functionality
Background
Inspired by Scandinavian light design, my fourth year design project group at the University of Waterloo decided to create a light fixture that provides a high level of control over lighting found in indoor spaces so users can find a light configuration that suits their needs.
We wanted to create a light that controls brightness, colour temperature, RGB colour, and directionality.
As I focused on PCB design & Firmware I will mainly discuss that.

PCB Design
To achieve directional lighting this meant having lights facing in a variety of directions, for our purposes we wanted lights facing in at least 30 unique directions.
To solve I designed I2C Addressable LED modules so that the light fixture only needed a single communication bus to communicate with all the LED modules

Final Design of the LED modules
Before creating the final design of the LED Module, an Evaluation board of the LED Module was created that included a variety of breakout pins to help with debugging and test individual components of the board.


Firmware
Each of the LED modules contained an STM8S microcontroller to control the 3 LED drivers for the white LEDs and send a OneWire communication protocol to the RGB LED. The firmware was structed that when an I2C message was received with lighting data it would update the lights accordingly.
For an primary controller of the light fixture, an ESP32-S3 Dev Kit was used as it has I2C & Bluetooth capabilities. The ESP32 also advertised a Bluetooth signal so that the smartphone app built for the light fixture could communicate with the light fixture.
Testing








Next Steps
Having shown this project off at the Mechatronics Fourth Year Design Symposium I received a lot of feedback. The main question was if I were to market something like this, how much would people be willing to spending on lighting of indoor spaces?
Given the number of PCBs, the cost of the entire light fixture ended up being quite expensive. So if I redesigned this project I would focus on making it more cost effective while still focusing on providing users with a high level of control over their lighting.
Here is how I would do it:
- Reduce the number of unique lighting directions to save on LEDS
- Redesign the light fixture to have all LEDs on a single flexible aluminum PCB and bend parts of the board to face different directions similar to this
- Only use a single buck converter for the entire board as opposed to a buck converter per LED module