PICkit 3 Won't Talk To MPLABX IPE - Page 1
Forum section: electronics / general

author: EEVblog
author_rank: Unknown
timestamp: January 17, 2016, 12:25:00 am
content: As the title says, my old PicKit 3 won't connect to the MPLABX IPE.Can't download new firmware or program.I've never used it with MPLABX or IPE before, just the old stuff.It obviously detects it and the serial number.Any suggestions?

author: EEVblog
author_rank: Unknown
timestamp: January 17, 2016, 01:16:33 am
content: Quote from: AcHmed99 on January 17, 2016, 12:58:19 amI believe the IPE is trying to connect to the PICkit3 itself, not the device.e.g. trying to download the latest firmware to the PICkit it says connection failed, obviously the PICkit itself.But I have tried several target devices and they don't work either.

author: EEVblog
author_rank: Unknown
timestamp: January 17, 2016, 01:22:33 am
content: Seems I'm not the only one:http://www.microchip.com/forums/m860324.aspxI didn't know the PK3 had "modes". In any case my PIckit3 software doesn't even load!

author: Monkeh
author_rank: Super Contributor
timestamp: January 17, 2016, 01:42:00 am
content: By 'modes', they mean 'totally different firmware images we want you to flash for using this software or these targets'.It's really quite a mess.

author: EEVblog
author_rank: Unknown
timestamp: January 17, 2016, 01:44:20 am
content: Quote from: Monkeh on January 17, 2016, 01:42:00 amNo kidding.I can't even flash new firmware into my PICkit, as both the older PICkit programmer sofwtare does not talk to it, neither MPLABX IPE.Maybe some version of older MPLAB?My latest product has a PIC and I don't even have a usable tool to talk to it.

author: Monkeh
author_rank: Super Contributor
timestamp: January 17, 2016, 01:46:04 am
content: Well, the thread you linked suggests MPLab 8.92 might manage to update it. I have no idea on a sane upgrade path to get MPLab X to work, though. Only have a PICKit 2 (clone) myself.

author: jpmkm
author_rank: Contributor
timestamp: January 17, 2016, 04:05:37 am
content: Try using the MPLAB X IDE to update the firmware on your pickit3:http://microchip.wikidot.com/pickit3:firmware-to-loadOn my system, the firmware file is "PK3FW_013915.jam", but it might be different in 3.20. You can import and program .hex files in the IDE just like you can in the IPE, but there are a few more steps involved. But if you get it working in the IDE, then it *should* start working in the IPE.

author: Emil
author_rank: Regular Contributor
timestamp: January 17, 2016, 08:40:36 am
content: I also had some problems updating the firmware. Solution in this thread:www.eevblog.com/forum/microcontrollers/pic24k50-programming-problems/25/

author: hans
author_rank: Super Contributor
timestamp: January 17, 2016, 09:09:40 am
content: Some ancient versions of PICKIT3 firmware only work with the also ancient MPLAB IDE (not MPLAB X).You can download the older software packages fromhttp://www.microchip.com/pagehandler/en_us/devtools/mplabxc/and go to "Downloads Archive" tab.On the bottom of the page you also have the "Stand Alone Programmer App v1.0" and "Programmer App v3.10". From memory both will download a seperate PICKIT OS to work with them. There is also a revert OS button, but that obviously requires a connection first.I'm pretty certain MPLAB IDE and MPLAB X share the same OS firmware, but MPLAB X doesn't work/connect with the really old OS'es.I bought a PICKIT3 through Farnell 1 year back, and it still had this firmware. I had to install MPLAB IDE first in order for the PICKIT3 to be recognized by MPLAB X.IMHO this firmware switching rubbish is big PITA. Although the PK3 supports programming PIC10s through to the new PIC32MZ, switching OS and AP profiles is slow and more complicated than it should have been (especially with backwards compatibility problems)

author: jaromir
author_rank: Unknown
timestamp: January 17, 2016, 09:11:00 am
content: I remember having similar problem once - solution was not to use MPLABX IPE, but MPLABX IDE, created bogus C project with empty main file, compiled, hit program button, MPLABX IDE uploaded new firmware into PK3, then uploaded bogus firmware into target MCU. Then, PK3 was accessible from both IDE and IPE. Perhaps it was only my brain fart.

author: diyaudio
author_rank: Frequent Contributor
timestamp: January 17, 2016, 03:50:05 pm
content: Quote from: EEVblog on January 17, 2016, 01:44:20 amHave you tried a different computer?ORGet an ICD3

