Electronics Design


Group assignment

For the group assignment for electronics design. The task involves using test equipment to analyze a microcontroller circuit board. This includes using a multimeter and an oscilloscope.

A multimeter is a versatile tool that measures various electrical properties like voltage, current, and resistance. It features a display, a function selection dial for choosing measurement modes, a range selection dial for adjusting accuracy, and probes for connecting to circuits.

An oscilloscope is another key tool used to analyze and visualize electronic signals. It has a display, multiple channels for viewing various signals simultaneously, bandwidth limitations for the highest frequency it can capture, a sampling rate that determines how often it measures the signal, and controls for adjusting the scale and position of waveforms on the display.

The assignment requires using the multimeter to measure voltage levels at different points on the circuit board, including the sensor. The oscilloscope will then be used to observe how the sensor's voltage output changes.

Compared to the multimeter, the oscilloscope offers a more detailed and real-time visualization of voltage changes. It's also faster at capturing rapid voltage fluctuations.

The assignment goes on to use the oscilloscope to observe the signal going to the LED when the microcontroller board is programmed to make it blink on and off.

Finally, we used the oscilloscope to observe the voltage modulation and the PWM signal when they program the LED to fade on and off using PWM (Pulse Width Modulation).


Individual assignment

This individual project marks my initiation into the realm of electronics design, commencing with the establishment of KiCad and advancing through sequential stages of schematic design, PCB layout, fabrication, and testing. This documentation provides a comprehensive account of the systematic approach undertaken to develop and prototype a bespoke PCB.

I started by downloading and installing KiCad, an open-source suite for electronics design automation. Furthermore, I added the Fab library to my KiCad setup, granting access to a diverse array of component footprints essential for my project.

Initiating the Project:To commence the design process, I created a new project within KiCad.

Schematic Design:Component Insertion: Utilizing the component library, I incorporated all essential components onto the schematic diagram.

I configured the connections between components to create the intended circuitry.

Moving from schematic design to PCB Editor, I began translating the schematic into a physical layout.

Components and connections were imported from the schematic into the PCB layout.

Strategically arranging components on the PCB layout allowed for optimized space utilization and maintained signal integrity.

Establishing electrical connections between components was achieved by routing traces while adhering to design constraints.

Board Constraints Definition:I've established precise constraints for the PCB layout to guarantee both manufacturability and functionality:

Minimum Track Separation: Enforced at a minimum of 0.4mm to mitigate signal interference effectively.

Minimum Track Width: Tracks have been configured to be no less than 0.45mm wide to sufficiently accommodate current demands.

I meticulously verified the PCB layout to identify any errors or omissions. Moreover, I employed the 3D visualization tool to confirm the positioning of components and guarantee adequate clearance.

Exporting PCB Files:To facilitate further processing, I exported SVG files encompassing traces, drills, and outlines from KiCad.

First I export the traces layer as shown

Then I export the file for the outlines as shown

Creating Toolpaths

I created toolpaths using Mods software to ensure precise PCB milling.

I began the process of PCB fabrication by milling the board using the toolpaths generated, meticulously ensuring that each step adhered to the design specifications with precision.

The completed PCB underwent thorough testing to verify its performance and reliability and ofcourse after I solder the component

To begin utilizing the development board, I've integrated the chip into the IDE. This software serves to write, compile, and upload code to the microcontrollers. Here are the steps I followed:

  1. Opened the Arduino IDE.
  2. Navigated to File > Preferences.
  3. In the Preferences menu, located the field labeled "Additional Boards Manager URLs".
  4. Entered the following URL into the "Additional Boards Manager URLs" field: "https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json"

To add the XIAO RP2040 to the Arduino IDE via the Board Manager, follow these steps:

  1. Open the Arduino IDE.

  2. Navigate to Tools > Board > Board Manager.

  3. In the Board Manager window, use the search bar to look for "Raspberry Pi Pico" or "RP2040".

  4. You may find multiple options related to RP2040 compatibility. Choose any package that mentions RP2040 support and click "Install".

  5. After the installation is complete, go to Tools > Board and select your XIAO RP2040 board. It might be listed under "Seeed RP2040 Boards" or a similar category depending on the installed package.

  6. Choose the serial port to which your XIAO RP2040 is connected from the Tools > Port menu. You can typically find this information in your device manager.

  7. Now you're all set! You can use the Arduino IDE to develop and upload code to your XIAO RP2040 board.