Author Topic: Pickit3 - ICD3 - Anyone with experience in both?  (Read 8175 times)

0 Members and 1 Guest are viewing this topic.

Offline atferrariTopic starter

  • Frequent Contributor
  • **
  • Posts: 314
  • Country: ar
Pickit3 - ICD3 - Anyone with experience in both?
« on: March 27, 2015, 10:08:04 am »
I have the chance to get almost for free one Pickit3 or an ICD3.

Is there anyone using / having used both to tell what is good and what is bad.

If I get ICD3, am I leaving behind any advantage in the Pickit3 that isn't with ICD3.

Who's easier to use when past of the learning period?

BTW I am aware of the difference in speed.

Help appreciated.
Agustín Tomás
In theory, there is no difference between theory and practice. In practice, however, there is.
 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #1 on: March 27, 2015, 10:22:43 am »
I use both, and a Real ICE too.

The ICD3 is definitely faster than the PicKit 3, and I use the ICD3 99% of the time. The Pickit 3 is handy if I'm away from the lab as it's less stuff to carry.

With the ICD3, if you switch between MPLAB and MPLAB X IDEs, then you have to switch drivers which is a bit of a PITA.

Both support the option of powering of the target from the debugger, but I rarely rely on it, I much prefer to provide my own power. The Real ICE does not provide power to the target.

The ICD3 also supports software breakpoints: on the Pickit 3 you're restricted to hardware breakpoints and with that you frequently end up skidding past the actual breakpoint.

Edit: in case you haven't found it, there's an useful functional comparison chart here: https://microchip.wikidot.com/tools:debugger-comparison

Although I have all the advanced trace options for the Real ICE, I've never used them, they're a bit of hassle setting them up. My Real ICE is also one of the first off the production line, and it has some interesting "features" shall we say to be aware of that I have to work around, it's a bit like a dealing with a difficult child at times! The ICD3 on the other hand is very reliable, as long as you remember to switch drivers if switching between MPLAB and MPLAB X.
« Last Edit: March 27, 2015, 10:29:39 am by Howardlong »
 

Offline atferrariTopic starter

  • Frequent Contributor
  • **
  • Posts: 314
  • Country: ar
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #2 on: March 27, 2015, 10:26:48 am »

The ICD3 also supports software breakpoints: on the Pickit 3 you're restricted to hardware breakpoints and with that you frequently end up skidding past the actual breakpoint.

I know I can read about but I am far from where I could do it at ease. What are those hardware breakpoints? (Still with Picstartplus  :D)

It seems that I should go for the ICD3, right?

Gracias for replying, Howard.
Agustín Tomás
In theory, there is no difference between theory and practice. In practice, however, there is.
 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #3 on: March 27, 2015, 10:35:47 am »

The ICD3 also supports software breakpoints: on the Pickit 3 you're restricted to hardware breakpoints and with that you frequently end up skidding past the actual breakpoint.

I know I can read about but I am far from where I could do it at ease. What are those hardware breakpoints? (Still with Picstartplus  :D)

It seems that I should go for the ICD3, right?

Gracias for replying, Howard.

With hardware breakpoints you're restricted to the on chip resources. Some low end chips only have one or two hardware breakpoints (although these chips also don't support software Breakpoints either). Higher end chips like the PIC32 have 6 or so. The problem with hardware breakpoints is often skidding. There's a note on this here: http://microchipfae.com/tag/skidding/

Edit: Picstart Plus? Wow, haven't used one of those for a loooong time!
« Last Edit: March 27, 2015, 10:38:08 am by Howardlong »
 

Offline Gixy

  • Regular Contributor
  • *
  • Posts: 232
  • Country: fr
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #4 on: March 27, 2015, 10:57:56 am »
ICD3 has many more features and is much more reliable. I broke several devices with Pickit3 on Windows 8.1.
 

Offline atferrariTopic starter

  • Frequent Contributor
  • **
  • Posts: 314
  • Country: ar
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #5 on: March 27, 2015, 11:45:35 am »
ICD3 has many more features and is much more reliable. I broke several devices with Pickit3 on Windows 8.1.

Could you elaborate briefly?
Agustín Tomás
In theory, there is no difference between theory and practice. In practice, however, there is.
 

Offline Gixy

  • Regular Contributor
  • *
  • Posts: 232
  • Country: fr
 

Offline BloodyCactus

  • Frequent Contributor
  • **
  • Posts: 482
  • Country: us
    • Kråketær
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #7 on: March 27, 2015, 11:10:14 pm »
I have both and only use ICD3, but I have an ICD3 to Pickit3 adapter (the little rj11 to icsp 6 pin board). the icd3 is heaps better than pickit3
-- Aussie living in the USA --
 

Offline mikeselectricstuff

  • Super Contributor
  • ***
  • Posts: 13747
  • Country: gb
    • Mike's Electric Stuff
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #8 on: March 27, 2015, 11:35:05 pm »
I tend to use ICD3 for 16 & 32 bit devices and PK3 for 8 bit.
ISTR there was once a reason for not using ICD3 on 8bit but don't recall exactly what - I have a feeling that there was some permutation of IDE and compiler where it wouldn't automatically program after compile - may well not be an issue any more, but the habit has stuck.

ICD3 is definitely faster, but only noticeable on larger parts with more memory.

