Работа с "голым" ATMega328P в Arduino IDE

Программирование микроконтроллера в среде Arduino - это несомненно удобно. Огромное количество готовых библиотек подкупает. Но небольшой нюанс немного портит картину - даже плата Arduino Nano, при довольно скромных размерах, все таки большеватая. Возьмем, к примеру, такое устройство как градусник. По идее всего 4 компонента - сам МК, ds18b20, резистор 5к и дисплей. Вот руки прям и чешутся запихать готовое устройство в минимальный объем. Как быть? Выпаять из платы mega328? Как-то жалко. А куда потом саму Nano?
Можно, конечно, прошить "голый" чип через тот же USBAsp, да только Arduino IDE расчитывает на то, что тактируется он от внешнего кварца 16 МГц. И в случае, если хочется обойтись только внутренним на 8, то все тайминги летят лесом. У меня получилось обмануть систему таким образом: В файле boards.txt (лежит в Program Files\Arduino\hardware\arduino\avr\) взял секцию, в которой описана Arduino Nano и на ее основе создал свою, заменив название и частоту CPU. Получилась плата Arduino Naked с тактовой частотой 8 MHz :)


             ##############################################################

             naked.name=Arduino Naked

             naked.upload.tool=avrdude
             naked.upload.protocol=arduino

             naked.bootloader.tool=avrdude
             naked.bootloader.unlock_bits=0x3F
             naked.bootloader.lock_bits=0x0F

             naked.build.f_cpu=8000000L
             naked.build.board=AVR_NANO
             naked.build.core=arduino
             naked.build.variant=eightanaloginputs

             ## Arduino Naked w/ ATmega328P
             ## --------------------------
             naked.menu.cpu.atmega328=ATmega328P

             naked.menu.cpu.atmega328.upload.maximum_size=30720
             naked.menu.cpu.atmega328.upload.maximum_data_size=2048
             naked.menu.cpu.atmega328.upload.speed=115200

             naked.menu.cpu.atmega328.bootloader.low_fuses=0xFF
             naked.menu.cpu.atmega328.bootloader.high_fuses=0xDA
             naked.menu.cpu.atmega328.bootloader.extended_fuses=0xFD
             naked.menu.cpu.atmega328.bootloader.file=optiboot/optiboot_atmega328.hex

             naked.menu.cpu.atmega328.build.mcu=atmega328p
            
После этого в Arduino IDE выбираем плату Arduino Naked, в качестве программатора - USBAsp. Теперь пишем скетч, как для обычной Nano, за одним исключением - залить прошивку в МК надо через Скетч -> Загрузить через программатор.