-
Notifications
You must be signed in to change notification settings - Fork 80
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
Add SmartEEPROM Support #62
Add SmartEEPROM Support #62
Conversation
1ca9830
to
50c2806
Compare
Nice to see someone else trying to get this feature merged! I have a few questions/suggestions about the changes:
As I side note, I suggest that
I recommend that change to be reverted, as it could be confusing in terms of UX; and dangerous since it requires user intervention after the flash process has already started. IMHO, the SmartEEPROM settings shouldn't be touched unless the user is explicit about it on the command line. I hope this helps! :) |
For context, a lot of the requested changes are from internal discussions with Drop and myself.
Done, was just being lazy....
if you dig into the data sheet, going up to 4k of eeprom gives the same wear leveling expectations while giving up the same amount of flash. The value of 2k hasn't been 100% confirmed yet, but the intentions are to support more than the default QMK eeconfig settings.
The change is to try and optimise the end user experience to those users who are less technical. Having multiple commands that might have to be run is going to cause confusion. And blindly changing the value without the users knowledge was deemed to be less than ideal. The compromise was the contents of this PR. A command line option still exists to provide coverage of not wanting to change it, or wanting to avoid interaction. Theres a meeting later today, so will bring up your concurs. Though theres no guarantee the behaviour will revert to that of your previous PR. |
Ah, great to know they're helping :)
Ah, yeah, just saw the table on page 655 :)
I understand the reasoning. Still, I still recommend to remove the option for user input during the flashing process. Also, less technical users probably won't have multiple keyboards lying around to to try have two keyboards plugged at the same time. What I suggest is the previous behavior, from #49:
Of course, change the names of the CLI parameters as it seems correct for you and Massdrop. I'm just suggesting this to avoid potential customer complaints about bricked keyboards (etc.) in the future :) |
At this point its only performed a read, so wont be any less of a defence against corruption/bicking than the point at which a write is performed on this PR or #49. Both assume it will not be interrupted during the running of |
I'm not going to be able to cover all the possible situations, but I'll try to describe a simple one that might be food for thought. Assume non-technical user with 2 keyboards. Keyboard 1 (KB1) is a CTRL, Keyboard 2 (KB2) is a unknown keyboard that runs on similar chip, but has unknown capabilities and quirks at this time.
There's a fair number of problems that can happen in that.
Especially when flashing something only recoverable by hardware intervention (e.g. JTAG or some other invasive procedure), I suggest to be extra careful and always assume the worst. People can do some really weird stuff 😢
😄 |
1c05c7a
to
f5563d2
Compare
Co-authored-by: Joel Challis <git@zvecr.com>
Based on recent discussions, the expected behaviour for enabling SmartEEPROM is slightly different than that proposed within #49.
Main differences are:
Examples: