Na verdade, não é uma pergunta pura sobre o Arduino. Na verdade, estou usando um ATmega168 independente. Até agora, tenho usado o programador AVR-ISP (trabalhando no AVR Studio) para programar o chip. Depois que tudo estiver pronto, o chip será coberto e só terei acesso aos pinos I2C. Os pinos MISO, MOSI, etc estarão inacessíveis.
Eu queria saber se havia uma maneira de usar os pinos I2C para atualizar o programa que está gravado no chip. Não precisarei gravar o gerenciador de inicialização novamente, mas apenas para atualizar o programa, se necessário.