Menu

Writing OpenProg HEX to PIC18F4550

Anonymous
2020-10-31
2020-11-01
  • Anonymous

    Anonymous - 2020-10-31

    Hi,

    Really keen to builf the Open Programmer and I have purchased all the pieces. I am using a PIC18F4550 and have been trying to program the PIC with an arduino based on the following

    https://sites.google.com/site/thehighspark/arduino-pic18f

    I have no probelms writing the HEX blink files etc and I can write the HEX for the Open Programmer provided I remove the last block of Intel HEX from the file provided

    :0200000400F00A
    :100000004F70656E2050726F6772616D6D65722002
    :10001000762E2000302E31312E3200202D20436FDD
    :10002000707972696768742028432920323030392A
    :100030002D3230323020416C626572746F204D6118
    :100040006363696F6E69202D20546869732069733A
    :0F005000206672656520736F6674776172650054

    Its a rough shot given the Arduino adds another set of variables and I don't fullt understand the HEX itself but thought I would try asking a question here.

    Any suggestions appreciated. Worst case scenario I buy a PIC programmer I guess. Appreciate all the effort put into Open Programmer.

    Cheers

    Richard

     
  • Alberto Maccioni

    That block corresponds to onboard EEPROM memory, which is not needed and only stores copyright text.
    However, your programmer only uses low voltage so it cannot reset the LVP bit in CONFIG4L.
    This in turn reserves RB5 for programming purposes (i.e. PGM input) so it cannot work as an IO line as intended.
    So in practice you will be able to connect to the programmer but it will not be able to write on any PIC device.
    One possible interim solution would be to modify the firmware and map what is now RB5-RB6 to an unused port, for example RD5-RD6.
    Then it would be possible to correctly progam PIC devices; the first write should be to another 4550/2550 with the official firmware.
    Another possibility is to use a serial programmer like JDM, but it only works with real RS232 ports.

     
  • Anonymous

    Anonymous - 2020-11-01

    Thanks Alberto

    So close yet so far :)

    I wonder what others are doing to flash their first builds ?

    Reagrds,

    Richard

     
  • Alberto Maccioni

    Well, since I have everything in place it took a couple of minutes to modify the firmware; so here a version that uses RB4 as Data and RB3 as Clock.
    It should work even if you use low voltage programming.
    You should temporarily connect RB4-3 instead of RB6-5 to a target 18F2550/4550 and write the official firmware.
    Let me know if you're successful.
    I don't know exactly what people use to flash firmware; I suppose serial programmers are still viable.

     
  • Anonymous

    Anonymous - 2020-11-01

    Thats extremely kind of you Alberto.

    So do I need to change my current breadboard setup i.e.

    http://pleasantlyclueless.blogspot.com/2013/11/using-arduino-as-pic-programmer.html

    to flash the modified firmware using the Arduino? Apologies, my knowledge on PIC's is very basic.

    Richard

     
  • Alberto Maccioni

    No, that setup (let's call it LVP setup) is fine; you use it to write the modified OP firmware into your target.
    Next is to build the programmer as described in the project website; it should connect via USB without problems using the target (18F4550) already programmed as main micro.
    But now such programmer will use RB4-3 instead of RB6-5 so you need a new 18F4550 to be flashed with the official firmware.
    To do so you have to connect this target to the programmer using:
    programmer's PIC | target PIC
    RB4 | RB7
    RB3 | RB6
    The rest is as usual (VDDU, VPPU, GND, see the schematics).
    It can be done easily with a breadboard.
    Write the official firmware via OPGUI and substitute the main micro with this target.
    Check the functionality of all IO lines using OPGUI (IO tab) and a multimeter.
    Done

     
  • Anonymous

    Anonymous - 2020-11-01

    Thanks Alberto

    I will let you know how it goes. It may take me a while as I am just starting electronics as a hobby.

    Richard

     

Anonymous
Anonymous

Add attachments
Cancel





Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.