Yampad: Firmware won't compile

Created on 19 Aug 2020  ·  8Comments  ·  Source: mattdibi/yampad

Hi there,
I'm just trying to flash the microcontroller prior to populating the pcb and have come across a problem. I have set up my qmk environment in Ubuntu, cloned your fork of the qmk firmware and entered the command,

make yampad:default

However, I receive the following error:
make: * No rule to make target 'yampad:default'. Stop.

Please can you help? Looking at the keyboards subfolder there is no yampad folder within, in the latest commit.

technical support

All 8 comments

The yampad folder isn't present on master when cloned. However, it is there on a branch called yampad. Is the yampad branch default when you view it on Github and master is default when cloning?

Very confusing for someone who doesn't know git! Switching to yampad branch doesn't change the error message though.

Hi,
yeah the yampad firmware lives only in my fork for now. Not yet pushed to the QMK main repository.
Regarding your error, after switching to the yampad branch everything should work.

Is the yampad branch default when you view it on Github and master is default when cloning?

The master branch is always the default one.

Switching to yampad branch doesn't change the error message though.

Did the keyboards/yampad folder appear?

Could you paste here the commands you issued for switching branch and building (just to be sure you were in the correct folder when issuing the build command)?

I can do one better and issue a merge request to the QMK-firmware repo if that works? I forked a recent version so it won't be too difficult. In the meantime, the steps I took are simplified below.

Set up my QMK environment in Linux as per https://docs.qmk.fm/#/newbs_getting_started
In a temp folder and using a terminal type, git clone https://github.com/mattdibi/qmk_firmware. We can delete this when finished.
In the temp folder type cd qmk_firmware to change directory to qmk_firmware
Then git checkout yampad
Copy ./keyboards/yampad to ~/qmk_firmware/keyboards (this is the default location when setting up qmk in step 1)
Type cd ~/qmk_firmware to change directory there
Type qmk compile -kb yampad -km default
Type make yampad:default:avrdude

The steps above allowed me to successfully flash my pro micro. I haven't tested in a numpad yet. If I can arrange a merge with the original qmk_firmware then all other users would only have to do the last three steps.

Steps above verified working on a real numpad.

Hello!

I followed @Daveyr 's instructions and was able to compile, but am having trouble connecting to the programmer... this is the terminal output:

nckmlb@xpso:~/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


I have checked that I am hooked up to the right port and am able to upload arduino sketches without any problem. Unsure how to address this issue..

@nbaptist16 Could this be the issue? (Not firmware related BTW)

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
```

I found something that worked!

I ran the following two commands in a new terminal, but I'm pretty sure the second command alone is what did the job:

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

sudo udevadm trigger

Not entirely sure of why it worked, but I was able to flash the keyboard

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

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

avrdude done.  Thank you.

Also, thank you @mattdibi ! :)

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Zeioth picture Zeioth  ·  6Comments

ThomasWeiser picture ThomasWeiser  ·  3Comments

ghost picture ghost  ·  3Comments

ivalexa picture ivalexa  ·  3Comments

brainframe-me picture brainframe-me  ·  3Comments