Yampad: Firmware não compila

Criado em 19 ago. 2020  ·  8Comentários  ·  Fonte: mattdibi/yampad

Olá,
Estou apenas tentando fazer o flash do microcontrolador antes de preencher o pcb e me deparei com um problema. Configurei meu ambiente qmk no Ubuntu, clonei seu fork do firmware qmk e digitei o comando,

make yampad:default

No entanto, recebo o seguinte erro:
make: * Nenhuma regra para tornar o alvo ' yampad:default '. Pare.

Por favor, você pode ajudar? Olhando para a subpasta de teclados, não há uma pasta yampad dentro, no último commit.

technical support

Todos 8 comentários

A pasta yampad não está presente no master quando clonada. No entanto, está lá em um ramo chamado yampad. O branch yampad é o padrão quando você o visualiza no Github e o master é o padrão ao clonar?

Muito confuso para quem não conhece git! Mudar para a ramificação do yampad não altera a mensagem de erro.

Oi,
sim, o firmware do yampad vive apenas no meu fork por enquanto. Ainda não foi enviado para o repositório principal do QMK.
Em relação ao seu erro, depois de mudar para a ramificação do yampad, tudo deve funcionar.

O branch yampad é o padrão quando você o visualiza no Github e o master é o padrão ao clonar?

O branch master é sempre o padrão.

Mudar para a ramificação do yampad não altera a mensagem de erro.

A pasta keyboards/yampad apareceu?

Você poderia colar aqui os comandos que você emitiu para alternar entre branch e build (só para ter certeza de que estava na pasta correta ao emitir o comando build)?

Posso fazer um melhor e emitir uma solicitação de mesclagem para o repositório de firmware QMK, se isso funcionar? Fiz um fork de uma versão recente para que não seja muito difícil. Enquanto isso, as etapas que dei são simplificadas abaixo.

Configure meu ambiente QMK no Linux conforme https://docs.qmk.fm/#/newbs_getting_started
Em uma pasta temporária e usando um tipo de terminal, git clone https://github.com/mattdibi/qmk_firmware . Podemos excluir isso quando terminar.
Na pasta temporária digite cd qmk_firmware para mudar o diretório para qmk_firmware
Então git checkout yampad
Copie ./keyboards/yampad para ~/qmk_firmware/keyboards (este é o local padrão ao configurar o qmk na etapa 1)
Digite cd ~/qmk_firmware para alterar o diretório lá
Digite qmk compile -kb yampad -km default
Digite make yampad:default:avrdude

As etapas acima me permitiram fazer o flash com sucesso do meu pro micro. Ainda não testei em um teclado numérico. Se eu puder organizar uma mesclagem com o qmk_firmware original, todos os outros usuários teriam que fazer apenas as três últimas etapas.

A solicitação de pull está aqui https://github.com/qmk/qmk_firmware/pull/10112

Etapas acima verificadas trabalhando em um teclado numérico real.

Olá!

Eu segui as instruções do @Daveyr e consegui compilar, mas estou tendo problemas para conectar ao programador... esta é a saída do terminal:

nckmlb<strong i="8">@xpso</strong>:~/qmk_firmware$ make yampad:default:avrdude
QMK Firmware 0.11.68
Making yampad with keymap default and target avrdude

avr-gcc (GCC) 5.4.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Size before:
   text    data     bss     dec     hex filename
      0   25244       0   25244    629c .build/yampad_default.hex

Copying yampad_default.hex to qmk_firmware folder                                                   [OK]
Checking file size of yampad_default.hex                                                            [OK]
 * The firmware size is fine - 25244/28672 (88%, 3428 bytes free)
Detecting USB port, reset your controller now.....................................................................................................................
Device /dev/ttyACM0 has appeared; assuming it is the controller.
Waiting for /dev/ttyACM0 to become writable..

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

avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
^Cmake[1]: *** [tmk_core/avr.mk:193: avrdude] Interrupt
make: *** [Makefile:522: yampad:default:avrdude] Interrupt


Verifiquei se estou conectado à porta correta e posso fazer upload de esboços do arduino sem nenhum problema. Não sei como resolver esse problema..

@ nbaptist16 Poderia ser este o problema? (Não relacionado ao firmware BTW)

Detectando a porta USB, reinicie seu controlador agora ............................................. .................................................. .........................
O dispositivo /dev/ttyACM0 apareceu; supondo que seja o controlador.
Aguardando /dev/ttyACM0 se tornar gravável..

Conectando ao programador: .avrdude: butterfly_recv(): o programador não está respondendo

avrdude: butterfly_recv(): programador não está respondendo
avrdude: butterfly_recv(): programador não está respondendo
avrdude: butterfly_recv(): programador não está respondendo
^Cmake[1]: * [tmk_core/avr.mk:193: avrdude] Interrompermake: * [ Makefile:522 : yampad:default :avrdude] Interromper
```

Achei algo que funcionou!

Executei os dois comandos a seguir em um novo terminal, mas tenho certeza de que o segundo comando sozinho é o que fez o trabalho:

echo 'ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"' | sudo tee /etc/udev/rules.d/77-arduino.rules

sudo udevadm trigger

Não tenho certeza de por que funcionou, mas consegui piscar o teclado

avrdude: verifying ...
avrdude: 25244 bytes of flash verified

avrdude: safemode: Fuses OK (E:CB, H:D8, L:DE)

avrdude done.  Thank you.

Além disso, obrigado @mattdibi ! :)

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

Zeioth picture Zeioth  ·  6Comentários

max picture max  ·  3Comentários

ghost picture ghost  ·  3Comentários

danilvalov picture danilvalov  ·  3Comentários

dpw picture dpw  ·  3Comentários