-1

I am creating a standalone Arduino using Atmega328P. The circuit is below.

enter image description here

However, I'm seeing

avrdude: Device signature = 0x000000 error 

whenever I try to burn the Arduino Uno bootloader. I'm assuming that the chip isn't responding to the SPI lines?

I know I'm doing something wrong but I can't see it.

My connections are

SCLK --> Arduino Pin 13
MISO --> Arduino Pin 12
MOSI --> Arduino Pin 11
Reset --> Arduino Pin 10

VIN --> 5V
GND --> GND

I'm using a true Arduino UNO as the ISP. I've uploaded the ArduinoISP code into it, choose Arduino as ISP as Programmer and Arduino Uno on boards. The programming connections are just wired from Arduino UNO pins to some vias I've purposely added on the layout.

As mentioned in the comments, I'm adding an image of the layout here.

enter image description here

I've tried this very circuit on an atmega328P soldered in a TQFP adapter and with the other components soldered on the adapter as well (looks like a jungle of wires) and somehow I was able to burn the bootloader.

Hoping someone can point out what's wrong.

  • 1
    Are you trying to run the ATmega at 3.3 V on a 16 MHz crystal? – tttapa Oct 15 '18 at 7:34
  • 1
    Yes. Will there be a problem on doing it @tttapa? – noobiejp Oct 15 '18 at 7:53
  • 2
    Check the datasheet, that voltage/frequency combination is out of spec. Either raise the voltage, or lower the frequency. – tttapa Oct 15 '18 at 8:15
  • 1
    It's not possible to see on that schematic how your programming device is connected up to the board. Also PCB layout images could be useful to check for mistakes. – Majenko Oct 15 '18 at 9:10
  • 1
    C3 should be 0.1uF for Serial downloads. D10 from the ISP connects to Reset directly, not thru the cap. – CrossRoads Oct 15 '18 at 13:15
0

From the schematic it appears you are using a LM317 voltage regulator from USB V_IN. The voltage drop is too large and your issues may be due to brown out, i.e. insufficient voltage: See this SE post. You can solve it by using a lower dropout regulator (5 V to 3.3 V) or just use the standard USB 5 V, bypass V_IN to V_CC.

  • Hi! I've already tried bypassing the regulator by removing it and tying VIN to VCC. So the whole VCC line will get 5V straight from USB. However, still not burning the bootloader. – noobiejp Oct 16 '18 at 15:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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