I have an Arduino uno board. When connected to USB I see a new communications port in Windows/Device Manager. From blink example code, if I click upload or burn bootloader from menu, I notice some RX/TX led activity. Then it stops, I get an error in Windows as "avrdude: stk500_getsync(): not in sync: resp=0x00" from Arduino IDE. I get this when ever I try burning boot loader or user code (sketch).
I feel my USB cable and connection must be OK since I get power to the Arduino uno board and I get bi-directional communications, as I would not see a COM port in Windows if USB traffic was not working in both directions. Is it possible I've swapped D- with D+, I doubt I'd get the communications port in Windows as the handshake to transfer the device descriptor requires bidirectional comms. I mention this because I have had to solder a cable directly to the board because of the physical connector size is to large for my project box.
I have an old STK500, I take out the 328P DIL device, setup it in AVR Studio, read fuses:
BOOTSZ = 256W_1F00 BOOTRST = [ ] RSTDISBL = [ ] DWEN = [ ] SPIEN = [X] WDTON = [ ] EESAVE = [ ] BODLEVEL = 1V8 CKDIV8 = [ ] CKOUT = [ ] SUT_CKSEL = EXTXOSC_8MHZ_XX_16KCK_14CK_65MS
EXTENDED = 0xFD (valid) HIGH = 0xDE (valid) LOW = 0xFF (valid)
LB = NO_LOCK BLB0 = NO_LOCK BLB1 = LPM_SPM_DISABLE
LOCKBIT = 0xCF (valid)
I am not sure if the bootloader is present anymore as this board used to have the blink example working before I attempted to burn bootloader and I only attempted this because normal uploads would not work and finished with the same error as I presented above. I will try and verify it in my STK500 but I need to know a bit more about the "optiboot_atmega328.hex" file.
1). Are my fuse settings correct for the optiboot to function, it looks like a small bootloader section of 256words. Assumed at start of device? 2). Is the boot loader simply written to start of flash at 0h. I assumed it would be at the end of the chip flash but... 3). Is optiboot_atmega328.hex the correct file for Arduino uno? I got it from the board config file, but there is another interesting hex for my device "optiboot_atmega328-Mini.hex"?
I've had odd behaviour where code in the 328P device flashes the on-board L led but not to the 1S intervals as expected but two fast flashes, almost like it was repeatedly rebooting or perhaps has watchdog timeouts?
Hope any of this makes sense,