2010/05/13 13:53:43
USBApplicationsTeam
New to v2.7:
  • Device
    • Addition of CCID demo
    • Bug fixes and enhancements

  • Host/OTG/Dual Role
    • Bug fixes and enhancements
    • Support for the PIC32 thumb drive boot loader

  • PC Utilities
    • Driver installation example - this program example shows how to use the windows driver installation API.  

For more information about changes in this revision please refer to the new Revision History section in the MCHPFSUSB Library help file located in the "<install directory>\Microchip\Help" folder.
 
For more information about the software distribution that the MCHPFSUSB library is included in, please see the following link:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2680&dDocName=en547784
 
This link is provided on the software page of the Microchip design center (www.microchip.com/usb).  This page includes current revision information, product family support, and seperate help file downloads.  Please take some time to review this page and the available documentation.
2010/05/13 22:14:23
xiaofan
It is quite nice that the USB Application Team now have put a better version history in the help file. Thanks.


Library migration: v2.6a to v2.7
No changes that would cause porting or migration issues.

Revision History: v2.6a to v2.7
1. Fixed error where USBHandleGetAddr() didn't convert the return address from a physical address to a virtual address for PIC32.

Files affected: usb_device.h

2. Added macro versions of USBDeviceAttach() and USBDeviceDetach() so they will compile without error when using polling mode.

Files affected: usb_device.h

3. Fixes issue in dual role example where a device in polling mode can still have interrupts enabled from the host mode causing an incorrect vectoring to the host interrupt controller while in device mode.

Files affected: usb_hal_pic18.h, usb_hal_pic24.h, usb_hal-pic32.h, usb_device.c

4. Modified the SetConfigurationOptions() function for PIC32 to explicitly reconfigure the pull-up/pull-down settings for the D+/D- pins in case the host code leaves the pull-downs enabled when running in a dual role configuration.

Files affected: usb_hal_pic32.h

