• AVR Freaks

Hot!ICD 4 (and picKIT 4) visible to Windows Device Manager but not MPLAB X

Author
Windstone
New Member
  • Total Posts : 11
  • Reward points : 0
  • Joined: 2010/10/06 10:57:42
  • Location: 0
  • Status: offline
2020/11/20 20:43:21 (permalink)
0

ICD 4 (and picKIT 4) visible to Windows Device Manager but not MPLAB X

I've got an ICD 4 (and a PICkit4 and a PICkit3) that shows up in Windows Device Manager as a "Microchip WinUSB Device" but doesn't show up in MPLAB X on one machine (Dell XPS 13) but shows up in MPLAB X fine on another (Lenovo ThinkPad T480) and does a little of both in MPLAB X on an older ThinkPad W510.
 
I originally ran into this problem a while back (2018) on the W510 when I migrated (as late as possible) from MPLAB 8 to MPLAB X.  Windows always saw my devices.  MPLAB 8 always saw them.  But MPLAB X sometimes did and sometimes didn't.  After much hair pulling I found that the W510 had 2 blue high speed USB 3 ports and 1 yellow USB 2(?) port.  Anytime I used the blue high speed ports, all of the Microchip dev tools I have were visible to Windows and MPLAB 8 but not MPLAB X.  But when I used the slower (?) yellow one all worked well.  So I just used that port.  Problem solved or close enough.
 
Then I started using a T480 with a pair of black USB ports and a pair of USB C ports and everything just worked.  All USB ports work.  No fuss, no muss.
 
Now I'm trying to migrate to a Dell XPS 13 that only has 3 USB C ports, plus, via TB16 Thunderbolt Dock, several blue high speed USB ports - and I'm back to Windows seeing any and all of the devices (so says Device Manger) in any of the USB ports but MPLAB X refuses to see any of them, ever.
 
I can't imagine that USB 3, USB C or "higher speeds" are the problem or folks would be screaming about problems en mass.  I chalked the W510's problems up to a "bleeding edge" (for its time) chip set or something.  And while the XPS's Thunderbolt support is not quite where everybody's at, it's a far cry from bleeding edge.  And I'm stumped.
 
All machines are running Windows 10 64 bit with MPLAB X IDE v5.45
 
Any thoughts, suggestions or help would be greatly appreciated.
 
#1

