0
\$\begingroup\$

I made a custom PCB, using the ATSAM3X8EA which is the same as for the Arduino Due board. When I connect the power (the two holes on the far right), even before uploading any code, the LED (PC25) goes on. If I then upload an Arduino blink sketch (via Atmel ICE), the uploading goes fine but the LED is unresponsive to the pin toggle commands and stays in a high state. I've tested the voltage on other GPIO pins and those seem to be consistenly high too.

My suspicion is that there is a short somewhere, and that some pin is wrongly connected to a high voltage, but I can't see where though.

enter image description here enter image description here

\$\endgroup\$
4
  • \$\begingroup\$ Hard to know where to start - you’ve broken many rules in your pcb. There’s no ground plane and your power tracks are too thin. Can you use the debugger to identify what the cpu is doing? \$\endgroup\$
    – Kartman
    Jan 29, 2021 at 14:46
  • \$\begingroup\$ I see that you've made some effort to at least use some supply decoupling caps around your micro, but the way you've routed the traces to them, most of them are useless. Each supply pin on the micro must have its own cap, and the cap must be directly connected to both the supply and ground pins on the micro. Your C21 is an example of reasonably good placement and routing. C20 right next to it is bad routing. C18, C19 & C20 are awful - the ground trace connected to those caps stretched all the way over to the right side of the board before coming back to the micro. \$\endgroup\$
    – brhans
    Jan 29, 2021 at 15:09
  • \$\begingroup\$ @Kartman, I'm debugging now. I can step through the code. Is there anything I should look out for to check up on the CPU? Some odd things that stand out: a) in the memory window "SYSTEM" block, there are a lot of registers with ???? value b) in "processor status" there a couple of values which have red font (some warning?), these include "program counter", "link register" and "R00". Many thanks! \$\endgroup\$
    – daniel
    Jan 29, 2021 at 15:57
  • \$\begingroup\$ Your On/Off switch wastes a lot of battery power when in the "OFF" state (compared to just leaving it open), why are you connecting the battery to ground through a 10M resistor instead of just leaving it float? \$\endgroup\$
    – Ron Beyer
    Jan 29, 2021 at 16:40

1 Answer 1

0
\$\begingroup\$

Turned out that for the GPNVM Bits in atmel studio, the BOOT_MODE needs to be set to boot from flash (not boot from ROM). My guess is that for first use of a factory new MCU this needs to be done manually.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.