Programming speed, turns out it doesn't mind running at max speed for this particular PIC:
This runs just fine.Code:-TPPK4 -P$target-device$ -F$hex-filename$ -E -M -OAS2 -OB -OL -OV -YP -YE
Robert
Programming speed, turns out it doesn't mind running at max speed for this particular PIC:
This runs just fine.Code:-TPPK4 -P$target-device$ -F$hex-filename$ -E -M -OAS2 -OB -OL -OV -YP -YE
Robert
I still have one bug; 18F4550 programmed by my PK4 run Blinky at 1/2 speed compared to my U2 USB programmer.
- leads on my PK4 are just over 6 inches, with gold pins so they connect directly beside the pin.
- flat cable on my U2 is nearly 3 inches long, and PGC/PGD wires on the breadboard are nearly 3 inches.
I can't find any spec that says EXACTLY what the max length is for the PK4 leads....?
Robert
EDIT: The only reference to lead lengths for the PK4 has a 8pin 6in cable:
https://www.microchip.com/en-us/deve...-tool/AC102015
Last edited by Demon; - 13th May 2023 at 21:20.
FWIW, I use a 6" cable with the PK4 all the time. Cables can cause issues, but I don't think that's your problem here.
Try programming it with the PK4 and then verifying it with the U2, or vice-versa.I still have one bug; 18F4550 programmed by my PK4 run Blinky at 1/2 speed compared to my U2 USB programmer.
Pay particular attention to CONFIG1L. Unless one of them is changing it (????), I don't see how that is.
Are you overriding the CONFIG settings in the hex file with one of them?
Yeah, I was about to make a new cable, but that cable from Microchip is as long as mine, and they have one even longer.
Good idea about the swapping verify, gonna try tomorrow if wifey lets me in the house. I'm gonna lose a dog in that grass.
I'm not changing anything. The only variable I can think of is the options on the command lines. I'm gonna take screen shots of all the U2 settings, then compare that against the PK4.
Going to bed, just finished an "exposé" on HIDmaker FS2 (just comments and observations really), but I tried to be as open an truthful. gonna post about it on a USB thread.
Robert
![]()
The U2 Programmer has a header button that allows you to set your CONFIG settings. Since your PICkit4 and U2 Programmers yield different Clock speeds, the U2 may be using a different default CONFIG setting than the PICkit4. If you don't specifically define your CONFIGs, you are leaving it up to software to make decisions for you.
This is what my U2 does.
Erase:
Program:
Verify:
These are the settings I have for the PK4:
Code:-TPPK4 -P$target-device$ -F$hex-filename$ -E -M -OAS2 -OB -OL -OV -W -YP -YEE = Erase Flash Device (there are no options)
M = Program entire device (does not include calibration, same like U2)
OAS2 = Maximum programming speed
OB = Batch mode operation (so the window stays open to check out the results)
OL = Release from RESET NOT SURE ABOUT THIS GUY!
OV = Verify device ID before program in batch mode
W = Power target from tool
YE = Verify EEPROM
YP = Verify Program memory (U2 verifies Code, Calibration, Data, User ID and Configuration)
If anything, the U2 should be waaaaay slower, it verifies more, and the PK4 is supposed to be running at max speed and it's plugged in a SS USB port.
Weird...
Robert
Last edited by Demon; - 16th May 2023 at 05:02.
You are not selecting "Erase User ID" but have selected "Program User ID". The Programming process only clears bits. If you have bits in your programmed User ID that are set, but that bit is already cleared, programming a 1 will not over-write a 0.
Bookmarks