Hi, this is very helpful but has not taken me all the way to full functionality. I was not applying the clock signal at startup time originally, but I have tried to do so on my second attempt.
Using the doc you linked to, I was able to restore communication with my crate by connecting to it over the UART micro-USB port and running:
$ artiq_mkfs kasli.config -s ip 192.168.1.75 -s rtio_clock ext0_synth0_10to125
$ artiq_flash storage -f kasli.config
These two commands ran successfully and made the red LED turn off. I then unplugged the crate's power, and connected it to my external 10 MHz clock. I then plugged the power back into the crate. The red LED turned on about half a minute after doing so.
I was worried that there might be something wrong with my clock signal, so I've double-checked my settings. I am inputting a square wave external signal and am aiming to provide -5 dBm of power to the clk input port, as suggested in these Kasli specs. I am assuming the clk input has 50 Ohm input impedance, and as such my signal oscillates between 180 and 0 mV. I am confident that this is all correct, though any feedback would be appreciated.
Since my crate was now back in red LED mode, the last thing I did was try and return the crate to its internal clock, again over UART. I ran:
$ artiq_mkfs kasli.config -s ip 192.168.1.75 -s rtio_clock int_125
$ artiq_flash storage -f kasli.config
and again power cycled the crate. This time the red LED never turned on, and I was able to connect to the crate over Ethernet and run scripts successfully off of the crate, with it being internally clocked. I input my external clock signal again and attempted to get the crate to switch over to the external clock by running:
$ artiq_coremgmt config write -s rtio_clock ext0_synth0_10to125
and then power cycling the crate. The crate functioned exactly as it had before the command, and when I checked the core logs I got the following warning:
WARN(runtime::rtio_clocking):rtio_clock setting not recognised. Falling back to default.
To summarize, it seems like I can only reliably switch over to external clocking by running artiq_flash, and when I do so the crate acts like it is not receiving any external clock signal even when I am sending one in before it even reboots.