The experiment runs indefinately. However, there is an RTIO underflow error if the hotfix delay I have at the end of the for loop is too small (Around 5*us instead of 20*us)
I've printed out the device log from the coremgmt with the log level set the TRACE at the base of this reply.
I set the delay values between pulses to 200*ns, 500*ns and 1000*ns and each time the same desyncing effect occured.
I also checked the ch2 connection (Which is connected to the same urukul board as ch3), to see how those pulses compare. They are the same as the pulses from ch1.

[ 0.000009s] INFO(runtime): ARTIQ runtime starting...
[ 0.003933s] INFO(runtime): software ident 6.7191.8451e58f.beta;squartikul
[ 0.010911s] INFO(runtime): gateware ident 6.7191.8451e58f.beta;squartikul
[ 0.017888s] INFO(runtime): log level set to INFO by default
[ 0.023616s] INFO(runtime): UART log level set to INFO by default
[ 0.029999s] INFO(runtime::rtio_clocking): using internal RTIO clock (by default)
[ 0.315159s] INFO(board_artiq::si5324): waiting for Si5324 lock...
[ 2.773536s] INFO(board_artiq::si5324): ...locked
[ 2.803878s] INFO(runtime): network addresses: MAC=04-91-62-c7-28-92 IPv4=192.168.1.70 IPv6-LL=fe80::691:62ff:fec7:2892 IPv6=no configured address
[ 2.817994s] INFO(runtime::mgmt): management interface active
[ 2.832275s] INFO(runtime::session): accepting network sessions
[ 2.847695s] INFO(runtime::session): running startup kernel
[ 2.852199s] INFO(runtime::session): no startup kernel found
[ 2.857978s] INFO(runtime::session): no connection, starting idle kernel
[ 2.864848s] INFO(runtime::session): no idle kernel found
[ 42009.939904s] INFO(runtime::moninj): new connection from 192.168.1.38:62557
[ 42014.043161s] INFO(runtime::session): new connection from 192.168.1.38:62558
[ 42014.094936s] INFO(runtime::kern_hwreq): resetting RTIO
[ 42014.289664s] INFO(runtime::session): no connection, starting idle kernel
[ 42014.295749s] INFO(runtime::session): no idle kernel found
[ 42067.017094s] INFO(runtime::session): new connection from 192.168.1.38:62560
[ 42067.070355s] INFO(runtime::kern_hwreq): resetting RTIO
[ 42154.666019s] INFO(runtime::session): no connection, starting idle kernel
[ 42154.671841s] INFO(runtime::session): no idle kernel found
[ 42157.180964s] INFO(runtime::session): new connection from 192.168.1.38:62562
[ 42157.232598s] INFO(runtime::kern_hwreq): resetting RTIO
[ 42215.089980s] INFO(runtime::session): no connection, starting idle kernel
[ 42215.095813s] INFO(runtime::session): no idle kernel found
[ 42217.717122s] INFO(runtime::session): new connection from 192.168.1.38:62564
[ 42217.768745s] INFO(runtime::kern_hwreq): resetting RTIO
[ 42260.277710s] INFO(runtime::session): no connection, starting idle kernel
[ 42260.283514s] INFO(runtime::session): no idle kernel found
[ 42263.068035s] INFO(runtime::session): new connection from 192.168.1.38:62565
[ 42263.119470s] INFO(runtime::kern_hwreq): resetting RTIO
[ 43483.361821s] INFO(runtime::session): no connection, starting idle kernel
[ 43483.367628s] INFO(runtime::session): no idle kernel found
[ 43510.120251s] INFO(runtime::session): new connection from 192.168.1.38:62595
[ 43510.172441s] INFO(runtime::kern_hwreq): resetting RTIO
[ 43510.367329s] INFO(runtime::session): no connection, starting idle kernel
[ 43510.373395s] INFO(runtime::session): no idle kernel found
[ 43544.942403s] INFO(runtime::session): new connection from 192.168.1.38:62596
[ 43544.993971s] INFO(runtime::kern_hwreq): resetting RTIO
[ 43545.188497s] INFO(runtime::session): no connection, starting idle kernel
[ 43545.195103s] INFO(runtime::session): no idle kernel found
[ 43560.728391s] INFO(runtime::session): new connection from 192.168.1.38:62600
[ 43560.780166s] INFO(runtime::kern_hwreq): resetting RTIO
[ 43560.973473s] INFO(runtime::session): no connection, starting idle kernel
[ 43560.979540s] INFO(runtime::session): no idle kernel found
[ 43605.672793s] INFO(runtime::session): new connection from 192.168.1.38:62602
[ 43605.724219s] INFO(runtime::kern_hwreq): resetting RTIO
[ 43605.918707s] INFO(runtime::session): no connection, starting idle kernel
[ 43605.924771s] INFO(runtime::session): no idle kernel found
[ 43827.268321s] INFO(runtime::session): new connection from 192.168.1.38:62604
[ 43827.320078s] INFO(runtime::kern_hwreq): resetting RTIO
[ 43853.303875s] INFO(runtime::session): no connection, starting idle kernel
[ 43853.309794s] INFO(runtime::session): no idle kernel found
[ 43855.865369s] INFO(runtime::session): new connection from 192.168.1.38:62606
[ 43855.916984s] INFO(runtime::kern_hwreq): resetting RTIO
[ 43856.205176s] INFO(runtime::session): no connection, starting idle kernel
[ 43856.211243s] INFO(runtime::session): no idle kernel found
[ 44510.594148s] INFO(runtime::session): new connection from 192.168.1.38:62624
[ 44510.646072s] INFO(runtime::kern_hwreq): resetting RTIO
[ 44510.943421s] INFO(runtime::session): no connection, starting idle kernel
[ 44510.949493s] INFO(runtime::session): no idle kernel found
[ 44521.989072s] INFO(runtime::session): new connection from 192.168.1.38:62625
[ 44522.040490s] INFO(runtime::kern_hwreq): resetting RTIO
[ 44543.174618s] INFO(runtime::mgmt): new connection from 192.168.1.38:62626
[ 44555.545606s] INFO(runtime::mgmt): new connection from 192.168.1.38:62627
[ 44615.540896s] INFO(runtime::session): no connection, starting idle kernel
[ 44615.546774s] INFO(runtime::session): no idle kernel found
[ 44623.207472s] INFO(runtime::mgmt): new connection from 192.168.1.38:62628
[ 48014.922075s] INFO(runtime::moninj): new connection from 192.168.1.38:62730
[ 48020.530730s] INFO(runtime::session): new connection from 192.168.1.38:62731
[ 48020.583081s] INFO(runtime::kern_hwreq): resetting RTIO
[ 48034.195707s] INFO(runtime::session): no connection, starting idle kernel
[ 48034.201543s] INFO(runtime::session): no idle kernel found
[ 48036.199839s] INFO(runtime::session): new connection from 192.168.1.38:62733
[ 48036.252554s] INFO(runtime::kern_hwreq): resetting RTIO
[ 48047.948435s] INFO(runtime::session): no connection, starting idle kernel
[ 48047.954271s] INFO(runtime::session): no idle kernel found
[ 48052.337354s] INFO(runtime::mgmt): new connection from 192.168.1.38:62734
[ 48107.967394s] INFO(runtime::session): new connection from 192.168.1.38:62735
[ 48108.019112s] INFO(runtime::kern_hwreq): resetting RTIO
[ 48139.632549s] INFO(runtime::session): no connection, starting idle kernel
[ 48139.638375s] INFO(runtime::session): no idle kernel found
[ 48141.912322s] INFO(runtime::session): new connection from 192.168.1.38:62736
[ 48141.964151s] INFO(runtime::kern_hwreq): resetting RTIO
[ 48179.381268s] INFO(runtime::session): no connection, starting idle kernel
[ 48179.387094s] INFO(runtime::session): no idle kernel found
[ 48181.957910s] INFO(runtime::session): new connection from 192.168.1.38:62737
[ 48182.009982s] INFO(runtime::kern_hwreq): resetting RTIO
[ 48211.625857s] INFO(runtime::session): no connection, starting idle kernel
[ 48211.631682s] INFO(runtime::session): no idle kernel found
[ 48213.560019s] INFO(runtime::session): new connection from 192.168.1.38:62738
[ 48213.611694s] INFO(runtime::kern_hwreq): resetting RTIO
[ 48244.468614s] INFO(runtime::session): no connection, starting idle kernel
[ 48244.474441s] INFO(runtime::session): no idle kernel found
[ 48246.377791s] INFO(runtime::session): new connection from 192.168.1.38:62739
[ 48246.429479s] INFO(runtime::kern_hwreq): resetting RTIO
[ 48278.266611s] INFO(runtime::session): no connection, starting idle kernel
[ 48278.272436s] INFO(runtime::session): no idle kernel found
[ 48280.254595s] INFO(runtime::session): new connection from 192.168.1.38:62741
[ 48280.306483s] INFO(runtime::kern_hwreq): resetting RTIO
[ 48376.060909s] INFO(runtime::session): no connection, starting idle kernel
[ 48376.066738s] INFO(runtime::session): no idle kernel found
[ 48377.959778s] INFO(runtime::session): new connection from 192.168.1.38:62743
[ 48378.011727s] INFO(runtime::kern_hwreq): resetting RTIO
[ 48378.311866s] INFO(runtime::session): no connection, starting idle kernel
[ 48378.317961s] INFO(runtime::session): no idle kernel found
[ 48386.816180s] INFO(runtime::session): new connection from 192.168.1.38:62744
[ 48386.868065s] INFO(runtime::kern_hwreq): resetting RTIO
[ 48391.532928s] INFO(runtime::session): no connection, starting idle kernel
[ 48391.538754s] INFO(runtime::session): no idle kernel found
[ 48597.231486s] INFO(runtime::mgmt): new connection from 192.168.1.38:62746
[ 48597.237114s] INFO(runtime::mgmt): changing log level to TRACE
[ 48606.676908s] INFO(runtime::mgmt): new connection from 192.168.1.38:62747