My serial port PIC programmer doesn't work!
It seems that the 'issue' that plagued us when NT4 came out is still with us. At least for 'newbies' or others like me who was given a serial/RS232 PIC programmer.
The other 'issue' is that most new hardware, laptops and desktops, don't have serial ports. So the 'user' is forced to use a USB to RS232 adapter. This 'adapter' does not have the correct RS232 voltages on its pins... So any circuit connected to it does not get the correct voltage [higher than 5 Volts]. For example: Several packet modems would not function with the later models [9 pin] interfaces. These modems were [correctly] designed to connect to a 'real' RS232 interface. Which goes negative with respect to the ground [0V] pin. The interface circuit required the pins to go below -3 Volts for correct switching. This is to improve the noise immunity of the circuit.
With the PIC programmers, it is a case of cheap [sorry cost effective] design. So that the programming voltage of 12V plus a bit was derived from a charge pump, which was fed from 5 Volts [either RS232 or USB]. This did not work as the designer[?] thought you would connect it to an RS232 port with +/- 15 Volts on its pins.
A lot of the software was developed in the 90's. When Windows 98se was 'the thing' to have. So the developer could access the hardware ports without asking the 'boss'. When XP came along and replaced Windows NT and 98, suddenly the software wasn't allowed to access the hardware. And stopped working.
So two 'issues' affect any hardware interfacing software from last century. No access to ports and the original RS232 specification.
So when you try Linux with your 'veteran' PIC programmer, the situation get worse. You are NOT the 'superuser', so you cannot DO THAT! [It will be reported to Santa before Christmas] Any hardware accessing MUST be done by the superuser. So get used to running the software as SU or SUDO.
Then the software has to be run in "compatibility mode" - hmm, Windows 7-10 has this but I don't believe it allows access to the hardware. OK, try a virtual machine? No dice there either. Restrictions usually apply...
How about finding an old laptop with serial ports? Or buying a recent DELL laptop with serial and parallel ports? If you can find one it is probably running XP. So the software won't be allowed to access the ports. But you can probably boot the laptop on another disk or CD. This disk can be made from your current PC/laptop to boot FreeDOS or even Windows 98's DOS. In the case of the DELL laptop, you will probably be able to boot a stick/thumb drive.
How do you get the right programming voltage?
Some of the PIC programmers have an external power connector. This allows you to plug in a "wall wart" power source. Usually a 12 Volt power supply for an external hard disk will do the job.
There is more to come ...