I have problems trying to update the gateware on my freshly received ARTIQ system from 6.7621.d9b01ed8 to 6.7661.ca67ae83 . I created a device_db.py
from the JSON config file and was able to communicate with the system and run simple test scripts, excecuting TTL signal events on the DIO-BNC.
Due to the warning
WARNING:artiq.coredevice.comm_kernel:Mismatch between gateware (6.7621.d9b01ed8) and software (6.7661.ca67ae83) versions
I wanted to update the gateware. I followed the instructions for Windows/conda from the documentation (flashing-gateware-and-firmware-into-the-core-device).
- I conntected the crate to the PC via the USB cable (USB 2.0 port).
- I installed the WinUSB driver via Zadig.
- I checked the latest gateware build for my system on https://nixbld.m-labs.hk/jobset/artiq/full/latest-eval and installed it via
conda install artiq-board-kasli-bonn
(Is this the recommended way with conda?). Conda lists it as version6.7661.ca67ae83
as desired. - I tried to write the flash via
artiq_flash -V bonn
with the following error message:
As far as I can see this boils down to a libusb error(artiq) qumercury_artiq> artiq_flash -V bonn Design: top;COMPRESS=TRUE;UserID=FFFFFFFF;Version=2021.2 Part name: 7a100tfgg484 Date: 2022/04/07 Time: 15:13:30 Bitstream payload length: 0x24d334 Open On-Chip Debugger 0.10.0-00008-gb0b5147 (2018-01-15-20:50) Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html none separate adapter speed: 25000 kHz Error: libusb_open() failed with LIBUSB_ERROR_NOT_SUPPORTED Info : ftdi: if you experience problems at higher adapter clocks, try the command "ftdi_tdo_sample_edge falling" Info : clock speed 25000 kHz Info : JTAG tap: xc7.tap tap/device found: 0x13631093 (mfg: 0x049 (Xilinx), part: 0x3631, ver: 0x1) Info : gdb server disabled invalid command name "xadc_report" Traceback (most recent call last): File "C:\tools\miniconda3\envs\artiq\Scripts\artiq_flash-script.py", line 9, in <module> sys.exit(main()) File "C:\tools\miniconda3\envs\artiq\lib\site-packages\artiq\frontend\artiq_flash.py", line 474, in main programmer.run() File "C:\tools\miniconda3\envs\artiq\lib\site-packages\artiq\frontend\artiq_flash.py", line 207, in run self._client.run_command(cmdline) File "C:\tools\miniconda3\envs\artiq\lib\site-packages\artiq\remoting.py", line 57, in run_command subprocess.check_call([arg.format(tmp=self._tmp, **kws) for arg in cmd]) File "C:\tools\miniconda3\envs\artiq\lib\subprocess.py", line 364, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['openocd', '-s', 'C:\\tools\\miniconda3\\envs\\artiq\\Library\\share\\openocd\\scripts', '-c', 'source [find board/kasli.cfg]; target create xc7.spi0.proxy testee -chain-position xc7.tap; flash bank spi0 jtagspi 0 0 0 0 xc7.spi0.proxy 0x2; gdb_port disabled; tcl_port disabled; telnet_port disabled; init; xadc_report xc7.tap; pld load 0 {C:\\tools\\miniconda3\\envs\\artiq\\share\\bscan-spi-bitstreams\\bscan_spi_xc7a100t.bit}; flash probe spi0; flash erase_sector spi0 0 36; flash write_bank spi0 {C:\\Users\\QUMERC~1\\AppData\\Local\\Temp\\artiq_bsj9b3gk_top.bit} 0x0; flash verify_bank spi0 {C:\\Users\\QUMERC~1\\AppData\\Local\\Temp\\artiq_bsj9b3gk_top.bit} 0x0; flash probe spi0; flash erase_sector spi0 64 66; flash write_bank spi0 {C:\\tools\\miniconda3\\envs\\artiq\\lib\\site-packages\\artiq\\board-support\\kasli-bonn\\bootloader.bin} 0x400000; flash verify_bank spi0 {C:\\tools\\miniconda3\\envs\\artiq\\lib\\site-packages\\artiq\\board-support\\kasli-bonn\\bootloader.bin} 0x400000; flash probe spi0; flash erase_sector spi0 69 78; flash write_bank spi0 {C:\\tools\\miniconda3\\envs\\artiq\\lib\\site-packages\\artiq\\board-support\\kasli-bonn\\runtime.fbi} 0x450000; flash verify_bank spi0 {C:\\tools\\miniconda3\\envs\\artiq\\lib\\site-packages\\artiq\\board-support\\kasli-bonn\\runtime.fbi} 0x450000; xc7_program xc7.tap; exit']' returned non-zero exit status 1.
Error: libusb_open() failed with LIBUSB_ERROR_NOT_SUPPORTED
and a problem originating from callingopenbcd
with the error messageinvalid command name "xadc_report"
.
I don't have a linux machine at hand at the moment, but I tried to flash the gateware from WSL, but with failing early by not get nix daemon running without systemd. So I would like to make this work under Windows if possible.
Any help is appreciated. Thanks!