Closed BillyBuerger closed 6 years ago
The device settings resetting every time you flash is an unfortunate side effect of keyplus storing its settings in the flash section of the xmega instead of eeprom.
The 'encoding' is an invalid keyword argument for this function
error is likely because Python 2 (which the Windows version of the flasher is built with) version of open()
doesn't support the encoding
argument introduced in this commit. It should be an easy fix.
Try using this build. This is built with my changes in the PR above.
New error. Same time when programming the Device and RF settings it now says "cannot convert argument to integer".
I just had a thought that maybe I could use the old version to load the device settings and layout. So I used flasher 0.3.1 and it didn't give an error. But, the keyboard wasn't sending out any keys. So I still had to revert back to the 0.3.1 firmware to get it back working.
Oh, I saw your comment here but actually went to the releases page and dowloaded the flasher "-fix1". I just noticed you posted a different link on here but that link doesn't work. So I'm probably not using the correct flasher version with your fix.
I have just updated Keyplus CI to generate builds with Python 3. Hopefully this should prevent some compatibility issues. Try this new build.
Still getting an error on your link...
HTTP ERROR 404 Problem accessing /job/keyplus-flasher/lastSuccessfulBuild/artifact/keyplus/host-software/dist/keyplus_flasher-0.3.3pre-ef617e6-build33.exe. Reason:
Not Found
Got it. Seems to crash when I try to program anything with it. No error messages, just goes away. I tried updating the firmware first. When that didn't work, I updated the firmware with the previous version and then tried using this one just to set the device id and layout. Same crash in both cases.
The crashing appears to be a bug with Keyplus Flasher's recent port to PyQt5. It seems to be fixed in the latest build from Keyplus CI.
Sorry for closing the issue, seems like GitHub did it automatically.
I tested the new python3 build and I think I fixed all the remaining issues on Windows. It's here build 0.3.3.
Thanks, that did it. I was able to flash the 3.3 firmware without issue. And now my volume keys are working. Thanks for the hard work.
I flashed the latest firmware 0.3.2 on my Keyplus Rev03 and it appears to flash fine but the info states "Warning: Empty settings!" Every time I've flashed the firmware I end up with a device ID set to 255. So I go to Device and RF, pick a layout file and set Device id to 0 and generate a new RF settings, then program. This time I get an error "'encoding' is an invalid keyword argument for this function". I am able to flash back to firmware 0.3.1 without any issues and get it back working again.