Ela pode vir de fábrica com um bootloader desatualizado, que tem como característica demorar 8 segundos para executar o seu sketch depois de energizar a placa e depois do reset.
Dependendo do tipo de projeto isto é um problema, felizmente a nova versão do bootloader da Arduino Leonardo (que pode ser usado na Pro Micro) tem um comportamento um pouco diferente, mas que resolve este problema, quando você energiza a placa ela carrega seu sketch quase que imediatamente, e somente espera 8 segundos depois do reset. Mais informações aqui.
Para atualizar o bootloader em uma Arduino UNO ou Leonardo é fácil pois já existe um conector ICSP:
Neste link mais detalhes: atualização do bootloader
Mas para atualizar o bootloader da Pro Micro é necessário preparar um cabo que acesse os seguintes pinos:
Pinout da Pro Micro:
Eu resolvi soldar um cabo para que não ocorresse mal contato, mas de maneira superficial para facilitar a posterior retirada. A outra ponta deste cabo é um conector fêmea, para encaixar na no conector ICSP da USBtinyISP.
Com uma placa como a USBtinyISP (que você pode montar com as instruções deste link) é possível carregar o novo bootloader.
A posição do conector ICSP na USBtinyISP é indicada na figura abaixo:
Já com o cabo conectado é indicado o Vcc e o sinal MISO (pino1)
Agora basta abrir a IDE da Arduino (eu fiz este procedimento com a versão 1.6.0 e 1.6.1). Quando fiz no Linux (com root) funcionou perfeitamente.
Executando a IDE:
[user@localhost arduino-1.6.1]$ su root
[root@localhost arduino-1.6.1]# ./arduino
Em Ferramentas, selecione a placa Arduino Leonardo:
Em Ferramentas, selecione o programador USBtinyISP:
Em Ferramentas, selecione Gravar Bootloader:
Gravação com sucesso:
IMPORTANTE: Tentei várias vezes este processo no Windows e sempre dava erro ao gravar o bootloader:
avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x7080
0x00 != 0x30
avrdude: verification error; content mismatch
avrdude done. Thank you.
Ainda não descobri a causa deste erro.