Week 01b - Project Management
This week we have the following tasks to complete:
- Describe a potential final project
- Plan and scetch a potential final project
What do I want my project to do?
The project that initially inspired me was a wooden lamp equipped with a basic RGB LED strip. This setup was quite simple, lacking addressable LEDs or advanced features. It consisted of just a basic controller, a small remote, a power supply unit (PSU), and the LED strip. Taking inspiration from this, as well as an unfinished project I previously worked on, I aim to create a universal, modular light controller.
Who Will Use It?
In principle, anyone who wants to integrate an IoT-based lighting system into their space without relying on proprietary solutions from major companies can benefit from this project. I plan to use it in my own room, and the remote control functionality will also be particularly useful for the BC-Studentenclub, one of our local student clubs. This system will finally allow for convenient control of the bar lighting without the need to depend on DMX protocols and bulky controllers.
Key Features:
- Dimming ceiling lights? No problem, there will be a module for that.
- Controlling your RGB(W) LED strip? That’s covered with another module.
- Managing an ARGB LED strip? Another module will handle it.
One of my main priorities is compactness. To achieve this, the design will be modular, allowing users to choose only the components they need, thus avoiding wasted space.
This project can be roughly divided into two main parts: 1. A remote and a receiver. 2. Various functional modules such as dimmers, LED controllers, and potentially other required moduls like a power supply.
Below is a list of possible modules, key questions to address during development, decisions to make, potential challenges, research topics, and necessary components.
Powersupply | Dimmermodule | ARGB-Module | RGB(W)-Module | Remote |
---|---|---|---|---|
Which Voltage levels are required? | Positioned in raw with the lamp | Designed for WS2812b LED controllers | White channel is optional | Should the remote have a battery? |
3.3 V; 5 V; 12; 24 V? | Uses phase-fired control | How to adapt for other LED controllers? | How to handle different voltage levels? | Should wireless charging be integrated? |
How much current is need it? | A base station might double as a charging station. | |||
Is the power supply only for modules or also for the consumer device? | How to handle different voltage levels? | What’s the best wireless connection? | ||
DC Input: 5 V; 12 V; 24 V or AC Input: 120 V; 230 V? | Should there be a web interface? | |||
How are the connections between modules designed? | ||||
Ensuring safe and reliable connections for high currents. |
Possible Module Designs









Parts need it
Part | Link |
---|---|
AC/DC Converter | Amazon |
Optocoupler - 817C | Mouser |
Optocoupler - MOC3020 | Mouser |
Triac - BT136 | Mouser |
MOSFET | Mouser |
Rotary Encoder with switch | Mouser |
Button | Mouser |
Microcontroller - Xiao ESP32C3 | Mouser |
Connector pads | Mouser |
Connector pins | Mouser |
16 AWG Wire | Amazon |
Potential Problems/Challenges
- Power Supply Module: If a single power supply module is used to power both the controller and the consumer device, high current demands may arise. This will necessitate robust connections between modules to handle the current safely and ensure user safety. Additionally, PCB traces will need to have sufficient cross-section to avoid overheating, delamination, or other thermal issues.
-
RGB(W) Module Control: This module will control different channels using MOSFETs. I’ve identified three possible approaches:
- Option 1: Use MOSFET driver ICs. These are efficient but relatively expensive.
- Option 2: Use bipolar transistor stages. While cost-effective, they require significant PCB space, as each MOSFET needs a transistor stage.
- Option 3: Use a MOSFET directly powered by the microcontroller’s I/O pins. This is space-efficient and cost-effective, but finding a suitable MOSFET may be challenging. The FabInventory’s power MOSFET might be an option.
-
Single vs. Distributed Microcontroller Approach: Would it be better to design a dedicated receiver module, so that only one microcontroller is needed for the entire module stack, rather than having a microcontroller on every individual module? Using a single microcontroller simplifies the architecture by eliminating the need to transmit instructions to every module individually. However, this approach requires a more complex communication protocol between the modules. Additionally, the connection interface between the modules would need to accommodate both power and communication lines, which might necessitate a larger connector—or the use of two separate connectors for power and communication.
- Web Interface and Remote Control: Should the system include a web interface? If not, implementing physical sliders for the remote might be an alternative.
To create this page, I used ChatGPT to check my syntax and grammar.
Copyright 2025 < Benedikt Feit > - Creative Commons Attribution Non Commercial
Source code hosted at gitlab.fabcloud.org