Integration System Documentation
My current progress in my final project is the planning of the individual production processes. Here is an overview of the materials and machines used:
Inlay:
Case:
Front Screen:
PCB:
Component | Material | Machine |
---|---|---|
Inlays | PLA Filament | Bambu Lab 3D Printer X1 |
Case | Multiplex Wood 12mm | CNC Portal Milling Machine & Shaper Tool |
Front Screen | Acrylic Glass 3mm translucent | Laser Cutter 150W (GS System) |
2 PCBs | PCB Material | CNC PCB Milling Machine (LPKF) |
Integration Digital Twin
Cable Plan
For cable management, I designed special cable plates with a polygonal pattern. These are printed as inlays and inserted into the recessed polygons.
The PCBs fit perfectly into these forms. Additionally, I integrated cable channels matching the thickness of the pin headers.
For the integration of the cable channels, I used a special visual style that greatly helped me with the design process. For this style check out down side the setting of Fusion 360 - wireframe
The CO₂ sensor has a special guide leading to the top of the polygon tower to measure accurate room values.
A side cable channel for the USB-C connection is also integrated into the wooden case. I replicated the USB connection of the Seeed Xiao ESP32-C6, doubled the outer contour, and adjusted it with a 0.3mm cutout gap. This creates an optimal cutout for cable management.
Case Adjustment to the Inlay
The inlay is recessed into the base plate of the case. To ensure an optimal fit, I planned a kerf cutout of 0.3 mm. This will be milled with the Shaper Tool.
Case Design
For the case, I designed a slot system that integrates into the base plate. The polygonal side walls will be glued together. Additionally, a groove is milled on the upper edges to fit the LED strip and the acrylic glass sheet precisely.
The acrylic glass sheet can either be: 1. Directly fixed with magnets to the wooden walls (visible), or 2. Mounted with a wooden frame that sits on the acrylic glass, with hidden magnets (sandwich system, not visible).
Acrylic Glass
The acrylic glass is translucent and features polygonal grid holes that allow air to flow and circulate directly over the CO₂ sensor for more accurate measurements.
Electronics
The electronics consist of two PCBs:
1. Main PCB: Controls the CO₂ sensor and the LED strip, which lights up in traffic light colors depending on the CO₂ value: - Red: Very poor air quality - Yellow: Borderline CO₂ value - Green: Good CO₂ value
- over 1000ppm
- between 800-1000ppm
- under 800ppm
I performed various breadboard tests and optimized the code accordingly.
The CO₂ sensor requires a constant power supply of at least 5V and a warm-up phase of 24 hours for accurate measurements.
Initially, the values fluctuated strongly (800–1000 ppm), but after 2 hours, the range stabilized between 600 and over 1000 ppm. Research showed that values below 1000 ppm are considered acceptable for office spaces.
Code:
#include <Adafruit_NeoPixel.h>
#define LED_PIN 1 // D1 entspricht GPIO 1 auf dem Xiao Seeed ESP32-C6
#define NUM_LEDS 40 // Anzahl der LEDs im Strip
#define MQ135_PIN A0 // Analog-Pin für den MQ-135
Adafruit_NeoPixel strip(NUM_LEDS, LED_PIN, NEO_GRB + NEO_KHZ800);
void setup() {
Serial.begin(115200);
strip.begin();
strip.show(); // Alle LEDs ausschalten
Serial.println("Setup abgeschlossen.");
}
void loop() {
int sensorValue = analogRead(MQ135_PIN);
// Debug-Ausgaben zur Kontrolle
Serial.print("MQ-135 CO2-Wert (Raw): ");
Serial.println(sensorValue);
if (sensorValue > 1000) {
Serial.println("Wert über 1000: Jede zweite LED Rot");
for (int i = 0; i < NUM_LEDS; i += 2) {
strip.setPixelColor(i, strip.Color(150, 0, 0)); // Rot
}
} else if (sensorValue <= 1000 && sensorValue >= 900) {
Serial.println("Wert zwischen 900 und 1000: Jede zweite LED Gelb");
for (int i = 0; i < NUM_LEDS; i += 2) {
strip.setPixelColor(i, strip.Color(150, 150, 0)); // Gelb
}
} else {
Serial.println("Wert unter 900: Jede zweite LED Grün");
for (int i = 0; i < NUM_LEDS; i += 2) {
strip.setPixelColor(i, strip.Color(0, 150, 0)); // Grün
}
}
strip.show();
delay(1000); // Überprüfen alle 1 Sekunde
}
For testing, I intentionally worsened the room air (by reducing ventilation) and then improved it again (by ventilating), demonstrating the sensor’s sensitivity.
2. Display PCB: Transfers the data from the CO₂ sensor to an LCD display. Communication is handled via the Seeed Xiao ESP32-C6.
The data is then displayed on a separate screen mounted on the wall, similar to the main product.
Tests and Findings
During my breadboard tests, I found that I need a SMD 1206, 470R resistor for the LED strip. So I designd it for my kiCAD PCB.
I milled the board using the CNC PCB milling machine and then prepared it carefully with sandpaper and isopropanol.
So this time I soldering my board not only by myself.. I used a Soldering Oven
First, I worked with soldering paste for my Seeed component and for the resistor. Under the microscope, I distributed the paste using an acupuncture needle.
I checked if there was too much or too little paste on each pad and made adjustments as needed.
Next, I carefully placed the electronic components and inspected for any solder bridges. Since there were no bridges, I proceeded to preheat the oven. Before that, I ensured that the metal rods were in the correct position to securely hold the board—because once it’s hot, adjustments are no longer possible.
When the notification sound signaled, I carefully used pliers to place the board into the oven. The oven returned to its preheat temperature and then gradually increased to the target level. Two to three minutes later, the indicator sound confirmed that the process was complete.
Be cautious! The board is extremely hot. Always use an appropriate tool to remove it safely and allow it to cool down for at least 10 minutes.
This week, I learned a great deal about the importance of digital twins for testing components and verifying their fit before committing to production, saving both material and time. I also improved my understanding of how resistors function on my board and recognized the value of thorough testing and debugging in electronics. Finally, I realized how crucial the soldering process is and the impact that an optimized workflow can have on overall efficiency.
Next Steps
- The PCBs need to be soldered some pin header and tested.
- After that, the final assembly of the housing and a complete test run of the electronics will be performed. -second platine
- Networksing tests
- Case