This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

In curcuit programming - Piccolo



What options are available to “simply” in-circuit program a Piccolo device?  For development, the customer I am working with does it from within CCS, using the emulator pod like the Blackhawk, via JTAG.

 

Moving forward, the goal is to be able to just re-flash the micro.  Another aspect is that they are using the Code Security Module to secure any devices that was previously programmed.  So, any ability they would have to re-flash the micro should not compromise the security.

 

Anything off-the-shelf available for this?

Thanks,

Todd

  • Todd,

    Can you clarify if you are looking for a production programming solution or a field upgrade solution?  While both operations are similar the recommended ways to accomplish both are different.

    Also if you are looking to do a field upgrade does the communication need to be secure?  If the goal is to protect customer IP, the file programmed into the device needs to be encrypted by the customer before field distribution and then decrypted on the Piccolo device before programming.  Let me know exactly what you are trying to accomplish and I can direct you to a solution.


    Trey

     

  • Hi Trey,

    Here is the respone from the lead engineer:

    My immediate need is just for the customer to re-program his boards, without having to ship them back to us.  This would be considered as development use.  For security, they just need to be able to re-program a secure device (probably by just erasing it first), and then program it with  active CSM, so it remains locked.  They would have access to the JTAG port, and I am not concerned about encrypting the transfer.

     

    Ultimately, they will need a way to program micros during production.  I think they prefer programming at the CEM, but are probably open to receiving pre-programmed parts.

     

    In field re-programming is also a requirement, but will be handled via a LIN based bootloader.  We’ll be working with the LIN Driver supplier on that.

    Thanks,

    Todd

  • Todd,

    Secure devices can't be erased through JTAG unless they are unlocked, and in order to unlock a device one must know the password which means the third party updating the board has full access to the software inside the chip.  To truly keep the customers code secure they will need a small bootloader in secure flash that will update the firmware using one of the communications peripherals without ever exposing the CSM password to a third party.  To the best of my knowledge we do not have ready made software that will do this.

    For production I would stick to letting the CEM do the programming.

    I agree that working with your LIN driver provider is the best option for bootloading the device.

    Trey

  • Hello,

    I received a few more follow up questions on the subject:

    First, if we were to allow an arrangement for our customer to know the password, what SW and HW would be needed to flash the micro?

     

    If we implemented a method for the micro to erase itself, what would be the easiest way for the customer to program a blank micro?

     

    Again, we are after a “simple” programming tool – not a complete CCS Debug development environment.

    Thanks!

    Todd

  • Todd Solak said:
     
    Again, we are after a “simple” programming tool – not a complete CCS Debug development environment.

     

    There is no "simple" programming tool.  The challenges that your customer is facing are not unique, but also not trival either.  We do not have bootloader implementation that helps a customer start this process, unfortunately.