Programming Procedure
by J.J. Lazarte R. FABLAB-TECSUP
tecsup@tecsup-N56VZ:~$ sudo bash
[sudo] password for tecsup:
root@tecsup-N56VZ:~# cd ..
root@tecsup-N56VZ:/home# cd tecsup/
root@tecsup-N56VZ:~# cd Descargas/
root@tecsup-N56VZ:~/Descargas#
cd firmware/
root@tecsup-N56VZ:~/Descargas/firmware# cd fabISP_mac.0.8.2_firmware/
root@tecsup-N56VZ:~/Descargas/firmware/fabISP_mac.0.8.2_firmware#
make clean
rm -f main.hex main.lst main.obj main.cof
main.list main.map main.eep.hex main.elf *.o usbdrv/*.o main.s usbdrv/oddebug.s
usbdrv/usbdrv.s
root@tecsup-N56VZ:~/Descargas/firmware/fabISP_mac.0.8.2_firmware#
make hex
avr-gcc -Wall -Os
-DF_CPU=20000000 -Iusbdrv
-I. -DDEBUG_LEVEL=0 -mmcu=attiny44 -c usbdrv/usbdrv.c -o usbdrv/usbdrv.o
avr-gcc -Wall -Os
-DF_CPU=20000000 -Iusbdrv
-I. -DDEBUG_LEVEL=0 -mmcu=attiny44 -x assembler-with-cpp -c usbdrv/usbdrvasm.S -o
usbdrv/usbdrvasm.o
avr-gcc -Wall -Os
-DF_CPU=20000000 -Iusbdrv
-I. -DDEBUG_LEVEL=0 -mmcu=attiny44 -c usbdrv/oddebug.c -o usbdrv/oddebug.o
avr-gcc -Wall -Os
-DF_CPU=20000000 -Iusbdrv
-I. -DDEBUG_LEVEL=0 -mmcu=attiny44 -c main.c -o main.o
avr-gcc -Wall -Os
-DF_CPU=20000000 -Iusbdrv
-I. -DDEBUG_LEVEL=0 -mmcu=attiny44 -o main.elf
usbdrv/usbdrv.o usbdrv/usbdrvasm.o
usbdrv/oddebug.o main.o
rm -f main.hex main.eep.hex
avr-objcopy -j .text -j .data -O ihex
main.elf main.hex
avr-size
main.hex
text data bss dec hex filename
0 2020 0 2020 7e4 main.hex
root@tecsup-N56VZ:~/Descargas/firmware/fabISP_mac.0.8.2_firmware#
make fuse
avrdude -c avrisp2 -P usb
-p attiny44 -U hfuse:w:0xDF:m -U lfuse:w:0xFF:m
avrdude: AVR device initialized and ready to
accept instructions
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x1e9207
avrdude: reading input file "0xDF"
avrdude: writing hfuse (1 bytes):
Writing | ################################################## | 100% 0.00s
avrdude: 1 bytes of hfuse
written
avrdude: verifying hfuse
memory against 0xDF:
avrdude: load data hfuse
data from input file 0xDF:
avrdude: input file 0xDF contains 1 bytes
avrdude: reading on-chip hfuse
data:
Reading | ################################################## | 100% 0.00s
avrdude: verifying ...
avrdude: 1 bytes of hfuse
verified
avrdude: reading input file "0xFF"
avrdude: writing lfuse (1
bytes):
Writing | ################################################## | 100% 0.00s
avrdude: 1 bytes of lfuse
written
avrdude: verifying lfuse
memory against 0xFF:
avrdude: load data lfuse
data from input file 0xFF:
avrdude: input file 0xFF contains 1 bytes
avrdude: reading on-chip lfuse
data:
Reading | ################################################## | 100% 0.00s
avrdude: verifying ...
avrdude: 1 bytes of lfuse
verified
avrdude: safemode: Verify
error - unable to read hfuse properly. Programmer may
not be reliable.
avrdude: safemode: Fuses
OK
avrdude done.
Thank you.
root@tecsup-N56VZ:~/Descargas/firmware/fabISP_mac.0.8.2_firmware#
make program
avrdude -c avrisp2 -P usb
-p attiny44 -U flash:w:main.hex:i
avrdude: AVR device initialized and ready to accept
instructions
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x1e9207
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 "main.hex"
avrdude: writing flash (2020 bytes):
Writing | ################################################## | 100% 0.70s
avrdude: 2020 bytes of flash written
avrdude: verifying flash memory against
main.hex:
avrdude: load data flash data from input file
main.hex:
avrdude: input file main.hex contains 2020 bytes
avrdude: reading on-chip flash data:
Reading | ################################################## | 100% 0.58s
avrdude: verifying ...
avrdude: 2020 bytes of flash verified
avrdude: safemode: Fuses
OK
avrdude done.
Thank you.
avrdude -c avrisp2 -P usb -p
attiny44 -U hfuse:w:0xDF:m -U
lfuse:w:0xFF:m
avrdude: AVR device initialized and ready to accept
instructions
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x1e9207
avrdude: reading input file "0xDF"
avrdude: writing hfuse (1
bytes):
Writing | ################################################## | 100% 0.00s
avrdude: 1 bytes of hfuse
written
avrdude: verifying hfuse
memory against 0xDF:
avrdude: load data hfuse
data from input file 0xDF:
avrdude: input file 0xDF contains 1 bytes
avrdude: reading on-chip hfuse
data:
Reading | ################################################## | 100% 0.00s
avrdude: verifying ...
avrdude: 1 bytes of hfuse
verified
avrdude: reading input file "0xFF"
avrdude: writing lfuse (1
bytes):
Writing | ################################################## | 100% 0.00s
avrdude: 1 bytes of lfuse
written
avrdude: verifying lfuse
memory against 0xFF:
avrdude: load data lfuse
data from input file 0xFF:
avrdude: input file 0xFF contains 1 bytes
avrdude: reading on-chip lfuse
data:
Reading | ################################################## | 100% 0.00s
avrdude: verifying ...
avrdude: 1 bytes of lfuse
verified
avrdude: safemode: Fuses
OK
avrdude done.
Thank you.
root@tecsup-N56VZ:~/Descargas/firmware/fabISP_mac.0.8.2_firmware# cd ..
root@tecsup-N56VZ:~/Descargas/firmware# cd ..
root@tecsup-N56VZ:~/Descargas# cd ..
root@tecsup-N56VZ:~# cd ..
root@tecsup-N56VZ:/home#
lsusb
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate
Matching Hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003
Device 122: ID 1781:0c9f Multiple Vendors USBtiny
Bus 003 Device 107: ID 045e:0737 Microsoft Corp. Compact Optical
Mouse 500
Bus 003 Device 053: ID 03eb:2104 Atmel Corp. AVR ISP mkII
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 8087:07da Intel Corp.
Bus 001 Device 004: ID 1bcf:2883 Sunplus Innovation
Technology Inc.
root@tecsup-N56VZ:/home#