chipKIT® Development Platform

Inspired by Arduino™

MPIDE has no pickit 3 listed in boards

Created Thu, 08 May 2014 19:25:55 +0000 by knuckles


Thu, 08 May 2014 19:25:55 +0000

it just has avrisp and arduino programers and some others why no pickit3 ?

and MPLAB IDE also has no pickt 3 just a 2 listed

why the omission ?


Thu, 08 May 2014 20:15:43 +0000

Both MPLAB 8 and MPLAB X have PICKit3 listed for both programming and debugging.

Under MPIDE, the 'boards' list is a list of target boards - i.e. the board where your code runs. The PICKit3 is a programmer, not a target board. So we'll never have a PK3 in the 'boards' menu for MPIDE since it doesn't make sense there.

As far as using PK3 as a programmer under MPIDE, I believe that it's currently possible to do this, but I don't think anybody has worked out the details. The default avrdude application on the PC to talk to the bootloader on the target has worked pretty well.



Thu, 08 May 2014 21:49:57 +0000

It's not possible to use the pk3 (as shipped) with MPIDE, no. The PK3 is a closed-source device, and the only software available to use it is closed source software provided by Microchip.

There is, however, the pk3 "scripting engine" which essentially turns it into a pickit 2. You can then use it with the program "pic32prog" to program from the command-line - and as such you can then bend MPIDE to work with it. It has support for command-line programmers. Note, though, that you will have to craft a special board to go with it that uses the right linker script, as you will no longer be using a bootloader.

So... is it worth it...?


Thu, 08 May 2014 22:00:00 +0000

We've heard from Microchip that there is a command line tool that comes with MPLAB X that allows you to do tons of cool stuff, including using any of their supported programmers (like the PK3) to load a HEX file into a part. I have not had time to play with this tool yet, but this what I was thinking for using the PK3 as a programmer from within MPIDE/UCIDE.



Thu, 08 May 2014 22:16:54 +0000

If it exists that'd be really cool. I've not heard of it tho - got any pointers?


Thu, 08 May 2014 22:55:21 +0000

Oooh, I may have just found something...

ipecmd.jar (and a shell wrapper

The help (-h) is a little cryptic and may take some decoding, but it might be usable. Not sure if it will work stand-alone or if it needs mplab-x installed...

Answer: it needs mplab-x installed. Pants. Less than useful then...


Fri, 09 May 2014 08:36:15 +0000

i was just curious as the avrisp or usbasp with arduino IDE is quick and easy, somebody needs to up their game ....


Fri, 09 May 2014 08:44:53 +0000

Yes, but the Arduino is a child's toy by comparison.


Fri, 09 May 2014 17:38:10 +0000

I can provide a little more background info:

IPECMD draws upon MDBcore, which is the "headless" engine inside of MPLAB X. The reason it needs all the extra stuff, rather than being a nice, stand-alone utility, is because Microchip programmers support over 1000 different MCUs. The firmware on a PICkit 3 can be switched out at any time, depending on what your target device is. So MDBcore needs to keep track of several different firmware images.

Things would be much simpler if the programmer had less intelligence in it (which is exactly what the scripting engine does.) Or if the programmer was not also a debugger. The reason Microchip went with this architecture, was to maximize performance over the relatively slow USB interface. Unlike the other hardware tools (ICD 3 and REAL ICE), the PICkit uses standard (HID) drivers, which limits speed further.

The scripting engine is open source, I believe, and we could provide technical support on that solution if anybody is inclined to dig in. It would be interesting to know if the scripting engine could be installed into a chipKIT PGM from Digilent. That device is derived from a PICkit 3 and is significantly less expensive.

Hope this helps..


Sat, 10 May 2014 10:11:29 +0000

but why does the MPIDE include all the arduino programers ?is it a Microchip platform or what ? kinda Schizophrenic IDE. or just hanging off the arduino coat tails ?


Sat, 10 May 2014 10:15:55 +0000

MPIDE was originally intended to be able to program both chipKIT boards and Arduino boards. The Arduino support has kind of flagged compared to the chipKIT support, but it is there still.

The "MP" of MPIDE stands for "Multi-Platform".

UECIDE grew out of MPIDE in order to extend the multi-platform aspects of it - the U of UECIDE stands for Universal. It programs chipKIT, Arduino, Launchpad, Stellarpad... the list goes on...

Gone are the days of multiple copies of the Arduino IDE, one per board maker. Now you just need one to program them all ;)