author: Howardlong
author_rank: Super Contributor
timestamp: January 17, 2016, 05:36:49 pm
content: Completely obscure, but these are some solutions that have worked for me with the PICkit 3...O switch debugger onto a different USB port (really, this sometimes works)O create a random project in MPLAB 8.92, force a firmware update in the debugger settings, choosing the latest 8.92 pickit 3 firmware (.JAM file), then close MPLAB 8.92. Open up MPLAB X IDE/IPE, allowing it to update the firmware, then try it.** When downloading new debugger firmware, if it appears to hang for more than a couple of minutes in the Bootloader, RS or AP phases, physically remove the debugger and re-attach it a few seconds later.I have just tried connecting to a quick breadboarded PIC24EP256GP202 which I had in stock (same device, but more memory) and it works with MPLAB X 3.15 both in the IDE and the IPE, and I can erase the device and program a blinky successfully in both IDE and IPE.

author: krish2487
author_rank: Frequent Contributor
timestamp: January 17, 2016, 08:02:10 pm
content: Just a stab in the dark, what windows version are you using dave?(Not windows 8 or 10 by any chance??)I vaguely seem to remember reading a thread on the microchip forums, where a similar issue was reported.Compatibility mode did nothing to help the issue and the only fix was to revert to a windows 7 machine.Of course, a moot point if you are running windows 7.

author: bktemp
author_rank: Super Contributor
timestamp: January 17, 2016, 08:35:55 pm
content: Maybe the PICkit3 is broken?A friend had a similar problem with a new PICkit3: It was detected but no version of MPLAB or IPE could connect. He tried to reprogram the firmware using an ICD2 but it did not help. He finally bought another one and it worked without any problems.

author: KL27x
author_rank: Super Contributor
timestamp: January 17, 2016, 08:39:27 pm
content: There is firmware, proper. The firmware image, which you do not need to change.Then there is firmware suite. 01.xx.xx. This firmware suite is different between versions of X/IPE and it is stored as a jam file, and in MPLAB X the jam file is further zipped in a JAR file in the PK3 folder.The PK3 will come with a certain JAM/FW suite preinstalled, which is most certainly not up to date with your version of X. Even recently shipped PK3's are coming with 01.29.xx, and 01.34.11 was the firmware suite with the two year old X/IPE 2.26. 01.40.xx is the most recent one in the latest X/IPE (AFAIK).And there are some conflicts where if the fw suite on the PK3 and IPE/X do not match, the autoupdate between device families will repeatedly fail. You plug the device in, hit connect, it downloads new firmware, but it is broken. Each time you do that, it repeats this fail all over again.Is it absolute horseshit that this isn't explained in some easily accessed document or even Microchip PK3 forum sticky/FAQ? Yes, I think it is complete and utter horseshit.There is a way to manually download the firmware suite if the autodownload fails. You cannot do it in IPE. I don't know how to do this in X. But you can definitely do it in 8. I use 8 and IPE, but not X. So this is one really stupid sounding way to do it. And it goes like this....So I had to find the PICKIT3.JAR (something like that) file in the PK3 folder in X. Unzip it with WinZip to extract the more recent PK3FW_01.xx.xx.jam file. And then put that in my MPLAB 8 PK3 folder (where there already resided an older version). In 8, you select PK3, then settings > config> manual download, which opens the PK3 folder and you select the FW suite to install. X must have an analogous manual method... Or maybe not. The strange thing is on the Microchip forums no one seems to explicitly mention this, and more than a couple people have resorted to using 8 in order to get their PK3 updated, similar to the way I have explained it. It would be even more horseshit if there is not a way to do this in X.BTW, the standalone PK3 app takes a completely unique firmware suite, all its own. I believe you manually switch the suite when changing between PK3 standalone and IPE/X/8. So if you wish to continue using standalone, you might just want to buy a second PK3 to avoid some hassle.Seems like if you dig deep enough, you may possibly find this information on the Microchip forum. Every few years, someone takes the time to explain it. And then the thread drifts off into the abyss, to confound new PK3 users, all over again.Once I got my PK3's to do what I needed, I stopped updating X. I hope that the newer FW suites remain backward compatible with 8. I'm using FW suite 01.34.11 with IPE 2.26, and this works fine on my IDE 8.9. Until I find some official documentation on this issue, I am actively avoiding making any changes. It took me 20 hours to figure out this steaming pile.QuoteHowardlong solution same, except 1. You don't need to do the fake project. You can just manually download as I showed. 2. the FW suite in your version of 8.9 PK3 folder is NOT the latest one and not the same as with any recent version of X. (8.92 comes with 01.29.xx, and that has been superceeded many times). It might work by changing the firmware on your pickit to a more recent version that can bridge the gap, so to speak, allowing the autoupdate in X to succeed (eventually; it may take as many as 3-4 connections/fails before the update totally completes, and I suspect there could still be some bugs in the process). The definitive solution appears to be the way I stated. When you do that, it will work first time in IPE/X.

author: EEVblog
author_rank: Unknown
timestamp: January 17, 2016, 09:36:33 pm
content: Quote from: diyaudio on January 17, 2016, 03:50:05 pmYep, same thing.

author: KL27x
author_rank: Super Contributor
timestamp: January 17, 2016, 09:37:55 pm
content: With ICD3, you need to change drivers when switching between 8 and X/IPE. There's a driver changer app that comes with X.Read my wall o text, and I think your problems are solved.

