JDM Programmer Modification:
Fault-Finding
If your programmer fails to work after modofication, these simple steps should isolate the problem:
a) | Plug programmer in and start IC-Prog (or other software) |
b) | Check Vcc - a convenient
location is between the top two pins on the IC socket. This should measure close to zero. |
c) | In IC-Prog, go to the
Hardware Check menu and enable MCLR. Check that this turns on Vcc as well now. |
d) | Check voltage across C3
while performing the above step. This should be around
5V, regardless of whether you are programming or not (ie with MCLR off or on). |
If Vcc is
present in step (b)
The most likely cause is the MOSFET drain and source
being the wrong way around. MOSFET's generaly have a diode inside
them between the drain and source, as a result of the
manufacturing process. As this is normally reverse biassed, it
has no effect. However if the leads are swapped, it will let Vcc
through, minus the diode voltage drop (probably around 4.6V).
This is the most likely mistake. The other possible cause is the
gate connection being wrong: make sure the gate is around 0V
normally, and 13V when MCLR turned on.
If Vcc not
switched on in step (c)
Check the gate to make sure it is zero normally (or -0.4V), an
that Vpp is getting through when enable(~13.1V). If not, check
the gate connections. If it is, check the voltage across the 5.1V
zener. If this is OK, and the gate is 13V, you may have a faulty
MOSFET or a short/open circuit somewhere.
NOTE:
When I originally made my JDM, I re-designed the PCB to
fit in a particular enclosure, so the track positions are
different.
It has come to my attention that the track going to the 22uF
capacitor is routed differently on the original JDM board, and
this has caused some people's modifications to operate
incorrectly. You must make sure this
capacitor is connected directly to pin 7 of the serial port
(green wire in the diagram below), and is not connected
directly to Vdd on the IC socket. If it is connected to the Vdd
pin directly rather than through the MOSFET, the charging time of
the capacitor will prevent Vdd from rising fast enough.
Step (d) above [added 29-03-05] is the
best way to check this. If the capacitor is connected to the
correct point, it will have around 5V across it all the time,
with MCLR on or off (programming or not programming). If you
measure around 0 volts when MCLR is not enabled (not in
programming mode), you will have to cut the track going to the
positive side of the capacitor, and wire it to the cathode of the
5.1V zener (or GND on the serial connector, MOSFET drain, etc).
Basically, you should ensure that all of the points connected by the bold, black track below are connected together, and the seriel 'GND' pin, and that none of the IC socket pins are connected to this point. The easiest way would be to use a multimeter on the low ohms/continuity range, put one lead on one of the components, and check that you have continuity at the relevant leads on all connected components. Then, make sure you don't have continuity to any pin on the IC socket.
Here's the schematic again for reference:
|