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.

Custom BSL Zip File, MSP430 USB Firmware Upgrade Example, BSL Scripter Questions

Other Parts Discussed in Thread: MSPBSL

Hello All,

Maybe I should be speaking to L. Westlund - but ---

Are the projects in the Custom BSL Zip File collection written in such a way as they will work with the BSL Scripter code - esp. if you are using 5xx and 6xx devices?

I am asking about the UART code in particular.  I have a USB build that works fine; and have done a custom UART with the LPAD; but I would like to get the Custom BSL working using something like this:  http://www.ftdichip.com/Support/Documents/DataSheets/Modules/DS_UB232R.pdf - and am wondering if the BSL Scripter approach is the way to go.

Also - in the MSP430 USB Firmware Upgrade Example - I see the UART code there - but it seems to be 'benign' - or I don't see how to select that vs. the USB option.  I see there is code to expose the com port - but that may be about as far as that code goes at the moment.

I am running the BSL Scripter - note I have 'pinned-out' the DTR signal in the above - I see DTR toggling but I don't see RTS doing anything but staying low - so the BSL isn't being invoked.  

I have checked my set-up on another interface and all is well - I see DTR and RTS toggling when they are enabled - so I don't think it's the hardware.

Thanks,
John W. 

  • A slight update - I am seeing RTS toggle now - the waveform looks correct for invoking the BSL.

  • OK - will this post 'count' if I asked and answered - ha!

    I have seen some people post needing inverted signals - well, ahem, this is why God invented USB 'scopes - correct?

    Here's my modified invokeBSL command for negative logic.  I am using the FTDI USB I/F - UB232R - you can see on this page (scroll down):  http://www.ftdichip.com/Products/Modules/DevelopmentModules.htm

    <in file BSL_IO_UART.c>

    /*******************************************************************************
    *Function: invokeBSL
    *Description: toggles the TEST and RESET pins in order to invoke the BSL
    *Parameters:
    * none
    *Returns:
    * none
    *******************************************************************************/
    void invokeBSL()
    {
    //#define running 1
    //#ifndef running
    SetRSTpin(0);
    SetTESTpin(0);
    delay(250);

    SetRSTpin(1); /* RST pin: GND */
    SetTESTpin(1); /* TEST pin: GND */
    delay(10);
    SetTESTpin(0); /* TEST pin: Vcc */
    delay(10);
    SetTESTpin(1); /* TEST pin: GND */
    delay(10);
    SetTESTpin(0); /* TEST pin: Vcc */
    delay(10);
    SetRSTpin (0); /* RST pin: Vcc */
    delay(10);
    SetTESTpin(1); /* TEST pin: GND */
    delay(20);

    // next 5 were commented out --- jcw
    // SetTESTpin(1);
    // SetRSTpin (0);
    // delay(10);
    // SetTESTpin(0);
    // SetRSTpin (1);

    delay(250);
    PurgeComm(hComPort, PURGE_TXCLEAR);
    PurgeComm(hComPort, PURGE_RXCLEAR);
    //#endif
    //changeCommBaudRate(9600);
    }

    Regards,
    John W. 

  • johnw said:
    OK - will this post 'count' if I asked and answered - ha!

    I think it does :)

    However, by answering your own question, you have not only provided a solution for others, you can also be sure that you've learned something you didn't know before. Which is more than what you've got from a predesigned solution from someone else.

    (And for this smart comment I'll get another 10 points for my own account :) )

  • Jens-Michael,

    Ha!

    But, I did ask a question that remains unanswered (at least I meant to) - has anyone ported the USB GUI to use the UART BSL?  Seems like the hooks are all there.

    Thanks,
    John W. 

  • Hi John,

    johnw said:

    Jens-Michael,

    has anyone ported the USB GUI to use the UART BSL?  Seems like the hooks are all there.

    I am not aware whether such thing is available. Even if yes, this might end up as propietary and not open source solution. 

    The MSPBSL library (https://github.com/MSP-LaneWestlund/MSPBSL_Library) should be the starting point for this, but at the moment unfortunatelly there is also no solution available.

  • Leo,

    Looks like I have asked this question again - it isn't too tough to modify the MSP430 USB Firmware Upgrade Example to invoke the UART BSL - the code is all there.
    To do it correctly a bsl_uart_gui namespace should be developed. 

    Making the resources to handle the COM port stuff needs to be done but I don't suppose that it too tough. 

    I am not sure why this would be proprietary unless you did a Custom BSL loader on the target and had some type of secret squirrel file format or something like that - but for everyday use this wouldn't be necessary.

    I will probably make the changes in the not too distant future - maybe I will make it public.

    Regards,
    johnw 

  • BTW, We use the silicon USB-UART COM bridge (CP210xVCP) to update FW to MSP430.

**Attention** This is a public forum