#!/bin/sh -x

PART=m168
PROG=stk500v2
PORT=/dev/tty.KeySerial1

ARDUINODIR=/Applications/arduino-0012
BOOTER=${ARDUINODIR}/hardware/bootloaders/atmega168/ATmegaBOOT_168_ng.hex
AVRDIR=${ARDUINODIR}/hardware/tools/avr
AVRCONF=${AVRDIR}/etc/avrdude.conf
AVRBIN=${AVRDIR}/bin

# unlock bootloader segment by erasing the chip
$AVRBIN/avrdude -C $AVRCONF -e -p $PART -P $PORT -c $PROG

# set fuses
# bootloader size of 512 words; from 0xE00-0xFFF
# clock speed of 16 MHz, external quartz
$AVRBIN/avrdude -C $AVRCONF -p $PART -P $PORT -c $PROG -U lfuse:w:0xdf:m -U hfuse:w:0xca:m

# upload bootloader
$AVRBIN/avrdude -C $AVRCONF -p $PART -P $PORT -c $PROG -U flash:w:$BOOTER:i

# lock bootloader segment
$AVRBIN/avrdude -C $AVRCONF -V -p $PART -P $PORT -c $PROG -U lock:w:0xcf:m

