icestorm: iceprog does not find iCEstick on Windows
Hello, I got a new iCEstick today, trying to use it with the icestorm toolchain on Windows. I can get a bitstream generated fine, but when I do iceprog my_bitstream.bin
I just get this:
Can't find iCE FTDI USB device (vendor_id 0x0403, device_id 0x6010).
ABORT.
I’m thinking this is a bug in icestorm/iceprog itself, since Diamond Programmer off the Lattice site can program the iCEstick with no problem. I also double checked what device/vendor IDs it’s showing up as, and they matched 0x0403/0x6010, as shown in this screenshot.
How would I fix this? I even tried with -d i:0x0403:0x6010
, although that didn’t fix it at all.
About this issue
- Original URL
- State: closed
- Created 6 years ago
- Comments: 24 (8 by maintainers)
For custom boards such as the icebreaker (cc @esden), I wonder if this could be fixed by disabling VCP in the EEPROM for the first port? Or does Windows need to be explicitly told to use libusb, as opposed to just not autobinding the serial port?
LibFTDI
doesn’t really play nice w/ Windows by default. Unlike Linux, it’s not possible forlibusb
/libFTDI
to switch between a serial port USB device and FTDI functionality at will; you need a special driver for this.… and @daveshah1 beat me to it 😃.
Hi @soccermitchy
Diamond uses the standard FTDI drivers, whereas iceprog is designed to be cross platform and uses libftdi/libusb. In order to get this working, you need to enable the correct driver using Zadig. The instructions at: https://learn.adafruit.com/adafruit-ft232h-breakout/windows-setup should hopefully work - ignore the difference in the device ID.