Unable to connect to Model 01 with Chrysalis

I have a Model 01 bought in 2019. I have never changed the firmware.

It has worked perfectly with multiple different computers over the last few years, but I recently started running into issues with a Dell XPS 17 laptop. I created a thread for that a few weeks ago (note that I originally misdiagnosed the cause: the problem seems to be independent of operating system but consistently happens with just that laptop).

Anyway, one recommendation was to use Chrysalis to upgrade the firmware on my Model 01. However, I could not get it to work:

When started, it lists my Model 01, but when I click on “Connect” it shows a “Reading data from device” animation for a few seconds then it returns to the first screen and says “Communication timeout”.

I was using Windows 11 and there was a suggestion that Chrysalis might not be reliable on Windows. However, today I tried again with an iMac and had exactly the same problem. I get a “Communication timeout” with Chrysalis 0.10.4 on macOS and on Windows.

Is there any other way to update the firmware?

Caveats - I don’t own a model 01 and others, who are far more knowledgeable, are likely to respond shortly.

That said, I believe you can update the firmware with kaleidoscope: Build and install the latest firmware for your keyboard — Kaleidoscope documentation

Oh, nice. That looks easy, thanks!

I finally got around to trying this out… and it doesn’t work on Windows :frowning_face:

If I select the Keyboardio Model 01 board, I get an error:

java.io.IOException: Cannot run program "ln" (in directory "C:\Users\cac04\AppData\Local\Arduino15\packages\keyboardio\hardware\avr\1.99.5"): CreateProcess error=2, The system cannot find the file specified
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
	at java.lang.Runtime.exec(Runtime.java:620)
	at processing.app.Platform.symlink(Platform.java:282)
	at cc.arduino.utils.ArchiveExtractor.extract(ArchiveExtractor.java:261)
	at cc.arduino.utils.ArchiveExtractor.extract(ArchiveExtractor.java:82)
	at cc.arduino.contributions.packages.ContributionInstaller.install(ContributionInstaller.java:158)
	at cc.arduino.contributions.packages.ui.ContributionManagerUI.lambda$onInstallPressed$2(ContributionManagerUI.java:172)

If I ignore the error and try to select a port anyway, I get:

Invalid library found in C:\Users\cac04\AppData\Local\Arduino15\packages\keyboardio\hardware\avr\1.99.5\libraries\Kaleidoscope-LEDControl: no headers files (.h) found

So neither Chrysalis nor the Arduino IDE seem to work with a Model 01 on Windows.