Connected CW305 and run script but failed

Hi,coflynn

I received my boards recently, when I tried to connect the cw305 and run the script "CW305 Atrix Target w/Chipwhisper-Lite", some problem occured. When I run capture1, Chipwhisperer Capture can't received sample.

My FPGA is XC7A100T, the M0M1M2 switch is "111", the led light situation is following: on cw305, the led8(green) is on, the led1(red)  is flashing, and the led FPGA_DONE-ON=Unprog(red) is on; on cw-lite, blue(USB Enumerated) and green led is falshing, and the red led(ADC lock failed) is on, others are off. And the digital tube show number 007.The Desired Frequency setting in CLKGEN Setting in CW Capture is 5MHz. 

I think there maybe some wrong with the cmd, so I tried run the script sentence cw.conbsfile=r"/home/cwuser/chipwhisperer/hardware/victims/cw305_artixtarget/fpga/vivado_examples/aes128_verilog/aes128_verilog.runs/impl_100t/cw305_top.bit", force=False) as in the [wiki.newae.com/CW305_Artix_FPGA_Target](https://wiki.newae.com/CW305_Artix_FPGA_Target) page but got an error 'bsfile':con() got an unexpected keyword argument 'bsfile''.

Did I missed some operation steps so it does't work? 

In addition, I found the 3 basic tutorial of cw305 are stilled not completed yet. When will it be complete? We really need the tutorial to follow as start.

Thank you!

I have the CW305 board as well and get the same error

Try calling _con(…) instead of con(…)

Huh that worked, thanks!

Oops! I got an error,USBError: [Errno 16] Resource busy.

But finally I programmed the FPGA, in the Target Settings panel, by setting Bitream File and push the button “Program FPGA”.

Now problem is , when I try to run “cw.loadEncryptionKey(test_key)”, it show warning: “Warning: USB Device not found. Did you connect it first?”. So I can’t run it in script.

Only when I run capture 1, it can get to encrypt. And I got the trace like show in the attach picture.

It happens because the con() method sets the connection flag to true while the _con(…) method (which is a hack), don’t.
While Colin don’t fix it, you can set this flag manually with:
cw.connectStatus.setValue(True)

before connecting to the target. Or you can change the code so the con() method forward all the arguments to the _con() method in the _base.py file.

Hi Dai,

You mentioned that you were waiting for the CW305 tutorials to be finished. I wanted to let you know that we’ve written these now! You can find them on the wiki:
https://wiki.newae.com/Tutorial_CW305-1_Building_a_Project
https://wiki.newae.com/Tutorial_CW305-2_Breaking_AES_on_FPGA
https://wiki.newae.com/Tutorial_CW305-3_Clock_Glitching
https://wiki.newae.com/Tutorial_CW305-4_Voltage_Glitching_with_Crowbars