PK3 has programmer-to-go mode, which is really handy for production programming, even if only a few devices. It's also cheap enough to be near-expendable, e.g. on things where nasty voltages may go where they shouldn't
Youtube channel:Taking wierd stuff apart. Very apart.
Mike's Electric Stuff: High voltage, vintage electronics etc.
Day Job: Mostly LEDs
 

Offline JoeN

  • Frequent Contributor
  • **
  • Posts: 991
  • Country: us
  • We Buy Trannies By The Truckload
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #9 on: March 28, 2015, 02:14:56 am »
"skidding"

 :-DD

Does that leave "skidmarks" in memory?

It's interesting that this doesn't happen on any PC environment I have ever worked with and Intel processors have much deeper pipelines than Microchip has ever designed.  What gives?
Have You Been Triggered Today?
 

Offline Sal Ammoniac

  • Super Contributor
  • ***
  • Posts: 1670
  • Country: us
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #10 on: March 28, 2015, 03:25:19 am »
On the PIC32 the ICD3 is 10x faster than the PICkit3. I consider the PICkit3 unusable for debugging on the larger parts. It typically takes 10 seconds to single-step one line of code. The ICD3 steps code as fast as you can click the mouse.
Complexity is the number-one enemy of high-quality code.
 

Offline marshallh

  • Supporter
  • ****
  • Posts: 1462
  • Country: us
    • retroactive
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #11 on: March 28, 2015, 03:48:30 am »
The Picshit3 is a flaming you-know-what.
Always go for the puck ICD3. Loads better
Verilog tips
BGA soldering intro

11:37 <@ktemkin> c4757p: marshall has transcended communications media
11:37 <@ktemkin> He speaks protocols directly.
 

Offline atferrariTopic starter

  • Frequent Contributor
  • **
  • Posts: 314
  • Country: ar
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #12 on: March 28, 2015, 08:58:53 am »
It seems that now I know what to ask for.

Gracias to you all for replying.  :-+
Agustín Tomás
In theory, there is no difference between theory and practice. In practice, however, there is.
 

Offline AndyC_772

  • Super Contributor
  • ***
  • Posts: 4228
  • Country: gb
  • Professional design engineer
    • Cawte Engineering | Reliable Electronics
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #13 on: March 28, 2015, 09:08:21 am »
I feel left out now. I use a PICKIT 3 all the time, never had a problem with it.

I've also tried an ICD3 and not really found much difference.

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #14 on: March 28, 2015, 09:55:38 am »
"skidding"

 :-DD

Does that leave "skidmarks" in memory?

It's interesting that this doesn't happen on any PC environment I have ever worked with and Intel processors have much deeper pipelines than Microchip has ever designed.  What gives?

It depends on the hardware architecture. In a PC environment, software breakpoints are probably used most of the time for code breakpoints as there's no practical limit. Since the 80386 there has been support for hardware breakpoints on chip. I can't remember if those skidded, I'd have to get out my Borland Turbo Debugger circa 1989 or so to find out! Hardware-assisted global data watch breakpoints quite often skid too.

The PIC32 doesn't skid but the other PICs do. It can be quite irritating, particularly at first, but you come to get used to it. Or use software breakpoints instead if the chip and debugger support it.

For a software breakpoint, an instruction is inserted, usually hidden from the user, at the point of breakpoint. In a PIC, this means writing to flash, so this is why the default is usually to use hardware breakpoints. On a PC it's a single byte instruction, 0xCC, or INT 3, and unless it's in an exceptional circumstance, it's in RAM, so easy to do. Back in the days when you wanted to debug into the BIOS, you would need hardware assisted breakpoints as there was no way to insert the debug byte onto ROM.
 

Offline helius

  • Super Contributor
  • ***
  • Posts: 3642
  • Country: us
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #15 on: March 28, 2015, 11:07:38 am »
It sounds like an imprecise exceptions problem. Several architectures suffer from imprecise floating-point exceptions (where the faulting instruction may not be reported precisely).
 

Offline Sal Ammoniac

  • Super Contributor
  • ***
  • Posts: 1670
  • Country: us
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #16 on: March 28, 2015, 07:12:21 pm »
I feel left out now. I use a PICKIT 3 all the time, never had a problem with it.

I've also tried an ICD3 and not really found much difference.

It all depends on what you're doing. If you're programming a few hundred bytes of code into a PIC 16F, then a PICkit 3 is probably okay, but of you're programming 512KB into a PIC32, then it's glacial, especially if you need to do any debugging.
Complexity is the number-one enemy of high-quality code.
 

Offline AndyC_772

  • Super Contributor
  • ***
  • Posts: 4228
  • Country: gb
  • Professional design engineer
    • Cawte Engineering | Reliable Electronics
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #17 on: March 28, 2015, 08:02:17 pm »
Fair enough, I've only used PIC32 once, and it wasn't a hugely complex project, it just needed lots of I/O pins.

Nowadays, if I need something faster than a PIC18, I use an STM32.

Offline bson

  • Supporter
  • ****
  • Posts: 2270
  • Country: us
Re: Pickit3 - ICD3 - Anyone with experience in both?
« Reply #18 on: March 30, 2015, 08:30:21 pm »
On a somewhat tangential note, does using a dedicated ICE header provide more than two hw breakpoints with either of these, or does that require Real ICE?  It's not clear if the breakpoints are in the ICE chip debug/trace logic or in the main control unit.  (I assume the former?)

 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf