Программатор - это в общем случае не просто преобразователь USB-UART. У него свой протокол. Хотя новые серии AVR программируются и тупо через переходник USB-UART с помощью утилиты pyupdi.
Для старых AVR у меня лежит оригинальный AVRISP-mkII, для новых, как уже говорил, прокатывает простой переходник USB-UART с одним дополнительным резистором, так что Atmel ICE я не использовал.
Зачем он тебе? Я тебе выше скинул ссылку на википедию про avrdude, где есть список поддерживаемых программаторов. Берёшь Raspberry PI, устанавливаешь/компилируешь на ней avrdude и всё.