Plug it in and check dmesg:
[6780403.023743] usb 3-8: new high-speed USB device number 83 using xhci_hcd
[6780403.039899] usb 3-8: New USB device found, idVendor=0925, idProduct=3881
[6780403.039902] usb 3-8: New USB device strings: Mfr=0, Product=0, SerialNumber=0

Program on a linux machine (link), also cyusb_linux_programmers_guide:
cd cyusb_linux_1.0.4

Add line to configs/cyusb.conf:

0925 3881 Clone Cypress USB device
04b4 8613 Default Cypress USB device

Add line to configs/88-cyusb.rules:
KERNEL=="*", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ACTION=="add", ATTR{idVendor}=="0925", MODE="666", TAG="cyusb_dev", RUN+="/usr/local/bin/ A"

Install: ./

Now run it and

cyusb_linux 2017

Program with PSOC4_swd_programmer/FX2LP/swd.iic, messages:
Found C2 Load IIC format file
Releasing FX2 CPU from reset
Signal 10 (=SIGUSR1) received !
No of devices of interest found = 1


Now use it to program the CY8C4245PVI-482 (32 kb flash)
cd PSOC4_swd_programmer/PC
./swd-prog -y Tarocco.hex 2&> usb.logy Analyzer

-Gave an error. Turns out swd-prog thinks the file is the last argument is the file and the ‘2’ was the last arg. And should be just ‘&>’. Edit swd_prog.cpp. Not really necessary, but avoids problems.

fileIdx = idx;

if (fileIdx == -1) { fileIdx = idx; }

and make:
g++ -c -o swd_prog.o swd_prog.cpp
g++ -o swd-prog HexFileParser.o ProgrammingSteps.o swd_prog.o LibUSB.o -lusb-1.0

Now runs:
./swd-prog -y Tarocco.hex &> usb.log

Acquring device...done
Verifying chip ID...done
Erasing flash...done
Checking flash checksum...done
Verifying final checksum...done

Burning firmware on a Mac / OS X
Haven’t tried this:
Flash and use the CY7C68013A module with sigrok on a mac

Motor Testing
Pittman 9413D319 3140-0665 19.1V, encoder pinout, img
Tested encoder, works! Motor runs at 3.3V, 5V.


Leave a Reply

Your email address will not be published. Required fields are marked *