Hello,
I am trying to set up our Sinara crate and having difficulty getting output from Urukul. I installed Artiq 8.8392 using nix on Ubuntu and flashed the gateware with this version. I can run some simple experiments like pulsing TTLs and switching LEDs on kasli from the dashboard.
I try to run this code to test switching on/off one of the Urukul channels.
`from artiq.experiment import * #imports everything from the artiq experiment library
class Urukul_Switch(EnvExperiment):
"""Urukul Switch"""
def build(self): #This code runs on the host device
self.setattr_device("core") #sets core device drivers as attributes
self.setattr_device("urukul0_ch0") #sets urukul0, channel 0 device drivers as attributes
@kernel #This code runs on the FPGA
def run(self):
self.core.reset() #resets core device
delay(100*ms)
print("1")
self.urukul0_ch0.cpld.init() #initialises CPLD on channel 0
delay(10*ms)
print("2")
self.urukul0_ch0.init() #initialises channel
delay(10*ms)
self.urukul0_ch0.sw.on() #switches urukul channel on
self.urukul0_ch0.set(100*MHz,1.0)
self.urukul0_ch0.set_att(5.0)
delay(2*s) #2s delay
self.urukul0_ch0.sw.off() #switches urukul channel off`
It gets to output print '1' and then nothing happens. Then if I send another experiment like a TTL pulse nothing outputs, so its getting stuck with the cpld initialise bit. There is no error message on dashboard or the terminal. Then if I restart artiq master I can get a TTL pulse successfully again. If I change the delay time before cpld initialise down to 10ms I get the RTIO underflow error message.
I couldn't see anything wrong on the device_db file compared to others. Also the lights on the front of Urukul remain red.
In the dashboard if I try to set the frequency in the DDS section the terminal says the change is submitted, but the number stays at 0 MHz and again I can't run any other experiment without restarting.
Could it be an issue with flashing the Urukul card? It's Urukul v1.5 and came with the crate so I thought that should be okay.