Maker.io main logo

Senior Design Part 5: Diagnosing PCB Issues

2023-05-19 | By Will Siffer

License: Attribution Non-commercial

Starting this week strong:

This week my team and I started strong, and we started analyzing the board more in-depth with an oscilloscope rather than just taking multi-meter measurements of our supplies and other known voltage points. The motivation behind this shift in testing was that we found an issue with the board where it appeared to disconnect itself from the computer while we were testing, and then the computer would no longer recognize it as a USB device. This is not the behavior we want out of our boards, so we wanted to get to the bottom of what caused the issue by analyzing the voltages across each part of the board to try to find the problem. 

Root Cause Analysis - The Magic of Electrical Engineering

When it comes to pursuing a major in EE, many people decide to run away when faced with finding an issue on a circuit board with nothing more than a couple of measurement tools and a pile of datasheets. Truthfully, this is why I went into EE because I love solving issues that are complex and multi-layered.

At its core, root-cause analysis is just using tools and schematics to check to see if the circuit or system is behaving the way you expect and then tracing the strange measurement back to the source where you can find what component or failure is leading to the behavior. In my Co-Op, I was doing these kinds of tests on entire pre-production cars, but here we only have a single PCB so it's much easier to trace. 

The steps are fairly straightforward for any issue. First, you measure the voltage at the component displaying the issue to make sure it is getting power. If it is, then you start measuring the inputs to make sure they are correct. Depending on what goes wrong is where you trace back and start measuring the next component. Repeating this process will source the issue in no time!

Finding our issue: PCBs and traces

The key to finding the issue on our PCB was finding the series of steps we needed to take in order to replicate the issue reliably. That way we could verify if we were measuring the issue taking place. Here's what we found:

  • Battery, not plugged in
  • USB connected
  • Serial Communication Running
  • Reset button pressed and released 1 time

Performing these in order would cause the issue, and to fix the issue we had to unplug the board and plug it back in. 

Since I have some background in root-cause analysis (RCA), I thought this issue was likely due to a power supply failure, so I pulled out my oscilloscope and measured the power supply voltage before and after the reset button was pushed. Here is what we found: 

 5V-supply-Before

5V Supply, Before

5Vafter

5V Supply, After

WOAH! That's certainly not right!

We found something we didn't expect! So that's the output of the 5V regulator, since there isn't anything "Smart" going on there let's see where it gets its power.

modules

Simple Schematic of the System

Okay, so it's getting its power from Vbat1, which is connected to VBat through a current sensor. Since the current sensor is just a 0.1 ohm resistor, that is probably not the issue, so let's measure VBat and see what that reads. (Remember there's no battery plugged in).

before

VBatt Before Reset

AfterReset

VBatt After Reset

Okay, now that's definitely the issue. We measured the supply into the 5V regulator and look at that before the reset. It's a 4.2V signal, but after reset it jumps all over the place from 1.72V to 4.28V! After this, I also measured the USB input and verified that it was a constant 5V, meaning the issue was caused by the charge chip.

What does this mean?

This is an interesting discovery for sure, so we decided to plug in the battery and see if the issue was still present. Sure enough, the supply voltages didn't fluctuate when there was a battery in the system. 

If you look at the schematic earlier in this post, you'll see that the 5V USB does not directly power the system, only charges the battery. This means that without the battery connected, we were depending on the charge controller to be a power supply for the system. This is something that the chip was not designed to be able to handle. What likely happened is that by pushing the reset button, we were momentarily causing the system to reset, and that caused the USB port to cut off power momentarily and send the chip into sleep mode. 

Conclusions

For this circuit, we decided this is okay to keep in the design since the normal operation of the system is with the battery installed, and there will never be a time outside of development when the battery is fully disconnected since the USB is only for charging the battery and the end user would not be programming the chip. So, we were able to verify that this issue is no longer an issue with the design, but instead, a limitation of our design we have to remember during development.

With that I am signing off for the week, we have a mid-semester design review next week, and I am fortunate enough to show all the hard work from the team to a panel of industry professionals. Like always, I will leave you with my weekly reflection, this week on lifelong learning: 

"This week I started to research more about how to use oscilloscopes to monitor issues with PCBs and how to diagnose issues with circuits. I  really appreciated how we can use EPICS as a way to create habits of lifelong learning throughout the rest of my life. Since this project is so interesting to me, I find myself realizing that I am learning quite a bit about different electrical techniques that I would not have otherwise learned in the lab or even on my own time. Specifically, the ability to use the EPICS lab has given me the resources to measure and observe electrical systems which are extremely fascinating to me. This has made me think about what kinds of tools and equipment I will want at home and think that I will for sure be needing an oscilloscope and a power supply so I can measure and analyze circuits more. As I think about how this applies to my life beyond epics, I am thinking about how there are just so many projects I haven't done yet and how much I want to continue to learn. Most of these projects were sparked from what I saw and what I did in the EPICS labs, and I don’t think I would have ever gained the skills I have now without the connection to the Maker spaces in EPICS."

Until next time, my name is Will, and I hope you learn something new today.

Check out the next week's post: Coming soon!

Be sure to take a look at the previous posts in this series:

Senior Design Capstone Part 1: What (or Who?) is LoRa?

Senior Design Part 2: Using Eagle to make a custom PCB

Senior Design Part 3: Designing an SMD PCB Full of Sensors

Senior Design Part 4: Assembling, Testing, and Debugging Circuit Boards!

制造商零件编号 2190E
100MHZ DIG STORAGE OSCILLOSCOPE
B&K Precision
Add all DigiKey Parts to Cart
Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.