NerdKits - electronics education for a digital generation

You are not logged in. [log in]

NEW: Learning electronics? Ask your questions on the new Electronics Questions & Answers site hosted by CircuitLab.

Support Forum » Trouble Uploading on mac Lion

September 23, 2011
by swragg
swragg's Avatar

I am complete newbie I am following nerd guide

Failed at step 10 c page 43

after downloading latest Prolific driver and setting to usbserial as described on forum thread

I selected /initialload in terminal and entered make to get the following response in terminal

" unknown-10-9a-dd-9f-14-1d:Code simonwragg$ cd initialload unknown-10-9a-dd-9f-14-1d:initialload simonwragg$ ls Makefile initialload.c initialload.cBU unknown-10-9a-dd-9f-14-1d:initialload simonwragg$ make make -C ../libnerdkits avr-gcc -g -Os -Wall -mmcu=atmega168 -o delay.o -c delay.c avr-gcc -g -Os -Wall -mmcu=atmega168 -o lcd.o -c lcd.c avr-gcc -g -Os -Wall -mmcu=atmega168 -o uart.o -c uart.c avr-gcc -g -Os -Wall -mmcu=atmega168 -Wl,-u,vfprintf -lprintf_flt -Wl,-u,vfscanf -lscanf_flt -lm -o initialload.o initialload.c ../libnerdkits/delay.o ../libnerdkits/lcd.o ../libnerdkits/uart.o avr-objcopy -j .text -O ihex initialload.o initialload.hex avrdude -c avr109 -p m168 -b 115200 -P /dev/cu.usbserial -U flash:w:initialload.hex:a

Connecting to programmer: . Found programmer: Id = "FDL v02"; type = S Software Version = 0.2; No Hardware Version given. Programmer supports auto addr increment. Programmer supports buffered memory access with buffersize=128 bytes.

Programmer supports the following devices: Device code: 0x35

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9406 avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed To disable this feature, specify the -D option. avrdude: erasing chip avrdude: reading input file "initialload.hex" avrdude: input file initialload.hex auto detected as Intel Hex avrdude: writing flash (7836 bytes):

Writing | | 0% 0.00savrdude: butterfly_recv(): programmer is not responding make: *** [initialload-upload] Error 1 "

The LCD just displays 2 lines of dark rectangles

I assume the delete has taken place but new program has not been downloaded

Any help appreciated

September 23, 2011
by hevans
(NerdKits Staff)

hevans's Avatar

Hi swragg,

The most likely issue here is an issue with AVR Cross Pack that is dicussed in great length in this form post. The fix basically involves replacing one line in your Makefile:

avrdude ${AVRDUDEFLAGS} -U flash:w:initialload.hex:a

with

avrdude ${AVRDUDEFLAGS} -e
sleep 0.1
avrdude ${AVRDUDEFLAGS} -D -U flash:w:initialload.hex:a

I'd give that a try first.

The other possibility here is a dead or dying battery. Writing to the chip takes a lot of current, and a weak battery's voltage will drop enough to restart the chip and cause programming to fail.

Humberto

September 24, 2011
by swragg
swragg's Avatar

Thanks Humberto

rebooted comp, selected gcc4, changed makefile as suggested

" GCCFLAGS=-g -Os -Wall -mmcu=atmega168 LINKFLAGS=-Wl,-u,vfprintf -lprintf_flt -Wl,-u,vfscanf -lscanf_flt -lm AVRDUDEFLAGS=-c avr109 -p m168 -b 115200 -P /dev/cu.usbserial LINKOBJECTS=../libnerdkits/delay.o ../libnerdkits/lcd.o ../libnerdkits/uart.o

all: initialload-upload

initialload.hex: initialload.c make -C ../libnerdkits avr-gcc ${GCCFLAGS} ${LINKFLAGS} -o initialload.o initialload.c ${LINKOBJECTS} avr-objcopy -j .text -O ihex initialload.o initialload.hex

initialload.ass: initialload.hex avr-objdump -S -d initialload.o > initialload.ass

initialload-upload: initialload.hex avrdude ${AVRDUDEFLAGS} -e sleep 0.1 avrdude ${AVRDUDEFLAGS} -D -U flash:w:initialload.hex:a "

I then entered make

this was the response in terminal

" unknown-10-9a-dd-9f-14-1d:initialload simonwragg$ make make -C ../libnerdkits make[1]: Nothing to be done for `all'. avr-gcc -g -Os -Wall -mmcu=atmega168 -Wl,-u,vfprintf -lprintf_flt -Wl,-u,vfscanf -lscanf_flt -lm -o initialload.o initialload.c ../libnerdkits/delay.o ../libnerdkits/lcd.o ../libnerdkits/uart.o avr-objcopy -j .text -O ihex initialload.o initialload.hex avrdude -c avr109 -p m168 -b 115200 -P /dev/cu.usbserial -e

Connecting to programmer: . Found programmer: Id = "FDL v02"; type = ? Software Version = ?.?; No Hardware Version given. avrdude: error: buffered memory access not supported. Maybe it isn't a butterfly/AVR109 but a AVR910 device? make: *** [initialload-upload] Error 1 unknown-10-9a-dd-9f-14-1d:initialload simonwragg$ "

Not sure what to do next

Simon

September 24, 2011
by swragg
swragg's Avatar

SORTED!!

I measured 7.8 volts across battery terminals

Replaced battery (As Humberto suggested)

ran make again - Success!

simon

Post a Reply

Please log in to post a reply.

Did you know that an analog comparator can tell when one voltage input crosses another? Learn more...