How to check MCU for shorts/continuity and Pinouts for Flight Controller MCU

How to check MCU for shorts/continuity and Pinouts for Flight Controller MCU

If you've soldered your flight controller and you're worried you may have damaged the board, it's possible to check whether or not the processor (also known as the MCU) has been shorted. As part of a flight controller's manufacturing process, it needs to be flashed with the firmware it will ship with. Assuming you tested the FC with a USB cable before any soldering, we can know that it arrived with an undamaged MCU. This means we can use the MCU as a way to determine whether you've damaged the board or if something else is going on.

There may be terms in this article which you're not familiar with, and if you just scroll through quickly it'll look long and complex.  you We've tried to write the article so that anyone can follow through, and there's lots of images which make it look longer than it is, so don't worry! Just follow step by step, and everything should be explained clearly and should make sense. With that said, if you get stuck - reach out!

If you're more comfortable with electronics and/or have a reasonable general understanding, here's a quick summary of the article;
  1. Find your FC's Processor (MCU) pinout (most are attached to this article) and locate the VBAT/VCC and VDD/GND pins
  2. Set your multi-meter to check continuity and test for continuity between these pins
  3. If there is continuity or low resistance, the board has unfortunately been shorted 

How to find your MCU Pinout

To do this, you will first need the "pinout" diagram for the MCU you have. If you don't already know, a "pinout" diagram is just a diagram created to show you which pin on the MCU serves which purpose in the circuit.

You may also need to find a pinout so that you can create a custom resource map, or perhaps you're working on some other obscure project which needs the diagram - whatever the reason, here's a simple way to find them:
Important Notes
A) There are two types of form-factors FC processors can be in;
- LQFP chips (this means the processor has pins visible around the outside of it, like lots of little legs).
If you have an LQFP chip, which most FC's do, you're in luck! You can check for shorted LQFP chips using this method.
and;
- BGA chips (this means there's balls of solder under the chip, it'll just look like a black square on your board and the pins won't be visible)
BGA pinouts can be found using this method, but unless you have a hot air station, these pinouts will not be of use for checking shorts. If you have a BGA MCU and suspect a fault, please contact us or let us know in your ticket thread. 

B) We have attached common pinout diagrams to this article, if one of these matches your processor, you can skip to step 7.
If you don't know what this means, that's okay! Just start from the beginning and follow step by step. 
Step 1 - Go to the manufacturer's (ST's) website here; https://www.st.com/content/st_com/en.html
Step 2 - Make a note of your flight controller's processor model. If you don't already know it, you can find it written on the flight controller's processor (see the image below for reference); 
In this example image, the model is "STM32H743". Ignore the STM32 portion of the model name, for us what's important is the 4 digits which follow - H743. You can sometimes find the model number on the product listing, or the included packaging / manuals with the flight controller. Common processor models are F405, F411, F722 and H743.

Step 3 - At the search bar, change the category you're searching to "Resources" and put these 4 characters of your processor's model number into the searchbar, then click "Search". See the image below for reference. In the example below, we're searching for F722 in the resources category.
  
Step 4 - When the search is complete (which will be rather fast in most cases), you'll be presented with a list of results. We're looking for the datasheet for your processor model.
To most easily find this, use the filters on the left hand side of the screen - under "Refine by document type", select "Datasheet". This will reduce the search results to datasheets only, and normally only shows one or to results, making finding what we need much simpler.


Step 5 - Open the datasheet by clicking the title - it'll have a title like the one shown in the example image below, though it may not match exactly depending on your model; 

Step 6 - If you have a table of contents available when you open the datasheet (this may be dependant on which browser you're using) - select "Pinouts and pin description" to jump to the section we need. You may also be able to find it by using your browser's search feature, or by simply scrolling until you find the section title in the document.


Step 7 - You should find your processor's pinout in this section. Most Flight controllers use what's known as a Low-Profile Quad Flat Package (LQFP), 64 pin layout. To be sure, count the number of pins on one side of your flight controller's MCU and multiply by 4. If no pins are visible around the edges of your MCU, please read the warning above step 1. Once we know the number of pins, you can look through the diagrams to find the one which matches - in our case, we have an LQFP64 chip, the diagram which matches is below. If you're checking for a short, locate the VBAT (sometimes labelled as VCC) and any VDD (or Ground / GND) pin on the diagram. 

Step 8 - These diagrams are a top-down view of the processor - the same way you'll be looking at it physically installed on your flight controller. To know which pin is pin 1, look for a dot on your MCU, and rotate the board so that this dot is in the top-left corner. Once oriented, Pin 1 is the pin at the top of the row to the left of this dot. See the image below for reference, we've marked pin 1 in red and have circled the location of the dot.
The dot in this image is on the bottom left corner of the chip - if you have two dots, look for the smaller, darker one, or for an indicator on the board as to which dot is the pin 1 mark (in this case, there's a black spot on the PCB nex to the circled dot to help us identify. Note that the text does not actually align us with the orientation of the pin diagram, for that, we need to rotate the chip;
Once the chip is rotated so that the indicator is in the top left of the chip, we look at the row on the left, and we now know that the top pin on that row is pin 1, and we're aligned with our diagram.

How to check for a short (continuity) with your multimeter

Step 9 - (ONLY IF CHECKING FOR SHORT) 
Use a multi-meter set to resistance or continuity to measure between the VBAT and VDD pins we noted earlier. If there's continuity (if your resistance reading is low, under a few thousand or if the multi-meter beeps), then the MCU is unfortunately shorted. If you don't know which setting to use on your multimeter, here's an example with the SparkFun meters we stock:
Note that if you use a different mutlimeter, your symbol for continuity may not look the same, but it should be similar - it may only show one of the two symbols indicated on this meter, or it may show some slight adaptation. It should be relatively easy to tell which is continuity when comparing to the image above even for other meter makes and models.

Next Steps

If you find that the MCU has continuity, then this means your MCU has been fried.  This is something not normally covered under warranty as things such as electrical static discharge, voltake spike or incorrect handling of the board could lead to this issue.  However, if the flight controller has not yet been soldered then please get into touch with us as assuming the FC has been handled correctly and is still within warranty we should be able to help. 

You can also go through some of our other troubleshooting guides in our knowledge base here UMT Support | Radio/Flight Control, or specifically this guide about flight controller issues - How to check MCU for faults

MCU Pinouts for common FCU in FPV Flight Controllers

See the attachment section at the end of this article for easy to access pinouts of the most common MCU you will find on flight controllers we sell.