Best Microchip Programmer These Days

Thread Starter

MrAl

Joined Jun 17, 2014
13,704
Onboard programmers and Microchip Snap programmer usually can program all PICs which support LVP. PICkit4 has on-board Vpp charge pump, so it can program older chips too.
Oh you mean like the "Curiosity" line of boards?
 

Thread Starter

MrAl

Joined Jun 17, 2014
13,704
I have programmed the PIC16F18446 using the PICKit4 without any problems. I first bought a PIC16F18446 -XPRESS boarf when they were on offer. That board has the programmer built in. I think it may be possible to use this board to program an external PIC16F18446.

Les.
Oh ok thanks Les. I'll look into that.
Wonder why i could not find it in the files for support, or anywhere online.
 

Thread Starter

MrAl

Joined Jun 17, 2014
13,704
Looks like you may have to use MBLABX - v5.35 for assembly with those.
Oh so you mean it is possible to program them in assembler with the newest MPLABX-v5.35 version?
That sounds interesting.
I guess i never got the file for the v5.35 maybe that is why i could not find the chip listed in there.
 

Thread Starter

MrAl

Joined Jun 17, 2014
13,704
Here is the complete list of supported devices.

MPLABX supported devices

Hello Bob,

This is funny, i knew about that list i somehow forgot it was around. I think because i had been looking all over the web for related stuff the past week or so and it slipped my mind. Thanks for reminding me, and i did find the chip on that list.

There is a good chance i could get used to using the XC8 as long as it is free, but too bad i cant use Assembler too. Maybe there is a trick to it.

Oh also, i see that the Pickit3 is listed as one of the support programmers for that chip also. Pretty neat. Still the XC8 however.

So i guess i got a handle on this now and know what it is going to take to be able to use one of those chips and similar chips, or even others altogether. That's really what i needed i dont like to jump into anything cold feet.

Thanks again, very helpful.
 

Thread Starter

MrAl

Joined Jun 17, 2014
13,704
I almost forgot to mention with all this going on for me right now a new thing came up just yesterday.
There will soon be a new Arduino board with a 32 bit ARM processor and 5v compatibility.
That enters into the mix too i guess, but i probably have to go with a chip rather than an entire dev board.
It's also probably going to be $50 or more.
 

nsaspook

Joined Aug 27, 2009
16,321
Hello Bob,

This is funny, i knew about that list i somehow forgot it was around. I think because i had been looking all over the web for related stuff the past week or so and it slipped my mind. Thanks for reminding me, and i did find the chip on that list.

There is a good chance i could get used to using the XC8 as long as it is free, but too bad i cant use Assembler too. Maybe there is a trick to it.

Oh also, i see that the Pickit3 is listed as one of the support programmers for that chip also. Pretty neat. Still the XC8 however.

So i guess i got a handle on this now and know what it is going to take to be able to use one of those chips and similar chips, or even others altogether. That's really what i needed i dont like to jump into anything cold feet.

Thanks again, very helpful.
You can use the assembler that comes with the latest MPLABX versions. It's just not the same or as user friendly as MPASM for actual ASM programming. Gaining experience in C would be a wise choice IMO if you're also branching into using ARM devices.
 

SamR

Joined Mar 19, 2019
5,487
Arduino's original concept of developing a device for artists to use has been steadily reforming into to a device used in industry. I wonder just how far they will get in another 10 years...
Also, their IDE has steadily been incorporating devices other than Arduino.
 

nsaspook

Joined Aug 27, 2009
16,321
I thought it only works up to V5.35?
MPASM was last used in V5.35. After that a completely different assembler tool chain was used. The basic functionality is there because it's needed to create the executable HEX file but ASM source compatibility with MPASM was lost.
 

nsaspook

Joined Aug 27, 2009
16,321
Arduino's original concept of developing a device for artists to use has been steadily reforming into to a device used in industry. I wonder just how far they will get in another 10 years...
Also, their IDE has steadily been incorporating devices other than Arduino.
Maybe I'm in the wrong industry but I've yet to see a Arduino based controller system being used in 24/7 production machines.
 
Last edited:

SamR

Joined Mar 19, 2019
5,487
Can't cite the source but I've been seeing accounts in the trade journals of it being done. Mostly by young EEs who (obviously) had prior experience using them, to find a good one-off usage solution in a control or monitoring problem. No, they will never meet the needs of a full-blown SCADA or even a PLC. Kinda like I used to do with an Alan-Bradley SLC100 mini-PLC with fixed I/O. Using a good cheap device that filled a niche to solve a problem. But we are straying off topic...
 
Last edited:

trebla

Joined Jun 29, 2019
599
Any words to the wise about this, or any thoughts that you might like to share about these boards
I have used Curiosity LPC board (DM164136) for programming a external PIC, you need remove on-board target PIC from socket and make connections between Curiosity board PIC header contacts and target MCUs MCLR, PGD,PGC, VDD and GND pins.
Select needed voltage (5V or 3.3V) on the Curosity board.
Connect Curiosity board to PC.
In MPLAB X project properties select programmer as PKOB.
In your project files, set config bits LVP programming = ON and MCLRE = ON
Click programming icon and wait while the programmer downloads configuration file (for first time) and programs your target chip. Done!

You can not:
Use MCLR pin for other purposes,
Program HVP-only supported PIC,
Re-program a PIC which is previously programmed with high voltage method.

I think you can use every Curiosity board as LVP programmer if you can disconnect onboard target from PKOB programming lines. Curiosity LPC and HPC boards have PDIP heades so you can easily remove target chips.

If you look at these Curiosity board, you can see unpopulated ICSP header but this is for programming PKOB chip only.
 

Thread Starter

MrAl

Joined Jun 17, 2014
13,704
I have used Curiosity LPC board (DM164136) for programming a external PIC, you need remove on-board target PIC from socket and make connections between Curiosity board PIC header contacts and target MCUs MCLR, PGD,PGC, VDD and GND pins.
Select needed voltage (5V or 3.3V) on the Curosity board.
Connect Curiosity board to PC.
In MPLAB X project properties select programmer as PKOB.
In your project files, set config bits LVP programming = ON and MCLRE = ON
Click programming icon and wait while the programmer downloads configuration file (for first time) and programs your target chip. Done!

You can not:
Use MCLR pin for other purposes,
Program HVP-only supported PIC,
Re-program a PIC which is previously programmed with high voltage method.

I think you can use every Curiosity board as LVP programmer if you can disconnect onboard target from PKOB programming lines. Curiosity LPC and HPC boards have PDIP heades so you can easily remove target chips.

If you look at these Curiosity board, you can see unpopulated ICSP header but this is for programming PKOB chip only.
Hi,

Thanks much for the info that really helps a lot. I didnt know that the Curiosity boards were limited like that but i figured there probably was some limitation.
Nice looking boards but i guess not as versatile as a regular programmer tool.

Now i also like to use the little older chips too, like the 12F675 chip. I used assembler for many projects and dont want to simply throw all that away. It's kind of nutty that MPLAB X does not have an assembler option. That's the problem with big companies, they dont use what they manufacture.

So this makes me wonder, can i install MPLAB X on my computer and still have the regular MPLAB 7 or 8 installed on my same computer?
I sure hope so, so that i can fall back to the MPLAB 7 or 8 when i want to continue a project written in assembler, especially when i want to make a small change to one of the chips i currently have programmed in assembler.
If on the other hand i HAVE to use a separate computer for each version, that would be really, really, stupid of them.
 
Top