Assignment Requirements
Group assignment
- Use the test equipment in your lab to observe the operation of a microcontroller circuit board (as a minimum, you should demonstrate the use of a logic analyzer).
- Document your work on the group work page and reflect what you learned on your individual page.
Individual assignment
- Use an EDA tool to design a development board that uses parts from the inventory to interact and communicate with an embedded microcontroller
Progress Status
This is for reporting progress (not for visitors to click).
Group page link + notes added.
Missing final photos and conclusions.
Upload .zip with source files.
Assignment Requirements
Learning outcomes
- Select and use software for circuit board design
- Demonstrate workflows used in circuit board design.
Have you answered these questions?
- Linked to the group assignment page✅
- Documented what you have learned in electronics design✅.
- Checked your board can be fabricated.✅.
- Explained problems and how you fixed them.✅.
- Included original design files (Eagle, KiCad, etc.).✅.
- Included your hero shots.✅.
Weekly planning
During the week, we carried out various activities that presented significant challenges but were also very rewarding, especially due to the opportunity to share and learn together. We met virtually with our colleagues in the node and also participated in Open Lab meetings with Iquitos, Satipo, and Lima, which allowed us to organize and conduct open workshops in the different labs. In these sessions, we were able to review the software necessary for the work, as well as the machines, materials, and instruments required for each activity. This experience strengthened coordination between nodes and allowed us to better understand the importance of planning and managing resources effectively in digital fabrication processes.
group work
The objective of this group task was to observe and analyze the electrical behavior of a microcontroller board using laboratory measurement tools. We focused on verifying the stability of the power supply and confirming that the board can generate a reliable digital signal.
Introduction to Electronics Design
The topic of Electronics Design was completely new to me and the other members of my group. Thanks to Ronald's support, we were able to better understand the initial concepts. He provided us with a clear introduction, a practical example, and support in using the program, which facilitated our learning and allowed us to move forward with greater confidence this week.
Electronic Testing Tools Used
During the Electronics Design week, we used several measurement and programming tools that allowed us to analyze and validate the operation of our board. With these tools, we were able to generate, measure, and verify electronic signals, ensuring that our circuit worked correctly. Through this process, we successfully visualized waveforms, confirmed voltage levels, ruled out short circuits, and validated the stability of the generated signal.
| Tool | Model | How We Used It |
|---|---|---|
| Digital Oscilloscope | GW Instek GDS-1152A (150 MHz, 2-channel digital storage oscilloscope) | Visualized waveforms over time (square wave), verified voltage levels, and checked frequency stability. |
| Digital Multimeter | PR-75 | Checked power rails (VCC/GND), confirmed the 3.3V logic level, and ruled out short circuits (continuity test). |
| Microcontroller Board | Custom PCB with Seeed Studio XIAO RP2040 | Generated a digital GPIO signal to be measured with the oscilloscope. |
| Power Supply | USB | Powered and programmed the board. |
Procedure
1. Multimeter Pre-Check
Before connecting the oscilloscope, we used the multimeter to ensure the board was operating safely and correctly.
- Verified that the board was receiving the correct power supply.
- Measured the voltage between GND and VCC.
- Confirmed that the 3.3V logic level was stable.
- Checked continuity to rule out short circuits before probing signals.
This step was essential to ensure the board was safe and to avoid measuring a circuit with an accidental short circuit.
2. Oscilloscope Setup
We connected the oscilloscope as follows:
- Ground clip (black) → Board GND
- Probe tip → GPIO output pin
Settings used:
- Channel: CH1
- Voltage scale: 1 V/div
- Time scale: 1 ms/div
- Trigger: Edge mode (CH1)
- Auto setup for initial calibration
3. Signal Observation
After programming the RP2040 to generate a square wave, we observed:
- A clear digital square wave
- Voltage levels ranging from 0V to approximately 3.3V
- Stable frequency according to the programmed timing
This confirmed:
- Correct microcontroller execution
- Proper GPIO output behavior
- Stable voltage regulation
Results
The oscilloscope displayed a clean square wave signal, confirming that:
- The microcontroller clock and firmware execution are functioning correctly.
- The digital GPIO switches properly between LOW and HIGH.
- The board’s power supply remains stable during operation.
What We Learned
- How to properly connect an oscilloscope to an electronic board.
- Why a solid GND reference is required for stable measurements.
- The difference between measuring voltage with a multimeter and visualizing signals with an oscilloscope.
- How real digital signals appear in hardware.
Measurement Tool Details
Digital Multimeter (PR-75)
We used the PR-75 as a basic lab multimeter to check the board before measuring the signal.
Main Functions:
- Measure DC voltage (e.g., 3.3V / 5V)
- Measure AC voltage
- Measure resistance (Ω)
- Continuity test (connection beep / short circuit detection)
- Diode test
- Measure current (mA / 10A — use with caution)
In this task, we primarily used it to confirm the power rails and check continuity to rule out short circuits before connecting the oscilloscope.
Digital Oscilloscope (GW Instek GDS-1152A)
The GW Instek GDS-1152A is a 2-channel digital oscilloscope used to visualize electrical signals over time.
Main Features:
- Model: GDS-1152A
- 2 channels (CH1 / CH2)
- AUTOSET function for quick configuration
- VOLTS/DIV and TIME/DIV controls
- Trigger system for waveform stabilization
- Measurement of waveform properties such as voltage and frequency
We connected the probe to the microcontroller's GPIO output to observe and confirm the square wave signal generated by the board.
Difficulties We Faced (Finding the Signal on the Oscilloscope)
At first, it was not easy to obtain a clean and stable waveform on the oscilloscope. These were the main problems we encountered and how we solved them:
- Incorrect Ground (GND) Connection: The signal appeared noisy or unstable when the probe's ground clamp was loose or connected to the wrong reference. Once the ground clamp was securely connected to the board's GND, the waveform stabilized.
- Probing the Wrong Pin/Test Point: Initially, we measured a pin that was not the GPIO configured in the code. After checking the PIN_OUT and the board labels, we moved the probe to the correct GPIO output.
- Incorrect TIME/DIV and VOLTS/DIV Settings: With an incorrect time base, the square wave did not fit on the display. After adjusting to approximately 1 ms/div (and fine-tuning), the waveform became visible. Setting the vertical scale close to 1 V/div allowed clear visualization of the 0–3.3V levels.
- Trigger Settings: Without a proper trigger, the waveform continuously moved across the screen. After setting the edge trigger to Channel 1 and adjusting the trigger level, the waveform stabilized and became easy to read.
- Probe Attenuation Mismatch (x1/x10): The measured voltage did not match expectations. We checked the probe attenuation switch (x1/x10) and adjusted it to match the oscilloscope channel setting.
- AUTOSET Limitations: AUTOSET provided a useful starting point, but manual adjustment of TIME/DIV, VOLTS/DIV, and trigger level was still necessary to obtain a clean and repeatable signal.
After fixing the GND connection, confirming the correct GPIO pin, and properly configuring the trigger and scales, we successfully observed a clean square wave around 0–3.3V with a stable frequency.
Tips and Recommendations (Oscilloscope + Multimeter)
Multimeter (Before Using the Oscilloscope)
- Check VCC and GND: Measure the voltage between VCC and GND to confirm proper power supply (e.g., ~3.3V).
- Continuity Test: Use continuity mode to quickly rule out short circuits between VCC and GND.
- Confirm Ground Reference: Ensure the board's ground is accessible and clearly identified.
Oscilloscope (To Find and Stabilize the Signal)
- Always Connect GND First: Attach the probe's ground clip to the board's GND before probing the GPIO.
- Start with Safe Scales: Begin around 1 V/div and 1 ms/div, then adjust until the waveform fits the screen.
- Use Edge Trigger on CH1: Set the trigger source to CH1 (edge mode) so the waveform remains stable.
- Check Probe Settings (x1/x10): Match the probe switch with the oscilloscope channel setting.
- Use AUTOSET as a Starting Point: AUTOSET helps locate the signal quickly, but manual tuning is usually required.
Key Lesson:
First use the multimeter (verify power and rule out short circuits), then use the oscilloscope (proper GND connection, correct scales, and trigger configuration) to quickly obtain a clean and stable square wave.
Circuit Board Design in KiCad
Project: XIAO ESP32-C3 + Humidity/Temperature Sensor + LED Display
1. Download and Install KiCad
Go to the official KiCad website (https://www.kicad.org).
Click on Download and select the version compatible with your operating system (Windows, macOS, or Linux).
Download the installer and run the installation file.
Follow the installation steps using the default configuration options.
Make sure to install the standard symbol and footprint libraries.
Once installed, open KiCad and verify that the main tools are available: Schematic Editor, PCB Editor, Symbol Editor, and Footprint Editor.
2. Create a New Project and Work Sheet
Open KiCad.
Click on File → New Project.
Name the project: XIAO_ESP32C3_Sensor_Display.
Select an organized folder where the project files will be saved.
Click Save.
KiCad will automatically create the project files and generate a schematic file (.kicad_sch) and a PCB file (.kicad_pcb).
Open the Schematic Editor to access the work sheet.
This sheet is where you will design and connect all electronic components.
KiCad installation
KiCad installation
KiCad installation
KiCad
Electronics Design – Hand Sketch (Initial Plan)
Project: Environmental Monitoring System for a Mobile Laboratory
This electronic design is part of the mobile laboratory project and aims to develop a portable environmental monitoring system based on a XIAO ESP32-C3 microcontroller. This system will measure key variables such as temperature and humidity in each community visited, in order to gather relevant information for biomaterials research and development.
The device will consist of:
- A XIAO ESP32-C3 microcontroller as the main controller.
- A temperature and humidity sensor (e.g., DHT22 or BME280).
- An LED or OLED display to visualize the data in real time.
- A rechargeable battery for ease of use in the field.
General Operation
The sensor will capture environmental data (temperature and humidity) from the surroundings. This data will be processed by the XIAO ESP32-C3, which will display the information on the screen and allow the data to be stored or transmitted for digital recording.
Main Purpose of the System
- Obtain specific environmental information for each community visited.
- Analyze how climatic conditions influence the production of biomaterials.
- Customize biomaterial recipes according to local conditions (humidity and temperature).
- Provide real-world data to our biomaterials website, strengthening the project's technical and scientific information base.
This initial design (hand sketch) represents the conceptual stage of the project, where the system's general architecture is defined before moving on to the schematic design in software (KiCad) and the subsequent fabrication of the electronic board.
The mobile laboratory will benefit from this system by having measurable and verifiable data, allowing for process adaptation, improved results, and the generation of contextualized knowledge for each region.
Circuit Board Design in KiCad
Project: XIAO ESP32-C3 + Humidity/Temperature Sensor + LED Display
1. Open the Project and Create the Schematic Sheet
Open KiCad and load your existing project (XIAO_ESP32C3_Sensor_Display).
Click on Schematic Editor to open the schematic work sheet.
This sheet is where you will design the electronic circuit and define all connections.
2. Add the Main Components to the Schematic
Click on Add Symbol and place the following components:
- XIAO ESP32-C3 (or a generic ESP32-C3 module if the exact symbol is not available).
- Temperature and humidity sensor (DHT22 or BME280).
- OLED Display (I2C) or LED display module.
- Resistors (10kΩ pull-up if using DHT22).
- 0.1µF decoupling capacitors between 3.3V and GND.
- Power symbols (3.3V and GND).
3. Design the Power Connections
Connect the 3.3V pin of the XIAO ESP32-C3 to:
- Sensor VCC
- Display VCC
Connect all GND pins together to create a common ground.
Add a 0.1µF capacitor between 3.3V and GND close to the XIAO for voltage stabilization.
4. Connect the Temperature and Humidity Sensor
If using DHT22:
- VCC → 3.3V
- GND → GND
- DATA → GPIO pin of XIAO (for example GPIO2)
- Add a 10kΩ pull-up resistor between DATA and 3.3V
If using BME280 (I2C):
- VCC → 3.3V
- GND → GND
- SDA → XIAO I2C SDA pin
- SCL → XIAO I2C SCL pin
5. Connect the LED or OLED Display
If using I2C OLED:
- VCC → 3.3V
- GND → GND
- SDA → Same SDA line as sensor (I2C bus)
- SCL → Same SCL line as sensor (I2C bus)
This allows both the sensor and display to share the same I2C communication bus.
6. Wire the Circuit
Use the Wire Tool to connect all components properly.
Use net labels (SDA, SCL, 3.3V, GND) to keep the schematic clean and organized.
7. Electrical Verification
Run ERC (Electrical Rules Check) to verify that there are no unconnected pins or electrical conflicts.
Correct any warnings or errors before moving to PCB design.
This completes the schematic development stage in KiCad for the XIAO ESP32-C3 environmental monitoring system.
Kicad
KiCad Design
KiCad Design
KiCad Design
Difficulties (Individual)
During the development of the project, one of the main difficulties was that the program was completely new to me. Adapting to the interface and understanding the workflow of the software required time and practice. At the beginning, I spent a considerable amount of time searching for the correct components in the libraries, especially the XIAO ESP32-C3 and the humidity and temperature sensors.
Finding the appropriate symbols and footprints became a process of exploration and learning. I did not always find the exact component on the first attempt, so I had to review multiple options, compare pin configurations, and verify compatibility with the real modules. Although this slowed down my progress, it helped me gain a deeper understanding of how the software works and how electronic components are structured within the libraries.
In the PCB design stage, I also faced challenges when organizing the components and routing the traces properly. Over time, I realized that the strategic placement of the XIAO ESP32-C3 and the sensors plays a crucial role in achieving clean routing and a well-organized board layout.
At this stage, I am still exploring additional design possibilities to further improve my board. The project is currently focused on correctly integrating the XIAO ESP32-C3 with the humidity and temperature sensors, optimizing the available space, improving the trace distribution, and enhancing the overall functionality of the system.
Group Challenges
As a team, we encountered several difficulties while measuring the signal. Initially, we were unable to visualize the square wave because the probe was not connected to the correct GPIO pin or test point.
We also experienced issues with the ground reference. When the probe’s ground clip was loose or improperly connected, the signal appeared noisy or unstable.
Configuring the oscilloscope was another challenge. Incorrect TIME/DIV and VOLTS/DIV settings caused the signal to look flat or invisible until we properly adjusted the time base and voltage scale.
Trigger settings were crucial. Without correctly configuring the Edge trigger on channel CH1, the waveform continuously moved across the screen and was difficult to interpret.
At one point, there was also a discrepancy caused by the probe configuration (x1/x10), which affected the voltage reading until we confirmed the correct attenuation setting.
Finally, after correcting the GND connection, verifying the correct pin, and adjusting the trigger and scale settings, we were able to obtain a clean and stable square wave of approximately 0–3.3V.
What We Learned (Group)
As a team, we learned how to safely test a circuit board before measuring signals: first by checking for proper power connections and possible short circuits using a multimeter, and then by using the oscilloscope for signal analysis.
We practiced the correct oscilloscope connection procedure: connecting the probe ground clip to the board’s GND and the probe tip to the GPIO pin under test.
We understood how oscilloscope settings directly affect signal visualization, including VOLTS/DIV, TIME/DIV, and trigger configuration.
We encountered common debugging issues such as selecting the wrong pin, having an unstable trigger, or using incorrect scale settings. Through troubleshooting, we learned how to adjust these parameters to obtain a clean and stable signal.
Finally, we clearly understood the difference between a multimeter measurement (which shows a single fixed voltage value) and an oscilloscope display (which shows how the signal changes over time).