Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reset EEPROM doesn't work for atmega32u2 #56

Closed
colemarkham opened this issue Oct 31, 2018 · 3 comments · Fixed by #75
Closed

Reset EEPROM doesn't work for atmega32u2 #56

colemarkham opened this issue Oct 31, 2018 · 3 comments · Fixed by #75

Comments

@colemarkham
Copy link
Contributor

Clicking the "Reset EEPROM" runs dfu-programmer atmega32u2 erase --force with a message that prints 'success'. There is no indication that the EEPROM was not actually reset. To support atmega32u2, the empty EEPROM file just needs to be added to the build alongside the 32u4 file, but any other processor that doesn't work should print a message.

@fauxpark
Copy link
Member

It seems like atmega32u4_eeprom_reset.hex only erases the first 128 bytes. Evidently QMK currently doesn't use more than that.

Considering all supported MCUs have far more than 128 bytes of EEPROM, I don't think we need an extra hex file - the existing one can probably serve as a generic EEPROM clearer for AVRs.

@drashna
Copy link
Member

drashna commented May 18, 2019

@fauxpark all we need to do is wipe the first byte of EEPROM, actually. If that's cleared, it's not FEED (aka the magic number for eeprom), and will trigger an initialization on the next startup of the firmware.

Honestly, I think it would be better to include an eep file, and flash that instead. That would be more "compatible" anyways.

@fauxpark
Copy link
Member

Something like this then:

:0100000000FF
:00000001FF

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants