Good day
The problem:
- I am trying to connect/flash/debug a Olimax STM32-E407 dev board over SWD and I am not able
- When trying to connect, using CubeProgrammer, I get: "No STM32 Target Found"
What I have tried:
- I have connected a ST-link V3 mini to the pinout of the the 20pin header of the Olimax board including 3.3V, GND, SWDIO (PA13/Pin7), SWCLK (PA14/Pin9) and NRST (Pin15).
- I am powering the powering the board from a power supply into the power jack
- All jumpers and solder bridges are in stock places.
- I have also tried manually pulling NRST to ground and doing a full chip erase, but that has not worked either.
- I have used these ST-link debuggers on other boards I made and it works perfectly fine
- I have 3 Olimax boards and none of them work
Any help would he hugely appreciated.
Debugging problems on microcontrollers have two general common methodes.
Hardware Problems:
In this part, it is highly recommended that use an oscilloscope to monitor circuit.
Make sure the microcontroller is powered with a correct and stable power supply.
Check the soldering quality and there is no short circuit on the board (especially between ground pins and other pins).
Check the
NRSTpin is high when the board is powered. Remember that this reset is active low so during programming or debugging this pin should be high. Also, check this pin isdebouncedwith a capacitor.Also you can check the
JTAGpins signals with an Oscilloscope to check if the programmer device is working fine.Sometimes adding a capacitor between debugging pins and
GNDincreases the bus capacitance and solves the problem. The value of the capacitor should be found by trying.Software Problems
Check the programmer driver is correctly installed on your PC.
Check the programming method is true(for example maybe the board is designed to be programmed with
SWD, notJATG).Sometimes reducing the programming clock of the programmer solved the problem.
If all of these methods didn't work and you are sure that the board is fine, probably the programmer is broken, so change the programmer with another one.