Erro ao Programar ATMega32U4 Através do Bootloader

Depois testar a carga de programas diretamente usando a interface USBasp conforme no meu post anterior tentei re-instalar um bootloader e testar a programação usando o modo tradicional via cabo USB. Para isso eu gravei o bootloader usando a interface da IDE do Arduino. Usei a definição de placa do Spark Fun Pro Micro de 5v/16MHz pois essa é a que melhor se aproxima do clone que tenho.

Usei essas opções para gravar o bootloader:

A gravação completou com sucesso. Próximo passo foi então de gravar um sketch para piscar o LED, e dessa forma testar se o bootloader está funcionando bem. Só que isso me resultou num erro de comunicação:

...
Connecting to programmer: .avrdude: butterfly_recv(): programmer is not responding

avrdude: butterfly_recv(): programmer is not responding
Problem uploading to board. See https://support.arduino.cc/hc/en-us/sections/360003198300 for suggestions.

Passei bastante tempo pensando se não havia problemas com o bootloader, ou com a forma como ele estava sendo gravado, com a configuração da placa na IDE Arduino, etc. Mas no final descobri que o problema está de alguma forma relacionado à porta USB que usei para a gravação.

O que acontece é que a porta está na verdade em um HUB de USB. Uma vez que eu passei a conectar o mesmo cabo USB diretamente em uma porta no laptop, a gravação finalizou com sucesso e o LED piscou.

O interessante é que eu normalmente uso esse HUB para gravar os programas nas minhas placas controladoras. Por algum motivo essa plaquinha, ou o driver do USB, não quiseram funcionar através do HUB. Aqui está a prova de que tudo acabou bem: