Após uma nova instalação do Ubuntu, tentei fazer o upload do sketch usando o Arduino IDE v1.8.16 (instalado usando um .deb
arquivo baixado da web).
An error occurred while uploading the sketch avrdude: ser_open(): can't open device "/dev/ttyACM0": Device or resource busy
Após uma primeira instalação do Arduino IDE em uma nova máquina Linux precisa ser um membro de : sudo usermod -a -G dialout $USER
e logoff, logon , que não mudou conforme o esperado.
Então eu tentei chmod
da porta conectada /dev/ttyUSB0
, o que não mudou a mensagem de erro ( a propósito, também no USB1 e ACM0 eu obtive a mesma saída - ao tentar fazer o upload para Nano
).
Agora recebo este erro:
esptool.py v3.0
Serial port /dev/ttyUSB0
Connecting........_____....._____....._____....._____....._____....._____....._____
Traceback (most recent call last):
File "/home/guy/.arduino15/packages/esp8266/hardware/esp8266/3.0.2/tools/upload.py", line 66, in <module>
esptool.main(cmdline)
File "/home/guy/.arduino15/packages/esp8266/hardware/esp8266/3.0.2/tools/esptool/esptool.py", line 3552, in main
esp.connect(args.before, args.connect_attempts)
File "/home/guy/.arduino15/packages/esp8266/hardware/esp8266/3.0.2/tools/esptool/esptool.py", line 529, in connect
raise FatalError('Failed to connect to %s: %s' % (self.CHIP_NAME, last_error))
esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header
esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header
Para verificar se não é um erro de IDE, tentei usar esptool.py
para apagar o flash e obtive o mesmo comportamentoConnecting........_____....._____....._____....._____....._____....._____....._____
isso acontece com o ubuntu mais recente com o kernel mais recente e várias versões do arduino-ide ( do snap, do apt install, mesmo com a versão mais recente instalada do site do arduino ) tentei várias versões da placa tentei o esptool modificado tentei o esptool não modificado tentei vários ( não cobra apenas) cabos tenta várias placas esp32 e fornecedores esp32 ( wemos, nodemcu, etc.)
Eu acredito que pode haver um problema com o driver serial? Todas as placas estão funcionando muito bem no Windows com todas as versões do arduino-ide testadas no Ubuntu 20.04 e os mesmos cabos. Descartei qualquer possível problema em relação a: software (ide), cabos, placas.
vai cavar mais para isso.
LE: Encontrei o problema! Parece que há um bug no driver do kernel para ch340/ch341 Eu tinha um kernel antigo instalado ( 5.9.x ) e com este funciona. Isso me levou a algumas pesquisas na internet :) então aqui está
Parece-me que a partir do kernel 5.10.x até 5.14-rc5 o bug está presente.
Felizes caras de codificação
Solução alternativa para placas ESP:
Configurações antes de carregar o esboço:
Então:
Fonte: https://forum.manjaro.org/t/manjaro-21-1-0-und-esp8266-sketch-upload-doesnt-work-anymore/79712/2
Nota: Testado no ESP8266 (NodeMCU)
Atualizar:
Esse problema foi corrigido na versão mais recente do kernel. Por favor, atualize o kernel e teste novamente.
com kernel linux-image-5.4.0-87-generic @ ubuntu 18.04 eu tenho exatamente o mesmo problema (executando o arduino mais recente, definições de placa e libz), quando eu reinicio para 5.4.0-86-generic ele funciona novamente, não sei por que , mas passei uma hora hoje descobrindo o que mudou (bcs eu uso arduino por muito tempo neste computador e sempre funcionou tudo bem...)
Então tente inicializar o kernel mais antigo, talvez ajude
Obrigado, a solução funciona para mim !!
5.4.0-89-generic #100-Ubuntu SMP Sex 24 de setembro 14:50:10 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
VID: 1A86 PID: 7523