Pic - K150 ICSP Programmer (HCDVBD0002)
Re: Pic - K150 ICSP Programmer (HCDVBD0002)
Try upping the program delay time. You can find this setting in the chipdata.cid file in mircobrn. Just open it up with a text editor and then find the ProgramDelay setting for your device. Note, you'll need to restart microbrn every time you change it.
Comments made by this poster do not necessarily reflect the views of Hobby Components Ltd.
Re: Pic - K150 ICSP Programmer (HCDVBD0002)
Hi,
I have tried adjusting the program delay value in increments of 10 all the way up to 120 and all this does is slow down the programming time.
I have, as an experiment, pared back the code (Removed about 50% of the functionality) so that it fits on a 16F876 chip.
When I load this into the programmer the EEPROM contents are displaying correctly (see attachment) and indeed the chip programs correctly. I noticed that in the HEX file for the 16F876 the EEPROM contents are 16 bits wide:-
:1042000000000000000000000000000000000000AE
:10421000000000000000000000000000000000009E
:10422000000000000000000000000000000000008E
:10423000000000000000000000000000000000007E
:10424000000000000100000050000000000000001D
:1042500021000C00220003002400050034000200AD
:104260000C000C00140003002400050026000200CE
:10427000000000000000000000000000000000003E
:10428000000000000000000000000000000000002E
:10429000000000000000000000000000000000001E
:1042A000000000000000000000000000000000000E
:1042B00000000000000000000000000000000000FE
:1042C00060006100620063006400650066006700D2
:1042D00000000000000000000000000000000000DE
:1042E00000000000000000000000000000000000CE
:1042F00000000000000000000000000000000000BE
:1043000000000000000000000000000000000000AD
:10431000000000000000000000000000000000009D
:1043200090009100920093009400950096009700F1
:10433000000000000000000000000000000000007D
:10434000000000000000000000000000000000006D
:10435000000000000000000000000000000000005D
:10436000000000000000000000000000000000004D
:10437000000000000000000000000000000000003D
:10438000000000000000000000000000000000002D
:10439000000000000000000000000000000000001D
:1043A000000000000000000000000000000000000D
:1043B00000000000000000000000000000000000FD
:1043C00000000000000000000000000000000000ED
:1043D00000000000000000000000000000000000DD
:1043E00000000000000000000000000000000000CD
:1043F00000000000000000000000000000000000BD
whereas for the 2550 they are only 8 bits wide:-
:1000000003000000000000000000000100000000EC
:10001000C0030000000000000000000022000000FB
:1000200000000000000000000000000000000000D0
:1000300000000000000000000000000000000000C0
:1000400000000000000000000000000000000000B0
:1000500000000000000000000000000000000000A0
:100060000000000000000000000000000000000090
:100070000000000000000000000000000000000080
:10008000000102030405060708090A0B0C0D0E0FF8
:10009000101112131415161718191A1B1C1D1E1FE8
:1000A0000000000000000000000000000000000050
:1000B0000000000000000000000000000000000040
:1000C0000000000000000000000000000000000030
:1000D0000000000000000000000000000000000020
:1000E000E0E1E2E3E4E5E6E7E8E9EAEBECEDEEEF98
:1000F000F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF88
The programmer is reading the HEX file correctly as it was 16 bit words but missing out every other byte.
I am now suspecting the XC8 compiler is screwing around with the data rather than the K150.
I'll let you know what I come up with unless you have any ideas.
I have tried adjusting the program delay value in increments of 10 all the way up to 120 and all this does is slow down the programming time.
I have, as an experiment, pared back the code (Removed about 50% of the functionality) so that it fits on a 16F876 chip.
When I load this into the programmer the EEPROM contents are displaying correctly (see attachment) and indeed the chip programs correctly. I noticed that in the HEX file for the 16F876 the EEPROM contents are 16 bits wide:-
:1042000000000000000000000000000000000000AE
:10421000000000000000000000000000000000009E
:10422000000000000000000000000000000000008E
:10423000000000000000000000000000000000007E
:10424000000000000100000050000000000000001D
:1042500021000C00220003002400050034000200AD
:104260000C000C00140003002400050026000200CE
:10427000000000000000000000000000000000003E
:10428000000000000000000000000000000000002E
:10429000000000000000000000000000000000001E
:1042A000000000000000000000000000000000000E
:1042B00000000000000000000000000000000000FE
:1042C00060006100620063006400650066006700D2
:1042D00000000000000000000000000000000000DE
:1042E00000000000000000000000000000000000CE
:1042F00000000000000000000000000000000000BE
:1043000000000000000000000000000000000000AD
:10431000000000000000000000000000000000009D
:1043200090009100920093009400950096009700F1
:10433000000000000000000000000000000000007D
:10434000000000000000000000000000000000006D
:10435000000000000000000000000000000000005D
:10436000000000000000000000000000000000004D
:10437000000000000000000000000000000000003D
:10438000000000000000000000000000000000002D
:10439000000000000000000000000000000000001D
:1043A000000000000000000000000000000000000D
:1043B00000000000000000000000000000000000FD
:1043C00000000000000000000000000000000000ED
:1043D00000000000000000000000000000000000DD
:1043E00000000000000000000000000000000000CD
:1043F00000000000000000000000000000000000BD
whereas for the 2550 they are only 8 bits wide:-
:1000000003000000000000000000000100000000EC
:10001000C0030000000000000000000022000000FB
:1000200000000000000000000000000000000000D0
:1000300000000000000000000000000000000000C0
:1000400000000000000000000000000000000000B0
:1000500000000000000000000000000000000000A0
:100060000000000000000000000000000000000090
:100070000000000000000000000000000000000080
:10008000000102030405060708090A0B0C0D0E0FF8
:10009000101112131415161718191A1B1C1D1E1FE8
:1000A0000000000000000000000000000000000050
:1000B0000000000000000000000000000000000040
:1000C0000000000000000000000000000000000030
:1000D0000000000000000000000000000000000020
:1000E000E0E1E2E3E4E5E6E7E8E9EAEBECEDEEEF98
:1000F000F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF88
The programmer is reading the HEX file correctly as it was 16 bit words but missing out every other byte.
I am now suspecting the XC8 compiler is screwing around with the data rather than the K150.
I'll let you know what I come up with unless you have any ideas.
Re: Pic - K150 ICSP Programmer (HCDVBD0002)
Hi Andrew,
Would it be possible to send you a HEX file and see if you can get it to load properly. It wont be anything complicated and huge a short piece of code 'Hello world' type thing. But it will have embedded in it the EEPROM coding that is being generated by XC8. It seems to use 'delta=1' for the eeprom_data PSECT in the pic18.h file but for the 16f876 it uses 'delta=2'.
It is the single byte encoding in the HEX file that is not being read correctly by my version of Microbrn and just wondered if you got the same results. You can tell by simply looking at the EEPROM contents in the viewer.
You don't need to burn anything I just want to know if my K150/Microbrn combination is foobar in some way. If that is the case I can order one from you guys if I know it is going to work properly.
Would it be possible to send you a HEX file and see if you can get it to load properly. It wont be anything complicated and huge a short piece of code 'Hello world' type thing. But it will have embedded in it the EEPROM coding that is being generated by XC8. It seems to use 'delta=1' for the eeprom_data PSECT in the pic18.h file but for the 16f876 it uses 'delta=2'.
It is the single byte encoding in the HEX file that is not being read correctly by my version of Microbrn and just wondered if you got the same results. You can tell by simply looking at the EEPROM contents in the viewer.
You don't need to burn anything I just want to know if my K150/Microbrn combination is foobar in some way. If that is the case I can order one from you guys if I know it is going to work properly.
Re: Pic - K150 ICSP Programmer (HCDVBD0002)
Sorry for missing your last post. Please send it me and I'll take a look.
Comments made by this poster do not necessarily reflect the views of Hobby Components Ltd.
Re: Pic - K150 ICSP Programmer (HCDVBD0002)
Hi all, will this support 27C512 28 pin DIP Chip / EEPROM ?
I cant find the right option in the chip list.
Thanks
Rake
I cant find the right option in the chip list.
Thanks
Rake
Re: Pic - K150 ICSP Programmer (HCDVBD0002)
The table in the first post of this thread is an exhaustive list of all the devices the supplied microbrn software and the K150 can program so if a device is not in that list it wont be able to program it I'm afraid.
Comments made by this poster do not necessarily reflect the views of Hobby Components Ltd.
-
- Posts: 4
- Joined: Tue Feb 20, 2024 7:57 pm
Re: Pic - K150 ICSP Programmer (HCDVBD0002)
Hi, I'm struggling with the port issue.
I'm running Windows 11 Home on an Asus VivoBook.
The Programmer is correctly set to K150.
I can set the port number to match the Com port number in the Device Manager (3) but the problem still exists.
I've tried a number of other port values without success.
Are there any other port settings that need to be adjusted, or does the port auto-negotiate at plug-in for things like baud rate, stop bits, handshake, etc?
Or is this just a case of your driver not being compatible with Windows 11?
Thanks Bob
I'm running Windows 11 Home on an Asus VivoBook.
The Programmer is correctly set to K150.
I can set the port number to match the Com port number in the Device Manager (3) but the problem still exists.
I've tried a number of other port values without success.
Are there any other port settings that need to be adjusted, or does the port auto-negotiate at plug-in for things like baud rate, stop bits, handshake, etc?
Or is this just a case of your driver not being compatible with Windows 11?
Thanks Bob
Re: Pic - K150 ICSP Programmer (HCDVBD0002)
Have you installed the ‘unofficial driver’ found in the first post of this thread or are you using the one automatically installed by Windows?Hi, I'm struggling with the port issue.
I'm running Windows 11 Home on an Asus VivoBook.
The Programmer is correctly set to K150.....
If it’s the latter, the one Windows installs is broken so you’ll need to completely remove it and install the working ‘unofficial driver’ from the first post. If this is the case then let me know and I will provide instructions on how to remove the one Windows installed.
Comments made by this poster do not necessarily reflect the views of Hobby Components Ltd.
-
- Posts: 4
- Joined: Tue Feb 20, 2024 7:57 pm
Re: Pic - K150 ICSP Programmer (HCDVBD0002)
According to my device manager, I'm using a prolific driver dated November 2023 version 3.9.6.2
Re: Pic - K150 ICSP Programmer (HCDVBD0002)
According to my device manager, I'm using a prolific driver dated November 2023 version 3.9.6.2
That’s the wrong driver and was probably installed automatically by Windows. You’ll need to first remove it by following these steps:
1) Find the entry for the K150 in device manager which will be listed as something like ‘Prolific-USB-to-Serial Comm Port (COMxx).
2) Right click it and select ‘uninstall device’.
3) This bit is very important - In the window that opens up make sure the ‘Delete the driver software for this device’ is checked.
4) Click the ‘Uninstall’ button
5) When the device has been removed unplug the K150 from your computer and reconnect it
If you see the driver reinstall itself then repeat steps 2 to 5 again until Windows stops automatically installing the driver.
Once you have successfully removed the broken driver, download the one from the first post of this thread under the title ‘Unofficial driver’.
It should download a zip file called ‘Prolific_Windows_10_Driver.zip’
Unzip it and run the ‘PL2303_Prolific_DriverInstaller_v1.2.10.exe’ file.
This should then automatically install the correct driver.
Comments made by this poster do not necessarily reflect the views of Hobby Components Ltd.