Closed notmentaloutlaw closed 1 year ago
“Waiting for USB serial port” means that your keyboard is configured to expect the caterina
bootloader (usually used on Pro Micro controllers), but apparently you have the atmel-dfu
bootloader (usually used on Elite-C). You may add BOOTLOADER = atmel-dfu
to the rules.mk
file in your keymap to change the bootloader type without editing the keyboard files.
Also you should install the udev rules, as qmk doctor
advises, unless you are using something else than udev
/eudev
to manage device permissions.
Alright I have done that and it looks like it has flashed (i.e keyboard keys work and the name of the keyboard is listed in lsusb) however after doing the qmk flash command I do get an error at the end
Bootloader Version: 0x00 (0)
Checking memory from 0x0 to 0x6FFF... Not blank at 0x1.
Erasing flash... Success
Checking memory from 0x0 to 0x6FFF... Empty.
Checking memory from 0x0 to 0x4DFF... Empty.
0% 100% Programming 0x4E00 bytes...
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success
0% 100% Reading 0x7000 bytes...
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success
Validating... Success
0x4E00 bytes written into 0x7000 bytes memory (69.64%).
gmake[1]: *** [platforms/avr/flash.mk:173: flash] Error 254
Make finished with errors
gmake: *** [Makefile:414: megami/sweep:akane:flash] Error 1
Apparently there is some bug in dfu-programmer
that causes it to detect some error near the very end of the flashing process, even though everything actually went fine. One hypothesis is that on some machines the disconnect from the bootloader is detected fast enough that dfu-programmer
gets an error reply on the final command to exit the bootloader. So you need to look for the success message, and ignore the exit code if the message is present.
Alright thanks for the information. I am closing this since I have achieved my goal.
Describe the Bug
I am on gentoo with the musl overlay. I am have successfully compiled firmware for the ferris sweep keyboard. However, even though lsusb says
And I have all the correct dependencies installed. It keeps on saying that it is Waiting for USB serial port - reset your controller now.
Keyboard Used
ferris/sweep
Link to product page (if applicable)
I built it myself
Operating System
Gentoo (musl/selinux/hardened profile)
qmk doctor Output
Is AutoHotKey / Karabiner installed
Other keyboard-related software installed
N/A
Additional Context
I am running this inside a virtual environment and to my understanding this shouldn't impact it. I can not install it outside a venv as that will break my system packages. I tried installing it in a virtual machine that had glibc (artix) with the keyboard passed through but for some reason that couldn't flash the hex either.