Cypress EZ-USB Development
SimpleHID Firmware
During the development of SourceUSB, EZ-USB has been useful for emulating device features for testing. A small device framework (written in assembler) has been used to create quick prototypes.
SimpleHID uses this framework to create a minimal HID device. The device is based upon the Devasys USBI2C-IO board but it should work on other EZ-USB development boards. It has a single interrupt input report at 1 ms. interval that carries the current bus frame number (mod-16). More details follow:
* Uses framework consisting of several assembler modules:
o Data.a51 - internal data definitions
o Vector.a51 - reset and interrupt vectors
o UsbJump.a51 - EZ-USB autovector table
o Reset.a51 - reset and initialization
o IntHndlrs.a51 - interrupt handlers
o SetupPkt.a51 - endpoint 0's setup packet decoder
o StdReqs.a51 - routines for processing standard requests
o HidReqs.a51 - routines for processing HID class requests
o Main.a51 - placeholder for a mainloop
o Descriptors.a51 - device, configuration, string HID
o Utils.a51 - utility routines
* ASEM-51 source code.
* Assembles to Intel HEX which is easily loaded on Windows systems with the LOADEZ.SYS driver which accompanies the Devasys board.
Download SimpleHID 1.00
SimpleHID uses this framework to create a minimal HID device. The device is based upon the Devasys USBI2C-IO board but it should work on other EZ-USB development boards. It has a single interrupt input report at 1 ms. interval that carries the current bus frame number (mod-16). More details follow:
* Uses framework consisting of several assembler modules:
o Data.a51 - internal data definitions
o Vector.a51 - reset and interrupt vectors
o UsbJump.a51 - EZ-USB autovector table
o Reset.a51 - reset and initialization
o IntHndlrs.a51 - interrupt handlers
o SetupPkt.a51 - endpoint 0's setup packet decoder
o StdReqs.a51 - routines for processing standard requests
o HidReqs.a51 - routines for processing HID class requests
o Main.a51 - placeholder for a mainloop
o Descriptors.a51 - device, configuration, string HID
o Utils.a51 - utility routines
* ASEM-51 source code.
* Assembles to Intel HEX which is easily loaded on Windows systems with the LOADEZ.SYS driver which accompanies the Devasys board.
Download SimpleHID 1.00
MODHID Firmware
MODHID builds on the SimpleHID framework to create a device illustrating Microsoft OS Descriptors or MODs. MODHID adds these features:
* Announces support for MODs by returning an OS_STRING for String Descriptor index 0xEE.
* Supports MOD vendor command for returning a fictional extended configuration descriptor.
* Supports MOD vendor command for returning an extended property descriptor.
MODs are only supported in Windows XP SP1/SP2 and Windows 2003 Server. See Microsoft OS Descriptors for details.
Download MODHID 1.00
* Announces support for MODs by returning an OS_STRING for String Descriptor index 0xEE.
* Supports MOD vendor command for returning a fictional extended configuration descriptor.
* Supports MOD vendor command for returning an extended property descriptor.
MODs are only supported in Windows XP SP1/SP2 and Windows 2003 Server. See Microsoft OS Descriptors for details.
Download MODHID 1.00