Brain transplant for K150 programmer

Cheap chinese programmer revisited

Similar projects worth following
Cheap chinese programmer revisited

In this analysis I took a loot at K150 programmer, available at usual sources for as low as 6 dollars. My goals:

1, Ability to program newer devices, not just older PIC16/PIC18 MCUs.

2, Open sourced firmware and software

3, Make as few adjustments as possible

  • First PIC programmed

    jaromir.sukuba01/07/2016 at 14:14 0 comments

    I ported sources for my Arduino programmer to fit K150 hardware. In fact, it wasn't that difficult, sources are written in C and the structure is quite plain and simple, so I only had to rewrite few hardware dependant functions, something like 20 lines of code or so.

    I replaced the original MCU in programmer (PIC16F628) for new one - PIC16F1847 in temporary development socket (only needed for my development, the PIC will go directly into original socket after development)

    did this single hardware mod

    used the exposed ICSP connector on K150 PCB, wired target

    and flashed with new firmware. After calling pp software it just worked, basically on first try

    So now, this programmer supports what Arduino programmer supports, with with outlook of support for older PIC devices needing 12V on MCLR pin to switch to programming mode.

    To perform this conversion, only PIC16F1847 with new firmware and diode hack is needed. More details in future project logs.

View project log

Enjoy this project?



Allan wrote 03/31/2019 at 16:34 point

Hi Jaromir.  You are very productive!  I agree with your comments on the Middle East suppliers, they do seem very focused on cost optimization, and quality is also frequently found.  If one can navigate the total lack of information, as you have done here, there is disproportionate profit/benefit/reward/edification.  But enough blather, I notice that by adding the diode, you have created a means by which RA3 can kill the high voltage on Vpp.  It would appear that the command ISP_LVM_1 will assert RA3 and therefore constrain the range of programmable devices to the same as that supported on your AVR programmer (by the way, wow, good job testing all those device variants!).  Question: Would adding support for PIC12C5xx simply be a matter of porting the current version of pp.ino from the Arduino project over to  main.c of this project and then adding a suite of "p12c_isp_write_pgm" like methods where we call  ISP_LVM_0 to enable the high voltage Vpp supply?  Also, should  ISP_LVM_D_0 be renamed to ISP_LVM_D_O? (Capital O for Output, as opposed to 0 for zero).  Mind if I mess with the code? Also, how did main.c build without the header file for PIC16F1847? Edit: OK drop last question,  I see it is in configurations.xml.

  Are you sure? yes | no

k8lh wrote 01/20/2016 at 17:53 point

Well done, Jaromir.  Have you posted PIC16F1847 source somewhere, Sir?

Oops! I found it...  Thank you, Sir...

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates