На самом деле, это очень просто.
Порядок действий:
1) откройте файл arduino-0018/hardware/arduino/boards.txt и добавьте в его конец что-то вроде этого:
######################################################
atmega48.name=ATMega48
atmega48.upload.using=avrisp
atmega48.upload.maximum_size=4094
atmega48.upload.speed=38400
atmega48.bootloader.low_fuses=0xE2
atmega48.bootloader.high_fuses=0xDF
atmega48.bootloader.extended_fuses=0xFF
atmega48.bootloader.path=atmega
atmega48.bootloader.file=atmega48.hex
atmega48.bootloader.unlock_bits=0x3F
atmega48.bootloader.lock_bits=0x0F
atmega48.build.mcu=atmega48
atmega48.build.f_cpu=8000000L
atmega48.build.core=arduino
2) Подсоедините AVCC микроконтроллера к плюсу питания (используется для analogRead как analog reference)
3) Поставьте конденсатор примерно в 0,1мкФ между AREF и землёй
4) enjoy!
А теперь о плохом %)
доступно тока 4кб памяти, что накладывает сильные ограничения на размер скетча (при использовании bootloader-а - всего 2кб), так что, скорей всего, грузить скетчи на плату вам придёться с помощью программатора (либо, имея под рукой другую arduino, можно прошить микроконтроллер с помощью ICSP, благо, в интернете более чем достаточно статей об этом)
Как получить .hex файл из скетча для заливки на МК, я описал в отдельной статье:
http://bsideup.blogspot.com/2010/08/hex-arduino.html