The mac example needs the PID and VID to match exactly. In
the system profiler you should see the USB PID and VID before and
after the device is booted.
I have used the same example code to boot our USB FX device and it
is quite easy to get going after you have modified the #defines at
the beginning to make sure the VID and PIDs are the same as your
device both before and after booting.
The current sample code is probably slightly different than the one
you had. There's no #define but some options to pass to the command
line. In my case, the VID and PID of the downloaded device are not
the Cypress default ones. For the moment, I use fake vid and pid.
I have not tried it with the FX2 though. Could the bootloader code
need tweaking ?
I had to change the address of the "reset" register (CPUCS for the
FX2). That's all. The firmware is actually downloaded and executed by
the 8051 (I could check that with a little program that cycles the
LEDs on the eval board).
Does the same firmware re-enumerate properly on Windows using the
Cypress control panel ?
Since my last tests (really fresh, about 15 min or so), the device
now re-enumerates with the fake VID and PID. It fails to be fully
recognized because of - I suppose - inconsistency in the descriptors.
USBProber shows an error "device did not respond to request for first
4 bytes". That's where I am at the moment. I'll have to study
carefully the descritptors.....
Thanx
Jonathan Selby
Director - Software Development
Xaxero Marine Software Engineering Ltd
at skype.com - xaxjon
Satellite Phone (00) 88163 142 9922
Cell Argentina (54) 929 0160 2064
(00) 64 (0)9 412 7580 fax (00) 64 (0)9 412 7579
http://www.xaxero.com
Software for extending your horizon....
philippe wicker wrote:
Hello all,
I'm really new to USB programming and these are my first
experiments. I'm trying to download a firmware into an EZ-USB
FX2 chip using the Ezloader sample code. This chip is actually
hosted by a Cypress evaluation board. The downloaded firmware
contains descriptors for a class compliant midi device (this is
at least what I assume....). I already changed the k8051_USBCS
constant (0x7f92) with k8051_CPUCS (0xE600) which is I believe
the correct register to address to manage the reset state for the
FX2 8051. The downloading and "assert reset" and "de-assert
reset" requests seems to complete successfully, but the "new"
device doesn't show up in USBProber (USBProber still shows the
Cypress default device 0x4b4/0x8613) and NewDeviceAdded loop body
is not executed after the downloading.
Any idea about the problem? Should the "new" device automatically
shows up in USBProber? As it is a class compliant midi device, do
I need to load a driver (as is done by Ezloader)?
Thanks for any tips or pointers.
Regards
Philippe
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Usb mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/usb/email@hidden
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Usb mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/usb/email@hidden