Good morning,
I have created my own PCB (can provide eagle files if needed) that holds a ATmega328p-au, a FTDI header, ISP header, nRF24l01 module and a screw terminal for a switch. I have no soldered on the nRF module yet as this is my 3rd board in the process of troubleshooting my issues. I can burn the fuses (E2, DA, 06), the bootloader (ATmegaBOOT_168_atmega328_pro8MHz.hex) and even upload a sketch through the 'upload through programmer' option. However the issue lies with that i can't upload via FTDI.
My current setup of the board is that i have my reset line as follows:
VCC(3v) -> 10k pullup resistor -> RESET PIN
I also have a DTR line of:
DTR Header -> 0.1uF cap -> RESET PIN
The board itself is very minimal at the moment while I'm trying to troubleshoot my issues. I have soldered everything in place apart from the RF module (which doesn't stop any connections getting to the board) and the screw terminal for my switch.
The steps that i have taken so far:
- Replaced 0.1uF cap with 4.7uF.
- Moved the DTR cap closer to the header rather than the reset pin.
- Routed the DTR line external to the board to eliminate any cases of shorting in the PCB manufacturing process.
- Attempted to use different fuse settings (lowering clock, using external crystal) but still nothing, reverted back to my desired fuse settings.
I'm getting various different error codes coming through arduino IDE but i enabled verbose debugging and this is just one of the error reports that i get:
Sketch uses 450 bytes (1%) of program storage space. Maximum is 30,720 bytes.
Global variables use 9 bytes of dynamic memory.
C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -carduino -PCOM10 -b57600 -D -Uflash:w:C:\Users\DESKTO~1\AppData\Local\Temp\build69c6046e7b3922c68746d72bc5989b9b.tmp/sketch_mar02a.ino.hex:i
avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"
Using Port : COM10
Using Programmer : arduino
Overriding Baud Rate : 57600
AVR Part : ATmega328P
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PC2
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff
flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff
lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
Programmer Type : Arduino
Description : Arduino
avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0xfc
avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0xfc
Hardware Version: 1999519514
If you guys would like a physical photograph of my board then please ask, i do not mind uploading one
HominiSwitchNode1.0Rev2_Sch.pdf (44.9 KB)
HominiSwitchNode1.0Rev2_Brd.pdf (32.2 KB)