7 Replies Related Threads

    dan1138
    Super Member
    • Total Posts : 4157
    • Reward points : 0
    • Joined: 2007/02/21 23:04:16
    • Location: 0
    • Status: offline
    Re: ICD 4 (and picKIT 4) visible to Windows Device Manager but not MPLAB X 2020/11/20 21:32:53 (permalink)
    4 (1)
    I have seen issues with the Microchip device programming tools and the various power states that the Windows 10 USB host driver uses to manage power consumption of connected devices.
     
    I have no clue where the controls are in a Windows 10 installation but see if you can find the advanced power management controls and try to turn of Windows trying to put connected devices in the USB suspend state.
    #2
    Windstone
    New Member
    • Total Posts : 11
    • Reward points : 0
    • Joined: 2010/10/06 10:57:42
    • Location: 0
    • Status: offline
    Re: ICD 4 (and picKIT 4) visible to Windows Device Manager but not MPLAB X 2020/11/22 13:22:01 (permalink)
    0
    I started to reply that USB power couldn't be the problem since their indicator lights flash, turn blue and stay on like they're supposed to, etc. (which is almost certainly true) when I caught myself wanting to say "and MPLAB 8 sees 'em" but, this being a new machine, I'd never needed or installed MPLAB 8.  So, while this appeared to the the same problem from the W510 in 2018...  Maybe not.
     
    So I installed MPLAB 8 and it doesn't appear support the ICD 4 or PICkit 4.  But it saw the PICkit 3 just fine.  Then I went back to MPLAB X and now it also saw the PICkit 3.  Hmm.
     
    I unplugged the PICkit 3 and plugged in the PICkit 4 and BOOM, MPLAB X went off the rails and "zombified."  That is, the dialog it had open to select a programming/debugging tools just vanished of its own accord and then couldn't be summoned again.  I tried to close/restart MPLAB X but even its close button in the upper right was broken (flickering red at the mouse rather than staying red while the mouse is present) and unresponsive.  Clicked close a bunch and then gave it a few minutes.  Finally gave up and just restarted the machine.
     
    Then MPLAB X would see the PICkit 4 but absolutely refuses to work with it.  Lots of log delays, hangs, zombified UI and the, apparently very famous, "Reception on endpoint 129 failed (err = -10121)" error.  I found that all over the forums with little help till I found this entry: https://www.microchip.com/forums/m1129490.aspx?tree=true which lead me to this entry: https://www.microchip.com/forums/m1128487-p2.aspx#1128717
     
    Apparently the problem, or at least one of them, is conflicting Microsoft and Microchip WinUSB drivers.  Sure enough my PICkit 4 was using the Microsoft one.  Redirected it to the Microchip one installed with MPLAB X and...  No help.  Same problem.  MPLAB X makes some connections to the PICkit 4 for status and such then fails with "endpoint 129" errors.
     
    After some hours fighting with that, I tried my ICD 4. MPLAB X both sees it (with the Microchip WinUSB driver) and can use it.  Woot!  So...  The "Windows see the devices but MPLAB X doesn't" problem is essentially solved but I'm still unclear what actually fixed it.  My guess is that installing good 'ol MPLAB 8 installed or configured a driver or some such.  Or, could be that the machine was in a sad state (sometimes days or weeks between reboots) and maybe the reboot fixed it - tech support 101, precisely because sometimes it actually works.  Dunno.  But I'm moving forward and still have no idea why the PICkit 4 won't work.  Weird...
     
     
    #3
    dan1138
    Super Member
    • Total Posts : 4157
    • Reward points : 0
    • Joined: 2007/02/21 23:04:16
    • Location: 0
    • Status: offline
    Re: ICD 4 (and picKIT 4) visible to Windows Device Manager but not MPLAB X 2020/11/22 21:51:20 (permalink)
    5 (1)
    Windstone
    ... still have no idea why the PICkit 4 won't work.  Weird...

    The PICkit4 I have uses an Atmel controller that has a built in loader that enumerates as a USB CDC port.
     
    The IPE tool in MPLABX v5.40 and 5.45 has a step by step wizard called the "Hardware Tool Emergency Boot Firmware Recovery" that will walk you through how to put a PICki4, ICD4, Snap or PICkit4 OnBoard in the "recovery" mode. Then get your Windows computer to enumerate the device. Yes, after forcing the device into "recovery" mode it has to be unplugged and plugged in to the USB port. Then the wizard will load the MPLABX firmware for the programmer. Then you get to unplugged and plugged in to the USB port again.
     
    When I changed from MPLABX v5.35 to MPLABX v5.45 I forced the recover into both my PICkit4 and ICD4 and it seemed to make them work better with every version of MPLABX.
     
    The method is twitchy for the PICkit4 and even more so with the ICD4. The steps are all describe but I found them hard to follow. It took me several attempts before I could get them into the "recovery" mode and re-enumeriated by the USB host.
     
    This is where to find the recovery wizard in the IPE tool:

    post edited by dan1138 - 2020/11/28 20:16:23

    Attached Image(s)

    #4
    RISC
    Super Member
    • Total Posts : 5907
    • Reward points : 0
    • Status: offline
    Re: ICD 4 (and picKIT 4) visible to Windows Device Manager but not MPLAB X 2020/11/28 16:18:34 (permalink)
    4 (1)
    Windstone,
    Can you confirm if on your PCs only MPLAB X is installed or also MPLAB ?
    If you have both, the you MUST use the utility called Driver switcher as the drivers are different between both versions of MPLAB X and MPLAB
    Regards
     

    For support make sure to check first here : http://microchipdeveloper.com
    There are hundreds of PIC, AVR, SAM...which one do YOU use ?
    #5
    Windstone
    New Member
    • Total Posts : 11
    • Reward points : 0
    • Joined: 2010/10/06 10:57:42
    • Location: 0
    • Status: offline
    Re: ICD 4 (and picKIT 4) visible to Windows Device Manager but not MPLAB X 2020/11/28 20:45:21 (permalink)
    0
    I'd known vaguely about the "Hardware Tool Emergency Boot Firmware Recovery" but never needed it before.

    It also never occurred to me that it would be useful here since two devices were misbehaving in the same way, at least initially.

    Gave the "Emergency Recovery" tool a whirl and, ta-da, the PICkit4 is working now.


    Thanks for the suggestion.


    By way of documenting this is the forums for future folks...  I also discovered that this "seen by Windows Device Manager but not by MPLABX" still applies to anything plugged into my Dell TB16 Thunderbolt Dock, even now.  But the original problem was with ICD4/PICkit4 plugged directly into the laptop's USB ports.  That's now working.  As are the ICD4/PICkit4 plugged into a hub plugged into the laptop's USB port.  Curious.  But nothing I plan to run down at the moment.


    #6
    Windstone
    New Member
    • Total Posts : 11
    • Reward points : 0
    • Joined: 2010/10/06 10:57:42
    • Location: 0
    • Status: offline
    Re: ICD 4 (and picKIT 4) visible to Windows Device Manager but not MPLAB X 2020/11/28 21:00:08 (permalink)
    0
    The machines where the ICD4/PICkit4 works have both MPLAB 8 and MPLAB X installed, and installed in that order.
    The machine where they were seen by Windows (Device Manager) but not by MPLAB X only ever had various versions of MPLAB X installed.  But then I installed MPLAB 8, since that was one of the few differences between the working and non-working machines.  Once the older MPLAB 8 was installed, everything started working as expected.  No Device Switcher, no nothing.  I don't see how installing the older version of MPLAB could have fixed things but it seems to have.
    #7
    RISC
    Super Member
    • Total Posts : 5907
    • Reward points : 0
    • Status: offline
    Re: ICD 4 (and picKIT 4) visible to Windows Device Manager but not MPLAB X 2020/11/29 02:24:25 (permalink)
    5 (1)
    Hi,
    Driver switcher is still in the latest MPLAB X versions :
    c:\Program Files\Microchip\MPLABX\v5.45\Switcher\64Bit\
    However, it seems that it is necessary only for ICD3 / Real-Ice
    Pickit3 has HID class no driver is needed (native support by most OS's)
    Regards

    For support make sure to check first here : http://microchipdeveloper.com
    There are hundreds of PIC, AVR, SAM...which one do YOU use ?
    #8
    Jump to:
    © 2021 APG vNext Commercial Version 4.5