author: Howardlong
author_rank: Super Contributor
timestamp: January 17, 2016, 09:44:51 pm
content: FWIW, my IPE tests were in Windows 10 x64.Microchip is not alone in flakey hardware debuggers. They're all at it. I spent three hours on Saturday trying to get an LPC-Link2 to talk to an LPC810 (on my own board). I did succeed, but it's painful. Similarly, I've spent hours with TI debuggers on their Tiva dev boards too. It now turns out that when it switches from HID bootloader into its debug mode, it re-enumerates and demanded excessive USB bandwidth which in some situations, say when I had a couple of other USB devices installed, it wouldn't work.In my experience all hardware debuggers have problems of one sort another. The ICD3 and Real ICE have their own problems too so throwing money at the problem isn't necessarily going to help, you just end up with a slightly different set of problems to deal with.What I would say though is that a common problem with debuggers is the descriptor switching and re-enumerating. That, together with trying to talk to debugger hardware through loosely coupled software interfaces like JNI or RPC seems to be a common and recurrent theme of unreliability.In short, hardware debuggers are one of the weakest link in most toolchains. No wonder Arduino is so popular, there's no debugging facility in Sketch!

author: Howardlong
author_rank: Super Contributor
timestamp: January 17, 2016, 09:46:45 pm
content: Quote from: KL27x on January 17, 2016, 09:37:55 pmYou must run the driver switcher as Administrator, with the debugger plugged in and without any IDEs open. And you must stand on one leg with you right index finger in your left ear while singing Waltzing Matilda.

author: dannyf
author_rank: Super Contributor
timestamp: January 17, 2016, 09:58:49 pm
content: The PICkit 3 was announced back then, I ordered myself a couple spare PICkit2.Looking at this thread, I couldn't have been happier about my purchase then,

author: Howardlong
author_rank: Super Contributor
timestamp: January 17, 2016, 10:53:44 pm
content: One further thought. The PK3 is Full Speed USB, if you are running this off a USB 2.0 hub with a single transaction translator but multiple full speed devices on the same hub, this can cause a bandwidth problem as the maximum aggregate bandwidth for all FS devices even on an HS USB 2.0 hub with single TT is 12Mbps. Simplest thing is to put it on its own USB 2.0 hub which will have its own TT. This can sometimes fix weird problems with USB FS devices.Some pics & screen shots of my working environment.Code:#include <xc.h>#define FCY (7370000/2)#include <libpic30.h>#pragma config FWDTEN=OFF#pragma config ICS=PGD3int main(void){ANSELA=0;ANSELB=0;TRISA=0;TRISB=0;while (1){LATAbits.LATA0=1;__delay_ms(500);LATAbits.LATA0=0;__delay_ms(500);}return 0;}Code:2016-01-17T22:29:19+0000- Completed loading IPE.*****************************************************Connecting to MPLAB PICkit 3...Currently loaded firmware on PICkit 3Firmware Suite Version.....01.40.05Firmware type..............dsPIC33E/24ETarget voltage detectedTarget device PIC24EP256GP202 found.Device ID Revision = 40032016-01-17T22:31:50+0000- Loading hex file. Please wait...Loading code from C:\myprojects\PIC24\24ep256GP202 001\24ep256GP202 001.X\dist\default\production\24ep256GP202_001.X.production.hex...2016-01-17T22:31:50+0000- Hex file loaded successfully.2016-01-17T22:32:06+0000- Programming...The following memory area(s) will be programmed:program memory: start address = 0x0, end address = 0x3ffconfiguration memoryDevice Erased...Programming...Programming/Verify complete2016-01-17T22:32:11+0000- Programming completePass Count: 1

author: KL27x
author_rank: Super Contributor
timestamp: January 17, 2016, 11:17:38 pm
content: QuoteIf you successfully update your PK3, the PK3 has some nice advantages.Personally, I still use PK2 for dev for some very specific reasons, only. For most people who code in MPLAB, I don't see a good reason to prefer PK2 over PK3, once the initial nightmare is over, except maybe for the standalone software of PK2, which is sometimes quite handy. (I know PK3 has an unsupported and buggy version of standalone, yeah...)PK3, I mostly use for P2G, because it has some advantages in addition to device support. So I put up with the sluggish IPE interface for this. It takes 5-10 minutes to set up the PK3 in IPE on my computer, though. Compared to about 30 seconds with the PK2. If Microchip had finished PK3 implementation in 8, that would have been nice. (It seems like PK3 works fine in 8, except for P2G; it does "something" but it doesn't work). I hear the latest version of X isn't bad, and I might try it soon enough.

author: dannyf
author_rank: Super Contributor
timestamp: January 17, 2016, 11:26:35 pm
content: I don't know what Microchip's rationale is to go with Pickit3 but just look at this thread and one has to ask what did Microchip gain that is worthwhile to put their customers through this man-made hell? All for what?The whole firm's strategy + software side is messed up. Without their large installed base, I have a hard time imagining them surviving long.

