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.

MSP430FR50431: MSP430FR505431

Part Number: MSP430FR50431
Other Parts Discussed in Thread: MSP430FR5043, MSP430FR6047, MSP-FET, EVM430-FR6047, MSP-GANG

Hi
As describe before our application is an clipon sensor to measure water flow.
We have on board םur local CPU that will program and configure the MSP430FR50431.
1: As I have understood the HW interface to program the device is by I2C on the MSP430FR50431. and UART on the MSP430FR5043.
Let me know If I have understood correctly the data sheet?
2:What is the boot/Imag size ? What is memory size I need to save on our Main CPU for the BSL ?
3:Can we use the code we have produce using the EVM?
4:For the bring up phase . I will be happy to get your recommendatio for an Extarnal toole to Program the MSP430FR5043? What I need to prepare on our Board? (Connector?)

5:Can we use our EVM430FR5047 in order to pogram an external MSP430FR5043 (on our board)?

  • Hi Avraham,

    1) The FR50431 supports an I2C bootloader, while the FR5043 supports a UART bootloader. However both devices can still interface with JTAG or SBW.

    2) The application image size will vary depending on your customization. In Code Composer Studio, there is a simple tool to see how much memory you are using. Under the "View" tab, you can find the "Memory Allocation" tool, which will tell you how much of each type of memory you are using. I will paste an image below showing the memory utilization of the demo code for the FR6043, which includes LCD functionality. Using the FR5043 without the LCD means you will have lower memory usage. You can also check the size of your application image just by saving it to your computer and viewing how much memory it takes up.

    3) If you are asking if you can use the code that you used for interfacing with the EVM: This largely depends on the hardware changes you've made. If your hardware is very similar to the reference design, then you could use the same code. If you have made many hardware changes, you will likely need to change the application code quite a bit to achieve the same functionality. Generally speaking though, yes you can program the same code the EVM uses for your own MSP430FR5043. Of course if you are using the EVM with an LCD then you will need to strip out the LCD functionality. You may want to check out this thread and the .zip file provided by my colleague to see how to port the code from the FR6043 to the FR5043.

    4) The MSP-GANG is a production programming tool that many customers use to program MSP430 devices. You may also want to look at the MSP-FET.

    5) In theory I think this would be possible, but this would require you to store the application image on the 5047 then program it to the 5043 using the BSL. Storing this large application image on the 5047 would not leave much room to do other tasks. I am also not aware of any documentation or support to offer you for using the MSP430Fr6047 as a BSL host. So generally I would recommend that you steer away from this option.

  • Hi Dylan !

    Continuing the conversation, I can't understand what each parameter in the picture you attached means

    1) Does what you attached indicate all the memory that the project contains?

    How can I understand from this information how much memory I need in our CPU in order to burn the IMAGE from it?

    2) The image saved on my computer weighs around 150KB, it is not close to what the values ​​in Memory Allocation show.

    I feel like I got a little confused here
    Would appreciate help

  • Hi Ido,

    1) This window indicates the amount of memory that the device uses to execute the code. I realize now that it doesn't include the application image size, sorry for the confusion on this. If you are wondering how much memory this application image will take up on a BSL host device, you should look at the application image file size that is generated when you build the project.

    2) 150kB is close to what I see for the un-edited MSP430FR6047 water demo file, so 150 kB for your application seems plausible to me.

    Again, sorry to confuse you with the misleading data window.

  • I would appreciate a little more in-depth explanation please
    You helped me in another conversation to open a CSS project like this:

    Then you told me that I can change values ​​from the USS_userConfig.c
    Then do BUILD and then FLASH.

    1) Why do I need all the attachments in the picture? Is it possible without opening a project to open the USS_userConfig.c file, change what is needed and then burn it straight away?

    2) You wrote this to me "you should look at the application image file size that is generated when you build the project"
    You mean at the following address: "C:\ti\msp\UltrasonicWaterFR604x_02_40_00_00\MSP430FR6047EVM_USS_Water_Demo\LPM"

    Inside the LPM folder is this file that was created after the BUILD I did for the project - MSP430FR6047EVM_USS_Water_Demo.txt?

    3) This is an example of an existing demo project that you give, if I want to make a burn for MSP that suits my needs - for example measuring water without a using LCD
    Where should I start?
    Need to register all these files from the beginning?
    Do I need to copy some of them and change some myself?

    What would you recommend for me how to start building a project that I can burn on the MSP
    All in all, I need make a configuration that will create a proper ADC and good readings, basic values ​​for water consumption and I don't want to use an LCD screen

  • 1) In the sense of storing an entire application image, you need those files in order to actually run the USS algorithm. In the sense of updating configuration parameters, you would not necessarily need all of this, you could access the device memory using the bootloader and write the new configuration values in that way. For more information on this, please see the MSP430 FRAM Bootloader User's Guide.

    2) This is correct.

    3) Could you elaborate on what you mean by "Need to register all these files from the beginning"? If you'd like to use the project as it currently exists, and you just want to get rid of the LCD functionality, please see the "ENABLE_LCD" define in hal_lcd.h. If you un-define this, then all of the LCD init and operational code will not be compiled. This should reduce the application image size by quite a bit.

    As for making the necessary changes to convert the Demo project for use on the 5043 instead of the 6043, please see this thread maintained by my colleague, with a link and some files explaining the necessary changes. I'd encourage you to utilize the USS Water demo, and/or the USSSWLib template examples as guides for creating your project. The water demo includes the GUI, the template example simply collects time of flight data and sends it out via UART.

  • 1)In the context of question 1 that you answered,
    If I want to update parameters, are you saying that I don't have to do a BUILD and burn?

    Can I access BSL directly?

    What software do I need to access it directly, is CCS enough?
    Do I need an external tool like MSP-FET?

    3)hal_lcd.h is a file that I don't have and I use demo6047, can you direct me where this file is located?

  • Hi Ido,

    To access BSL, you need to put the device into BSL mode, as described in section 3.3 of the Bootloader User's Guide that I linked above. Then you need to start the BSL connection and send BSL commands to the device. This process is described in the document. 

    If you write to the correct registers using BSL, then you should not need to build and re-flash the device in order to update the parameters. 

    To use the MSP430 BSL, one option is to use Uniflash and to choose the MSP430FR6047 BOOTLOADER in device configuration. You could also use an external tool like the MSP-FET.

    hal_lcd.h can be found in MSP430FR6047EVM_USS_Water_Demo/hal/fr6047EVM

  • I see that in order to put the MSP in BSL mode you have to use this code.

    So open a .c file and then write the code there, open it in CCS and burn it?

  • Yes that would be the software method for putting the device into BSL mode. Whenever that line is executed, the device will enter BSL mode. Further below that section you can also find the hardware method.

  • Hi Dylan !

    We have a Custom Ultrasonic Board that contains MSP430FR5043 for our use of Clip-on water readings.

    All the connections of the pins were helped by you and the 6043 data sheets and schematics.

    1) I wanted to ask if when I connect the board to my computer will the USS software recognize it?

    In the meantime, when I connect the EV, the software tells me below that it detected EVM430-FR6047..
    Can it also recognize our BOARD?

    2) How does the application communicate with the card?

    And what do I need to do, if it is possible at all, so that I can use it?

  • Hi Ido,

    I will answer these questions here, but next time you have a new question topic, please post a new thread so that it will be easier for other customers to see the post and navigate our many posts with different topics.

    1) If you have included something like a JTAG connector, like on the EVM, in your design, then when you connect to it with a tool like the XDS-110 EZFET, MSP-GANG, or other, your computer will recognize that programming tool, similarly to how it recognizes the eZFET programming header that is on the EVM. If you plan to program the device via BSL, your PC won't be able to connect directly to the device, and will not recognize the MSP430FR5043. However you will still be able to connect to it using a BSL host and the BSL command interface.

    2) What do you mean when you say application? Do you mean the USS GUI? The USS GUI was not intended to be used in production, rather it is intended to be used to evaluate the device and help customers get started with our USS solutions. When you have moved to a production device, you likely have not included the HID bridge feature that the EVM uses to communicate with the PC. On a production device, we assume that you are just programming it with the application code using a production programming tool.

    Please let me know if you meant a different application for part 2, or if you need clarification on anything here.

  • 1) So if I have
    something like a JTAG connector, like on the EVM, in my design
    When I connect my board with the MSP-FET to the computer
    Will the USS recognize? And can I use this software?

    2) i mean to the USS, yes

    but dont forget that i have the msp-fet ! so it replace the HID bridge that exist in the EVM .

  • 1) The MSP-FET does not exactly replace the HID bridge, which is the backbone of the communication between the MSP430FRx043. So when you connect to the MSP430FR5043 using the MSP-FET, you will be able to communicate between the device and your PC, but you will not be able to communicate with the USS GUI. If your goal is to use the production device to communicate with the USS GUI, you would need to recreate the HID bridge, and it would need to be programmed as we ship it with the EVM. I am not sure that we offer that software to the public as well. As I mentioned previously, we don't intend for the GUI to be used in production hardware.

    2) I think the above responses resolve part 2 of your question. Please let me know if you need additional guidance on this.

  • I understand .
    So I won't be able to use USS, but I have to know how to read and write from within the component.
    Thank you !!

     I asked about the information I need from the ADC elsewhere in our conversation, I don't want to involve another topic here, so I would appreciate it if you could refer there..

    e2e.ti.com/.../msp430fr50431-msp430fr50431---reading-registers

  • Correct, you won't be able to use the USS GUI, but you will be able to program the device, and thereby change the parameters, through the programming interface of your choosing.

    Also thank you for that, I will respond in that thread. For our internal tracking purposes, could you please mark this thread as resolved if you do not have a follow up?

  • for sure !!

    thanks .

**Attention** This is a public forum