5. Fixed error where the USB error interrupt flag was not getting cleared properly for PIC32 resulting in extra error interrupts (http://www.microchip.com/forums/tm.aspx?m=479085).

Files affected: usb_device.c

6. Updated the device stack to move to the configuration state only after the user event completes.

Files affected: usb_device.c

7. Fixed error in the part support list of the variables section where the address of the CDC variables are defined. The PIC18F2553 was incorrectly named PIC18F2453 and the PIC18F4558 was incorrectly named PIC18F4458 (http://www.microchip.com/forums/fb.aspx?m=487397).

Files affected: usb_function_cdc.c

8. Fixed an error where the USBHostClearEndpointErrors() function didn't properly return USB_SUCCESS if the errors were successfully cleared (http://www.microchip.com/forums/fb.aspx?m=490651).

Files affected: usb_host.c

9. Fixed issue where deviceInfoHID.rptDescriptor was incorrectly freed twice. The second free results in possible issues in future malloc() calls in the C32 compiler.

Files affected: usb_host_hid.c

10. Fixed an issue where the MSD client driver would issue a transfer events to an incorrect/invalid client driver number when transfer events are enabled.

Files affected: usb_host_msd.c

11. Fixed issue where a device that is already connected to the embedded host when the system is initialized may not enumerate.

Files affected: usb_host.c

12. Fixed issue where the embedded host or OTG device did not properly check bmRequestType when it thinks that a HALT_ENDPOINT request was sent to the device. This resulted in the DTS bits for the attached device getting reset causing possible communication issues.

Files affected: usb_host.c

13. Changed how the bus sensing works. In previous revisions it was impossible to use the USBDeviceDetach to detach from the bus if the bus voltage was still present. This is now possible. It was also possible to move the device to the ATTACHED state in interrupt mode even if the bus voltage wasn't available. This is now prohibited unless VBUS is present.

Files affected: usb_device.c

14. Added USBSleepOnSuspend() function. This function shows how to put the PIC24F to sleep while the USB module is in suspend and have the USB module wake up the device on activity on the bus.

Files affected: usb_hal_pic24.h, usb_hal_pic24.c

15. Modified the code to allow connection of USB-RS232 dongles that do not fully comply with CDC specifications.

Files affected: usb_host_cdc.h, usb_host_cdc.c, usb_host_cdc_interface.c, usb_host_interface.h

16. Modified API USBHostCDC_Api_Send_OUT_Data to allow data transfers more than 256 bytes.

Files affected: usb_host_cdc.h, usb_host_cdc.c, usb_host_cdc_interface.c, usb_host_interface.h

17. Improved error case handling when the host sends more OUT bytes in a control transfer than the firmware was expecting to receive (based on the size parameter when calling USBEP0Receive()).

Files affected: usb_device.c

18. Added CCID (Circuit Cards Interface Device) class device/function support.

Files affected: usb_function_ccid.h, usb_function_ccid.c

19. Added Audio v1 class embedded host support.

Files affected: usb_host_audio_v1.h, usb_host_audio_v1.c


2010/05/14 14:06:03
DarioG
I was wondering...
can you provide a quick way to update a HID slave application to newer version i.e. only making some changes to some files?

would be very appreciated Smile
2010/08/02 18:45:10
withnoname
Hello *,

I have ordered the PIC18F14K50 and PIC32MX795 and like to evaluate it with the "USB Device - HID - Uninterruptible Power Supply" Example, but there is a problem

After decompressing the 82 MByte files I can not access any exampes, because it is an EXE file and I use only Debian GNU/Linux.  Several friends of me @University have the same problem...

Please Microcip Team, can you provide the examples with full sourcecode as plain ZIP/TAR archive?

Or can you, xiaofan help me to get the relevent files?  (I know you are using Linux)

Thanks

2010/08/02 22:11:17
xiaofan
Get a Windows machine to install the files, then you can copy them to the Linux. The university sure has some Windows machine, right?

Or you can try to use Wine to install the file under Linux. I have not tried this, but it should work.

I am still using Windows for PIC related work. It is way easier under Windows right now.


2010/08/03 02:29:45
withnoname
I have no money to buy a new computer with Windows...
...and pirated software is no option for me!

We have Windos XP @Uni but not the right to install anything... and to
get the files YOU HAVE to install it which give me some other problems,
because no one like to install programs which are not used by them.

Oh and while compiling pk2cmd i get and usb.h error, even if I have the
full (configured) kernel sources 2.6.26 and libusb-1.0-0-dev installed.

Greetings
2010/08/03 03:23:59
xiaofan
The kernel source has nothing to do with libusb. And you need libusb 0.1, not libusb-1.0.

If libusb-0.1 is deprecated for your Linux distro, then you need to use libusb-compat-0.1.

Please go to http://www.libusb.org for more information about libusb-0.1 and libusb-1.0.
2010/08/03 03:24:43
xiaofan
As for the installation, try WINE.
2010/08/03 03:42:30
withnoname
xiaofan
The kernel source has nothing to do with libusb. And you need libusb 0.1, not libusb-1.0.

If libusb-0.1 is deprecated for your Linux distro, then you need to use libusb-compat-0.1.

Please go to http://www.libusb.org for more information about libusb-0.1 and libusb-1.0.


Who think on such oldthings?

Now it compiled without any errors...

Thanks geek!

Now I have to get the example files...
2010/08/25 06:15:14
SimonAmpleman
Hello, do you plan to port the new samples (usb host - keyboard, mouse, and such) to the Pic32 Starter Kit ?

I've tried yesterday to bring the usb keyboard host demo to my starter kit by removing all LCD related things and replace it with debugger output, it worked but the keyboard only gets 1 touch every 10 touches or such... I also tried to connect a BadCode scanner instead of the keyboard, and it accepted the device as a compliant HID keyboard but fails after a few usb hid initialization... :(

Thank you!

Simon
© 2021 APG vNext Commercial Version 4.5

Use My Existing Forum Account