author: tech5940
author_rank: Unknown
timestamp: January 17, 2016, 11:57:29 pm
content: You should try your PICkit 4 Sent from my iPad using Tapatalk

author: Howardlong
author_rank: Super Contributor
timestamp: January 17, 2016, 11:58:19 pm
content: Quote from: AcHmed99 on January 17, 2016, 11:45:58 pmWhich compiler version are you on? Something went wrong in one of the compiler distributions a year or so ago to do with the licensing nonsense which made the edit-compile-program-debug cycle terribly painful on node locked licences as the licence checker attempted to find a non existent licence server.One further thing, there is a setting in the embedded options for MPLAB X to reduce the amount of nonsense the debugger goes through each time it connects, perhaps they were set differently in your earlier MPLAB X version.In general I do agree though, it is indeed a steaming pile of unreliable bollocks.

author: KL27x
author_rank: Super Contributor
timestamp: January 18, 2016, 12:52:48 am
content: I am using IPE 2.26 on win7. First time I loaded it I thought it was broken. It takes half a minute before I get confirmation that I even opened the program.So I take it 3.2 is not necessarily faster.What was "broke" was that MPLAB 8 isn't cross platform. So while they buggered a few pooches in the process, they didn't try to fix something that wasn't broken by making X. (They just didn't make it that great; and worse, they dropped support/development of 8 partway through the process of integrating PK3). Most of the PK3 issues seem to be created by X/IPE. The device works perfectly with 8, out of the box AFAIK, except for the faulty/unfinished implementation of P2G in 8. If you use Linux or Max, X is probably fantastic.If they had finished PK3 implementation in 8 and/or when they finish polishing X, PK3 would possibly be fine, depending on your point of view/OS. As it stands, there are potential issues with PK3 across the board, because you have to use buggy X/IPE in order to use all the features of the PK3, but the PK3 might not even work with X without some backdoor tweaking requiring 8. Maybe someone will finally explain how to get a PK3 working without using 8. AFAIK for now, you might in fact need to use 8 in order to make a given PK3 work with X, go figure. (That, or send back your PK3 for a new one that hopefully has the right FW suite pre-installed).All that said, the improvements of PK3 vs PK2 are pretty minimal* and don't extend much beyond IDE integration (basically auto-flash after a recompile, and ability to read/modify/write registers within IDE, which is a minimal improvement. The former is nice, but the latter still requires opening a different window; PK2 standalone is just as handy, there, plus more handy for some uses), much faster flash speed of 32 bit devices, and the debugger. They could continue to update the device list for the PK2, if they weren't dicks. I think Richard Head was never fired and instead got a promotion. It might be a good idea if PK3 and X/IPE were polished. But forcing users who might otherwise be fine without a debugger to use PK3 over PK2 for new devices is putting a fat ugly foot forward. It's forcing people to switch, so that if they don't gag over the bloat of X and the undocumented (or poorly documented) hoops to get the PK3 to work, they will simply fall in love with the integration with the IDE, the debugger, and the faster flashing (of higher end devices; it is NOT significantly faster with 8 bit devices, at all; in fact, sometimes it's slower).*IPE has a lot of cool features for production use (theoretically). You can limit the number of flashes. It will track the number of good and failed flash attempts. You can tag devices with a random or sequential serial number using one of more register locations, apparently. I say apparently, because 20 minutes of fiddling, and I can't figure out how to get that to work, and I gave up because it takes approximately 3-4 times as long to flash an 8 bit chip on my machine using IPE + PK3, anway, than it does when using PK3 with 8 or in P2G mode or compared to a PK2 - which these all take approximately the same time. So I wouldn't use IPE for batch programming, anyway. At least not on my i5 Win7 machine with the PK3. It is hideously slow, and the delay is not just in the software/interface, which is miserable. Even when the device finally starts to flash/verify, that takes much longer than normal.

author: dannyf
author_rank: Super Contributor
timestamp: January 18, 2016, 02:14:29 am
content: QuoteOr they would just say "f@#$ it" and move on, without Microchip.Microchip really need to take a harder look at its software team - they are worse than incompetent.

author: KL27x
author_rank: Super Contributor
timestamp: January 18, 2016, 04:26:08 am
content: The software bugs can be forgiven. It's a dev tool, not an iPod. I wouldn't put much of the blame on the hardware/software engineers.It's the unfinished development of 8.9 right in the middle of PK3 integration and the lack of continued device file support of PK2 which is particularly abominable, IMO.It doesn't even make sense from a $$ perspective. Microchip can't make squat on the PK3 between the cost of the hardware and the many clones that appeared overnight. It seems like they are forcing people to use the PK3 because they are so proud of it they think people will love it. Like if you made an "improved" product, and you wanted people to immediately drop the old product, so they could see how good this new one is... but they forgot to make this one at least as good (reliable) as the product it's replacing, first. It's like they actually think the PK3 will increase the X IDE user base. Maybe in the long haul, it will. In its current state, it might be hurting more than helping.I love Microchip datasheets for their structure and detail and completeness. It they could hire someone to write up some documentation on the ins and outs and errata of the PK3, that would be great. A bug report/version history would be extremely helpful. A moderator on their website sticky-ing user issues would be extremely helpful. But no, they pretend the PK3 is solid gold. The user manual doesn't even mention fw suite revisions or problem with auto-update between firmware families.

author: EEVblog
author_rank: Unknown
timestamp: January 18, 2016, 05:24:50 am
content: Wasted most of today trying to get this working, no luck.David2 tried too, also no luck.I have some rant video shot, but was hoping for a conclusion.New PICkit3 on order...

author: KL27x
author_rank: Super Contributor
timestamp: January 18, 2016, 05:35:59 am
content: Your first post:QuoteAnd on the IPE output screen, the last thing it says before failing to connect is:"locating firmware files"This suggests you might be missing some files?Did you try updating manually in 8? (using the jam file in the jar file out of x?)if you open mplab 8programmers > select programmer > Pickit 3Thenprogrammers > settings > configuration > manual downloadThis opens the PK3 folder (which by default in Win is in program files (x86) > microchip > mplab ide > pickit 3 folder)And you should see at least one file "PK3FW_01.xx.xx" And if you click on it, it should download onto the pk3.

author: EEVblog
author_rank: Unknown
timestamp: January 18, 2016, 05:47:23 am
content: Quote from: KL27x on January 18, 2016, 05:35:59 amYes, no joy.

author: KL27x
author_rank: Super Contributor
timestamp: January 18, 2016, 05:50:40 am
content: Did you leave the JAR file intact?Maybe you unpacked it, and X is looking for the JAR?I'm fishing. Well, sorry that didn't work. The PK3 is apparently like an onion. Of fail.

author: EEVblog
author_rank: Unknown
timestamp: January 18, 2016, 06:08:13 am
content: MPLAB8 error message:Although at one point it said the firmware was the latest version. Now it says nothing. I have video evidence.Still doesn't work

author: KL27x
author_rank: Super Contributor
timestamp: January 18, 2016, 06:47:03 am
content: That looks totally $%$#ed. I would wait for the new one to arrive, lol.But if I wasn't already on the verge of tears and/or trashing my lab, I might try reflashing the pic with your pk2 using the full image.And FWIW, I posted this just now in the microchip forum. This is my definitive, instructions-your-mother-could-follow method for updating the fw suite:Quote

author: KL27x
author_rank: Super Contributor
timestamp: January 18, 2016, 06:52:35 am
content: And in case maybe the more recent versions of fw suite are incompatible with 8, I know that 01.34.11 that comes with X 2.26 is compatible with 8.9, at least with the devices I use.BTW, if anyone has ever gotten P2G to function using MPLAB 8, please let me know what version of MPLAB 8 and what fw suite you are using.

author: diyaudio
author_rank: Frequent Contributor
timestamp: January 18, 2016, 07:33:10 am
content: Quote from: EEVblog on January 17, 2016, 09:36:33 pmYou own an ICD3 but prefer the PK3 ?Try another PC so you can fully isolate the issue.

author: EEVblog
author_rank: Unknown
timestamp: January 18, 2016, 08:22:43 am
content: GOT IT!After David2 and myself fighing most of today, it was a tad embaressingThe PICkit3 I had would only talk to 3.10 of the old PICkit3 programming software.We both mistakenly downloaded version 1 from the Microchip website as it was the first item and seemed the obvious oneI had forgotten I used to use v3.1 and that was the firmware that would have been last programmed into it.Anyway, after using that software it identified the old version and told us the PICkit was indeed not in MPLAB mode. Once switched back we were able to upload the latest firmware compatible with MPLABX. The version programmed into it was obviously not compatible with either MPLAB8 or MPLABX IDE or the MPLABX IPE, or the v1 PICkit3 programming softwareAlso, you can simply change the PICkit mode by holding down the button when plugging it into USB!Doing that might have also saved us a ton of heartache.Video coming soon, but I'll likely edit out probably half an hour of footage of use trying every combination possible.

author: KL27x
author_rank: Super Contributor
timestamp: January 18, 2016, 08:46:02 am
content: Technically, the standalone for PK3 is an unofficial pet project of one of the Microchip dev team members. It was never officially supported, i.e. use at your own risk. And it has also not received update for newer devices. So maybe take it easy on the rant, Dave! Still plenty of fodder left for PK3 rant, round two, I'd think.

author: Howardlong
author_rank: Super Contributor
timestamp: January 18, 2016, 08:48:03 am
content: Quote from: EEVblog on January 18, 2016, 08:22:43 amNot at all. These kinds of time wasting problems should be highlighted. As I mentioned earlier, hardware debuggers and the software interfaces to them are consistently the single most unreliable part of most cross development toolchains.FWIW, a couple of days ago I had a similar problem on aMicrochip Curiosity board, the new one that's aimed fairly and squarely at the first timer. This has a cut down PK3 onboard debugger, only supporting low voltage programming mode. It turned out that in some circumstances such as when you change the chip, the board firmware switches to high voltage programming mode but it does not have the hardware to support it. You have to re-apply debugger settings (that all look correct anyway) to make it work. Only when I'd probed the debugger interface on the scope did it dawn upon what was happening. That was about three hours of my life I'll never get back. Imagine being new to this, precisely those people this board is aimed at. What a crock!I could write an extensive textbook on how shit hardware debuggers are packed with anecdotes, but I think we've all had experiences like this one way or another.

author: KL27x
author_rank: Super Contributor
timestamp: January 18, 2016, 08:57:25 am
content: Who's Dave2? Has Dave figured out a way to clone himself?I've seen Dave's mini-me in his vids, but he doesn't look old enough to be fixing these types of things, yet.

author: miguelvp
author_rank: Super Contributor
timestamp: January 18, 2016, 09:39:03 am
content: Quote from: KL27x on January 18, 2016, 08:57:25 amEven at my older age, I have not loose a lot of my determination, but I did have more determination at Dave2's age.Age has nothing to do with it. Drive and enthusiasm does, provided you have a solid background of course.There are plenty of smart and capable young players.

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: January 18, 2016, 10:02:32 am
content: Quote from: Howardlong on January 17, 2016, 10:53:44 pmI've occasionally seen issues running PK3 on a Sparkfun hub cable

author: adam1213
author_rank: Regular Contributor
timestamp: January 18, 2016, 10:30:19 am
content: Dave - if you haven't already, it might be worth contacting Microchip.

author: EEVblog
author_rank: Unknown
timestamp: January 18, 2016, 11:44:09 am
content: 40 minute video of this drama rendering now.It was painful.Could have been much easier if we had seen the correct version of old PICkit3 software to download

author: dannyf
author_rank: Super Contributor
timestamp: January 18, 2016, 12:33:16 pm
content: QuotePickit2 does that - a great feature;QuoteI think pickit2 does that as well but don't quote me on that.

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: January 18, 2016, 01:39:18 pm
content: I'm seeing a lot of failed downloads from Microchip as well....

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: January 18, 2016, 01:44:59 pm
content: Target device (0x0) means it has failed to talk to the device, so your read is almost certainly garbage

author: JacquesBBB
author_rank: Frequent Contributor
timestamp: January 18, 2016, 02:25:38 pm
content: At the same time I was struggling to try to make work a pickit3 clone from itead studio.After seeing lots of posts on the eevblog that one should never use clones, I gave up.But seeing that Dave had so many problems with a genuine pickit3, I decided to look at it again.I was communicating with the pickit3, but not to the chip.I then had finally the solution with this informative sitehttp://www.sinistercircuits.com/pickit3_clone01.php#ss_InternalPowerIDEMy problem was that the IC was not powered properly. I had to set up MPLAB IPE to power the IC, with this very hiddenpower command by clicking on thePower Target Circuit from Tool box.On the IDE, there is the same problem, and the setting is even more hidden.Run -> Set project configuration -> customizethe click on pickit3, then the power option is available.As for Dave, all comments on this thread were unrelated to my actual problem, but it still help me to findthe real issue I had.Now everything is working well.

author: diyaudio
author_rank: Frequent Contributor
timestamp: January 18, 2016, 03:41:48 pm
content: Dave.Just for the record, MPLABX is so much better than MPLAB, I think they should be given some praise, their baseline hardware needs to be improved, I think once you devin straight for a month you going to want that ICD3.... cause writing a miserly 20k or debugging cannot be taken seriously with a PK3, I have no idea why designed it like that, but the rant energy should have been directed at how unusable a PICKIT is for medium to large projects!! really!I still have no freaking idea why code breakpoints randomly hit or even skip, hopefully these experiences makes it to double rant status.

author: dannyf
author_rank: Super Contributor
timestamp: January 18, 2016, 04:36:29 pm
content: QuoteI like their "Bottom Line",Spot on.

author: Howardlong
author_rank: Super Contributor
timestamp: January 18, 2016, 05:41:53 pm
content: Well that video pretty much sums up everything that is wrong with hardware debuggers in cross compiling tool chains. There's so much noise, hear say and folk lore around them because they are so darned unreliable. The multiple scenarios of successive rabbit holes that you encountered are very common indeed, and you can easily waste a day on it.Let us hope that Microchip invest some energy in making their tools work more reliably and take regression testing more seriously. It has certainly become worse since the introduction of MPLAB X.There was an occasion two years ago when they released a new version of MPLAB X whichbroke PK3 completelyand some new DLLs were sneaked out to correct it.Then there was a time when theybroke the node locked licensingand compile times were excruciating.I could go on, but their attention to detail in regression testing is pretty rotten.To be fair, as I mentioned before, Microchip are not alone in creating a crappy user experience when it comes to hardware debuggers.

author: hans
author_rank: Super Contributor
timestamp: January 18, 2016, 08:03:02 pm
content: Quote from: hans on January 17, 2016, 09:09:40 amTold you so O0But actually didn't expect it to have such a major difference.Nevertheless I agree with your video Dave. If you review the original rant video not much has changed. Yes there is an IPE, but no command-line programmer tool. Almost all other vendors have them.. (either OSS or closed) which is useful for an automated QA procedure. I can only recall a pk2cmd Linux tool and a Pic32prog tool (only PIC32s obviously), but that means you miss out once you want to batch QA boards with a PIC24E.MPLAB X is OK; I don't really like Java IDEs and especially dont like the bugs I have encountered with Netbeans (e.g. horrible code highlighting updating or constant 1 thread 100% load while editing), but in general it makes more sense to use. I also like that it's multi-platform. It leaves me free to switch from Windows to Mac to Ubuntu, which I already did.I share the general experience with hardware debuggers. Other vendors have their problems too:AVR - you can brick a device with 1 wrong fuse setting or 1 ISP clock setting (thus corrupting fuses). No way to recover it back unless you connect a dozen wires for HV Programming.TI launchpad debugger - as mentioned earlier in this thread, this debugger was very buggy when connected through a hub. The overflow of traffic makes sense.Olimex ARM JTAG with Jlink protocol clone for IAR - it worked.. but after closing a debug session you had to reenumerate the device in order for it to work again. It was a great programmer for the cost at the time.I can't really see a generic solution, other than to buy the more expensive hardware versions. I read that J-Link EDU is not getting as much love anymore for the Cortex m7 chips, and obviously is not to be used for commercial products. OTOH paying 300$+ for a ICD3, ULINK or proper JLINK is not great. I can see why the STM32 discovery boards are popular. They basically give away the hardware for debugging + a neat board for testing some basic code. In my experience STLinkv2 always just worked. No unexplained settings or modes to mess up.

author: neslekkim
author_rank: Super Contributor
timestamp: January 18, 2016, 08:09:15 pm
content: Since we are on a roll here, do anyone know if it is possible to download releasenotes from Microchip as PDF?, they use the PDF icon, but only webpages...

author: jaromir
author_rank: Unknown
timestamp: January 18, 2016, 08:18:43 pm
content: Quote from: hans on January 18, 2016, 08:03:02 pmYes there is, I used it with PicKit3http://microchip.wikidot.com/mplabx:mdbhttp://uuki.kapsi.fi/pickit.htmlhttp://www.electropepper.org/blog/item/linux-terminal-only-pic-programmingor ipecmdhttp://www.microchip.com/forums/m837686.aspx

author: EEVblog
author_rank: Unknown
timestamp: January 18, 2016, 09:51:09 pm
content: Quote from: mikeselectricstuff on January 18, 2016, 01:39:18 pmGlad to know it wasn't just me.I cut some footage that had dozens of failures.

author: Karel
author_rank: Super Contributor
timestamp: January 18, 2016, 10:03:57 pm
content: Quote from: hans on January 18, 2016, 08:03:02 pmAn ICD3 costs $200,= and works great.

author: EEVblog
author_rank: Unknown
timestamp: January 18, 2016, 10:14:16 pm
content: Quote from: diyaudio on January 18, 2016, 03:41:48 pmI can't praise something I have not used yet.David gave it some praise though.QuoteOnce again, I can't rant about something that I have not encountered.This is a rant about the problem I had to hand.

author: Howardlong
author_rank: Super Contributor
timestamp: January 19, 2016, 07:09:49 am
content: Quote from: Karel on January 18, 2016, 10:03:57 pmI don't fully agree, although ICD3 is definitely better than PK3 and RealICE in reliability terms, I have still sat for hours with the POS trying to get it to work on the odd occasion. Without doubt having a second machine to try it out on is worthwhile.The RealICE is almost as unreliable as the PK3.One major irritation is that typically I like to have a Gold dev environment for products, one which has the OS and all dev tools at given versions that were used to build the firmware in a VM. Microchip don't support node locked licensing for their compilers in this scenario, you have to go to server based licensing, an unacceptable expense in my book.What I have determined though is that if you build your code on a VM which has an extra dummy NIC that's never connected with a single fixed locally administered MAC address across all your dev environment VMs and register one of your compiler node-locked lives against it, you can use that for all your Gold environments.

author: Karel
author_rank: Super Contributor
timestamp: January 19, 2016, 07:33:32 am
content: The only problem I have ever experienced ,was with the PK3. In the end it was caused by a low quality usb cable.The red one that was supplied with the PK3. After replacing that cable, everything worked fine. Always.Maybe it's because I'm using Linux.

author: Howardlong
author_rank: Super Contributor
timestamp: January 19, 2016, 08:06:21 am
content: Quote from: Karel on January 19, 2016, 07:33:32 amGive it time, I am sure you won't be disappointed.

author: KL27x
author_rank: Super Contributor
timestamp: January 19, 2016, 08:28:25 am
content: QuotePickit2 software autoimorts/updates the current (most recent) version of the hex (if that feature is selected). But you still have to either press the Program button on the PK2 (if program on Pickit2 Button feature is selected) or switch to the Pickit2 window and click on the program button.If you use MPLAB as your IDE, the PK3 is integrated. You can set the PK3 to reflash the target device with the new hex after each successful build/compile of your code, automatically. This can be a pretty big time-saver for tweaking and tuning of firmware. You don't have to wait for the new build to complete to switch windows and start the flash and back for each iteration. Modify the code and hit F10, and MPLAB does the rest.

author: Karel
author_rank: Super Contributor
timestamp: January 19, 2016, 08:31:15 am
content: Quote from: Howardlong on January 19, 2016, 08:06:21 amI have to admit, I replaced the PK3 with an ICD3 because it was way too slow.

author: Howardlong
author_rank: Super Contributor
timestamp: January 19, 2016, 08:49:57 am
content: Quote from: Karel on January 19, 2016, 08:31:15 amIt's definitely faster. But also useful is being able to use software breakpoints.

author: KL27x
author_rank: Super Contributor
timestamp: January 19, 2016, 09:21:57 am
content: LOL at the MPLAB 8.92 installation.

author: Karel
author_rank: Super Contributor
timestamp: January 19, 2016, 11:26:10 am
content: Quote from: Howardlong on January 19, 2016, 08:49:57 amMost of my projects can't be halted and stepped through. So, I never use the debugger/breakpoints.I use a serial port for debugging, just sending some messages about state of variables.I also use some free gpio pins which I toggle at the beginning and the end of interrupt routines.

author: dannyf
author_rank: Super Contributor
timestamp: January 19, 2016, 12:01:25 pm
content: ". You can set the PK3 to reflash the target device with the new hex after each successful build/compile of your code, automatically. "You can do that pickit2 as well. A great feature.

author: KL27x
author_rank: Super Contributor
timestamp: January 19, 2016, 09:46:59 pm
content: ^ Details?Is this done by the Pickit2 software? IDE? How do you get it to do this?I wonder, there's a Pickit2 selection in my MPLAB IDE programmer list, but it's grayed out. Perhaps other versions have this feature?Or do you use some kind of script/macro?

author: dannyf
author_rank: Super Contributor
timestamp: January 19, 2016, 10:50:50 pm
content: "Or do you use some kind of script/macro?"Outside of the ide. Microchip provides, or provided, standalone programming software for the pickit2. It watches a user specified hex file. Once the hex file is modified, the software reprograms the target automatically.

author: KL27x
author_rank: Super Contributor
timestamp: January 20, 2016, 04:59:14 am
content: Kewl, thanks.I have used this software for a long time, and I never noticed the two huge buttons on the bottom right. They were just part of the scenery.Now, I really have no reason to use PK3 for code development. PK2 or ICD3.

author: dannyf
author_rank: Super Contributor
timestamp: January 20, 2016, 12:25:10 pm
content: Glad that you liked it.I have limited myself to just those microchip parts that can be programmed by Pickit2 -> their loss, not mind.So far, I haven't had any desire to venture beyond that: for my limited PIC needs, they are more than sufficient.

author: ramin110
author_rank: Contributor
timestamp: January 21, 2016, 08:09:28 am
content: i just tested my pickit 3 with ipe v3.0 and everything works fines. i bought my pickit 3 from china and i think it's clone that's because it's working with no problem.sorry for bad quality

author: KL27x
author_rank: Super Contributor
timestamp: January 21, 2016, 10:02:48 am
content: Clone? Yeah, the "DEFAULT_PK3" is kind of a giveaway. But man, the art looks quite the same. FWIW, my genuine has a red circle with a white M and the plastic is translucent.Two of my clones say "DEFAULT_PK3." One is Sure Electronics, which has a slightly different shape to the case, so I don't think that's the one. The other came with a different cover art that says "kit3" on it.In terms of the parts and layout of the pcb, this clone appears to be the closest of mine to the genuine PK3. If you open yours, I wonder if the board will have an orange/black glass diode D6 in the upper left corner, and the ICSP header will be 0.1" pitch, and it will say "PICkit3" between the ICSP header and the tacswitch. (The real one has "Microchip" and "PICkit3" on the upper left corner of the pcb).None of my PK3's, clone or genuine, ever managed to download firmware successfully in IPE, except one. And it took 4 connections. It downloaded the bootloader then failed to connect. Then it downloaded the RS and failed to connect. Then the AP, and fail. Then finally it worked, kinda, on the fourth connection. But the FW suite always showed as the original number until I updated it in 8. (It was my Sure Electronics clone, which has some other serious flaws).