Skip to main content
Topic: JDM2 PIC programmer build (Read 14045 times) previous topic - next topic

JDM2 PIC programmer build

I built the JDM2 based PIC Programmer which Ian shared in Instructables.
It was nice project with a good board layout that had wide tracks which gave very nice board when I did it with toner transfer method. [attachment=1][attachment=2]
Thanks Ian for that the board is with sockets for different types of PICs. The total cost involved in parts was some 75cents for me. I've etched a 10x10 copper laminated GE board for that  and then cut it to desired size, and if I consider the cost of the board and ferric chloride, printing, etc then the total cost including parts becomes just 1.5$.

The most important thing I liked is that it works with my USBtoSERIAL adapter, which was not supposed to support any JDM hardware, as I knew JDM hardware work only with real RS232 ports only.

I didn't had any virgin PIC to test the board, so I pulled up the 16F72 from my UPS, and tried to read the code, and rewrite the code. I succeed. MY UPS still works fine. 

Alterations I made:
1. Put a 9V1 Zener in place of 8V2 because of unavailability.
2. Put a 33mfd in place of 22mfd because of unavailability.
3  Built the 15K resistor by three 10K resistors, two in parallel and one in serial.
4. Used 25pF capacitors in place of 22..47..100pF because of unavailability.

The good: It worked with USB to serial adapter. I'm really happy for that
The bad: Too slow. 2048 bytes took 5 minutes to read, and 5 minutes to write. Hope that is not fault of the hardware, but of my USB to SERIAL adapter, or my alterations. I've used ICProg for this.
[attachment=0]
Still learning
-Arup

Re: JDM2 PIC programmer build

Reply #1
Hi, I've just found that I was wrong and the programmer actually didn't programmed my PIC. It was not erased also.
I realized it when I tried to burn a new code, and saw old code still there in the PIC which ran the UPS.
But the code is looking like virus. Each time I read the code, it's different from previous codes, though actually PIC is working.
Did my alterations made this device useless?
I've selected 13V jumper as my PIC was 16F72.
Still learning
-Arup

Re: JDM2 PIC programmer build

Reply #2
Hey Arup,

Two things. First:

1. Put a 9V1 Zener in place of 8V2 because of unavailability.

This could cause issues. The JDM programmer is at the very edge VPP (programming, 12-13volts) of usable voltage.

The other is the UBS->serial adapter. There are multiple issues: A) the timing is not correct, and JDM requires serial port timing, B) the voltage is not correct, most USB->serial adapters only give 10volts instead of the required +/-13 from a real serial port.
Got a question? Please ask in the forum for the fastest answers.

Re: JDM2 PIC programmer build

Reply #3
[quote author="ian"]Hey Arup,

Two things. First:

1. Put a 9V1 Zener in place of 8V2 because of unavailability.

This could cause issues. The JDM programmer is at the very edge VPP (programming, 12-13volts) of usable voltage.

The other is the UBS->serial adapter. There are multiple issues: A) the timing is not correct, and JDM requires serial port timing, B) the voltage is not correct, most USB->serial adapters only give 10volts instead of the required +/-13 from a real serial port.[/quote]

Ok
1. I'll try to manage a 8V2 diode somewhere.
2. Will this be useful in leveling actual voltage of RS232 port? A RS232 to TTL to RS232 converter. [attachment=0]

And the third culprit maybe my laptop's OS. It's Windows 7. Maybe I need older version of windows like 98 or XP for better RS232 communication. What do you think?

I've measured voltage in the cable. It's 5.68V in idle mode, and comes 5.2x range while any operation is being done in IC-prog. So, isn't it good idea to just use a TTL-->RS232 converter in middle? (just thinking).
Still learning
-Arup

Re: JDM2 PIC programmer build

Reply #4
[quote author="arupbsk"]1. I'll try to manage a 8V2 diode somewhere.[/quote]You can probably use a 9V1 as well with some of the older 5v PICs since their Vpp is spec'd at 13.5-14.5V. The newer 5v PICs work at 11.5-13V. A 9V1 zener will work fine for prototyping purposes.

[quote author="arupbsk"]2. Will this be useful in leveling actual voltage of RS232 port? A RS232 to TTL to RS232 converter.[/quote]If you look closely at the circuit diagram for the JDM2 you'll notice that the Rx of the serial port is not used at all. The actual programming is done by the RTS and DTR lines, while Vpp is provided by the Tx line. CTS is the data input for the PC.

As mentioned earlier, USB-serial adapters don't produce a high enough voltage for programming. A simple solution would be to use two MAX232s. You'd need to boost RTS, DTR, and Tx (outputs from the PC) and CTS (input to the PC). I would also suggest that you put a small series resistor (~47ohms) on CLK and Data programming lines.
Cheers!
Rohit

Re: JDM2 PIC programmer build

Reply #5
Thanks to all.
I've changed the zener diode and it is working now when I checked with a real desktop's serial port. No work with my USB to serial converter, which is now dismantelled and used as a USB-TTL adapter in my buspirate3.5 now.
Still learning
-Arup