Rather annoyingly it didn’t work right out of the box, and the support staff was slow to respond. After hunting down an incorrect resistor value causing voltage reading problems Chr was able to repair the programmer. The full review is posted below with permission.
Some time ago there was this blog post about the PICkit 2 clone. A few weeks ago I bought the PICkit 3 clone from the same manufacturer – here is my experience with it.Until then my experience with PIC programmers was a homebuilt JDM serial programmer (about a decade ago…) and a loaned Microchip ICD 3 that I used for an uni project.
This clone is really cheap – I could get about two for the price of a single genuine Microchip PICkit 3. Nevertheless it comes in a sturdy box and includes both a single row 6-pin female to female and a 6-pin modular connector ICSP cable. There’s also a 1×6 pin male header, a right-angle 1×6 female header and the Mini-USB cable included.
The case looks pretty much like the one in the blog post linked above; it seems reasonably sturdy and to open it you just have to slide your fingernails along the groove. The pcb is held in place by four thin plastic posts. To separate it from the upper shell you might have to push a bit on the leds from the outside – they sit very tight in their cut-outs.
Because of the black solder mask it’s a bit hard to make out how much flux residue there’s on the board. Especially on the bottom, around the pins of the buttons there was definitely residue. I encountered maybe one or two bits of stray solder but all in all I’ve seen worse. The socket you connect the programming cable to seems a bit weak; applying small pressure is enough to bend it upwards and maybe snap the pins if this happens too often. Although, with the case in place bending it upwards is not really possible.
MPLAB v8 was already installed on my machine, so I just had to connect the clone and select it as a PICkit 3 programmer/debugger. At that time I had a board with a PIC24F nearby and sure enough, after MPLAB had finished downloading the appropriate firmware, almost everything worked as it should.
There was one bit that was bugging me. In MPLAB there’s a dialog box for the PICkit where you can configure the Programmer-To-Go feature, enable power supply by programmer and monitor VDD of the connected board. Well, the reported voltage was not correct. Instead it reported approx. VDD x 2.2.
It seems that MPLAB actually doesn’t care if the reported VDD is too much for the selected device but if you use the programmer to supply power the reported VDD can’t be too much below the set value. If it is, MPLAB reports that it has recognized a short circuit on either VDD or VPP.
Next, I tried the clone on an old PIC16 which needs about 13V VIHH to enter programming mode. MPLAB informed me that it can only read 00000000 as device id, which isn’t what it was expecting… Long story short – the programmer is only supplying about 6.1V Vpp.
Contact with Sure Electronics
… was a bit difficult. In the package there was a small card with an email address on it in case there were any problems. After a few days of waiting and trying a different way of contact I managed to get a response.
I explained the problems I was experiencing and suggested that there might be a hardware problem with programmer but as answer I got sent some links I had already seen entering the MPLAB error message into Google. I also had to confirm a few times that I had indeed connected the ICSP correctly (an understandable question but I think one time is enough).
Next I was provided with a firmware file (I assume in case the PIC24 inside the clone had been corrupted) which I unfortunately couldn’t try as I didn’t have the ICD 3 anymore.
After that a suggestion for addition of an resistor to the PCB arrived but doing this changed neither the wrong VDD display, nor the inability to generate a high enough VPP.
A schematic of the genuine PICkit 3 is provided in Microchip’s DS51795 document. The clone does not deviate too much from this.
My first bet was a wrong reference voltage (VREF_2.5). It turned out to be alright.
Next, I backtracked my way from the ICSP connector to RB2, where VDD is sensed. There’s a voltage divider involved where VDD_FBACK originates. On the clone these two resistor had different values compared to the schematic but they did have the correct ratio. Tweaking this ratio quickly lead to a correct VDD display in MPLAB.
The situation for VPP is similar. It also has an associated voltage divider and careful changes combined with monitoring this voltage during the phase were MPLAB tries to read the device id got me where I wanted to be.
If you want the clone to supply power it also makes sense to modify the gain of the amplifier which is tasked with regulating VDD_INT; this was a bit off on my device.
The dual colour status LED was not working on it’s green side, I’ll also have to replace this one.
I’m not sure why these fixes were necessary in the first place although I can imagine a reason or two…
I still think that the price/performance ratio for this clone is not bad but if I knew that I had to invest a few hours looking for the cause of this defects, writing emails and questioning if the problem was maybe even PEBKAC on my end I would have bought the genuine product.
Email contact with Sure Electronics was not exactly what I hoped for – there was this initial delay and in the end I had to find a solution myself – but I do have to say that the person I was communication with was polite and relatively fast to answer (after communication was established).
I hope that some of you have already tried out either the Microchip PICkit 3 or a clone and can provide some insight. In particular I would like to know if you’ve encountered similar (or different) problems and if you stumbled upon any difference between the Microchip schematic and a genuine PICkit 3.
Via the forum.