Having used "openprog" many times successfully, including for 3.3V devices,
I now struggle to program a 18LF25J50. "openprog" basically reads "0" for
everything including device ID. I have checked the supply voltages (3.3 and
2.5V for the core), and the connections to VPP, GND, PGC and PGD -- they
all are fine.
Of course there always remains the possibility that the PIC is broken, but
I would not know why... So my question is: Has anybody successfully
programmed this device so far?
Thanks for testing this. I don't have a non-LF type to test, so can't compare.
I have now removed the PIC, checked all supply voltages and traces with a meter, and soldered a new 18LF25J50 into the circuit. However, it still does not work. So either it is bad luck and the new one is broken as well, there is something stupid with my circuit, or the LF type really behaves differently.
During programming, VDD is 3.3V, VDDcore 2.5V, and Vusb tied to VDD. The circuit is not powered from the programmer but via its own supply. Very strange...
I you are happy to run a test, I could send you one of these PICs - there are some spare ones.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks, it works now. I had used 10k on other PICs incl. 3.3V ones without any problems but somehow failed to see that this J type has a different way of being ICSProgrammed.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Having such a high resistance has some problems for ICSP, though. The Microchip data sheets recommend a value <=10k (mostly for noise immunity reasons, I believe). On this particular device, there is also no config bit to turn off the MCLR function on this pin. So one would have to add an extra jumper to the board to decrease this R for normal operation.
Last edit: Anonymous 2016-02-04
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Having used "openprog" many times successfully, including for 3.3V devices,
I now struggle to program a 18LF25J50. "openprog" basically reads "0" for
everything including device ID. I have checked the supply voltages (3.3 and
2.5V for the core), and the connections to VPP, GND, PGC and PGD -- they
all are fine.
Of course there always remains the possibility that the PIC is broken, but
I would not know why... So my question is: Has anybody successfully
programmed this device so far?
Is this specific to the LF version?
I verified the 18F25J50, it works in my setup.
Thanks for testing this. I don't have a non-LF type to test, so can't compare.
I have now removed the PIC, checked all supply voltages and traces with a meter, and soldered a new 18LF25J50 into the circuit. However, it still does not work. So either it is bad luck and the new one is broken as well, there is something stupid with my circuit, or the LF type really behaves differently.
During programming, VDD is 3.3V, VDDcore 2.5V, and Vusb tied to VDD. The circuit is not powered from the programmer but via its own supply. Very strange...
I you are happy to run a test, I could send you one of these PICs - there are some spare ones.
So you are using ICSP?
Can you draw a schematic of your connections?
Sure, see attachment. All non-related parts of the schematic are cleared.
I see a problem with the value of R3: 10k is too low, the programmer cannot force VPP to GND.
Try something like 1M or even more.
View and moderate all "Open Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Discussion"
Thanks, it works now. I had used 10k on other PICs incl. 3.3V ones without any problems but somehow failed to see that this J type has a different way of being ICSProgrammed.
View and moderate all "Open Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Discussion"
Having such a high resistance has some problems for ICSP, though. The Microchip data sheets recommend a value <=10k (mostly for noise immunity reasons, I believe). On this particular device, there is also no config bit to turn off the MCLR function on this pin. So one would have to add an extra jumper to the board to decrease this R for normal operation.
Last edit: Anonymous 2016-02-04
Yes, I would add a jumper for normal operation.
Otherwise you need to modify the schematic of the programmer, adding a pnp to force MCLR to 0.