Because of the Thanksgiving holiday in the U.S., TI E2E™ design support forum responses may be delayed from November 25 through December 2. Thank you for your patience.

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.

Serial Bootloader in CC2530

Other Parts Discussed in Thread: CC2530, REMOTI, Z-STACK, CC2538

Hello,

     I want to upgrade firmware from MSP430 to CC2530. Up gradable firmware will reside in MSP430, which intend to flash in CC2530 through UART(serially). I have gone through this link  http://processors.wiki.ti.com/index.php/CC253x_Serial_Boot_Loader.

      In that i have understood that 

          i) first run the bootloader(SBL) given in the Zstack. and download in to flash of CC2530.

        ii)Make change in application program such that it does not overwrite the SBL that has been programmed into flash.

            Re-build Download and Run the application:

                     Q 1.   "To avoid the 30s boot delay press the joystick up". Is this mandatory, because i plan not to manually, If MSP is sending image. it should accept it by some hand shaking. No manual operation should be done.

         Note: i am talking about upgrade time(Second time) not for first time.

        Download a New Application Image via SBL

                 Q 2. where is RemoTI_SBDemo.exe. why i should need this. if am sending from MSP430 or other host controller what should i do. And there is manual operation is there, need to press switch1(which makes system reset), so that SBL is ready to accept the image.

                There is error in wiki page sblwait() is not in genericapp.c it is in sbl_main.c

          Q 3. My main question is how can i send upgrading image(.hex or .d51) from MSP430 to CC2530. Assume that initially i have program CC2530 initially with SBL compatible and upgradable image also compiled with SBL compatible. 

          Is my understanding is correct, if i give 0xf8 from MSP430 through UART to CC2530. Then i am making CC2530 system reset. Which will boot for 30s at that time it is ready to accept a new application image. Then we can send image from MSP430 to CC2530 through UART. If yes, how can i send .d51 or .hex file through UART.

 I request some expert to help me.

 

Sarvana.

           

 

  • Hi Sarvana,

    The power-on delay when using a bootloader-enabled firmware can be skipped, forcing the device to either enter bootloader mode or jump to the user application, by either a button press or programatically, by sending a single-byte command over serial transport (UART). The value of these bytes depends on the version of the bootloader firmware you are using:

    To force execution of user application, you will need to send either 0xFE, 0x07 or 0xEF (one of these should work with the version you are using).

    To force bootloading mode, you need to send either 0xF8 or 0x10.

     

    The serial bootloader tool executable TI provide is intended to run on a PC (when the ZigBee device is connected to a PC). If you wish to load a new firmware from a microcontroller MCU, you will need to write the corresponding loader tool yourself. You'll find the details you need in here: http://www.ti.com/lit/an/swra371a/swra371a.pdfThe above document is for CC251x and CC111x, but the bootloader of 2530 follows the exact same protocol. In addition, there is the following document in the Z-Stack installer: Serial Boot Loader for CC253x.pdf

     

    HEX images cannot be loaded using the serial bootloader. You will need to create BIN images in order to transfer them using the serial bootloader. These BIN images contain 1:1 representation of the desired content of the SOC.

    Sending 0xF8 to the CC2530 does not reset the device. As explained above, it is supposed to be sent after reset, to avoid waiting the power up delay.

    Best regards,

    OD.

  • Hello Yikai Sir,

    One more thing I want to ask, I want to update the firmware of CC2530 via UART situation is like

    I have one node having Switch Application (Router)  and Another Node Light Application (Router) I send some command from Switch to Light  Light  receives that command from RF and writing some data on Serial (UART).

    Now I want to update the firmware of Light to some door lock or Dimmer Application with(End Device) node role.From the Switch that i already have. 

    Ti has provide the support but they have given the Desktop application for that I dont want to use that Application as i already have my Zigbee Node connected to Application Processor so can you please let me know how to update the firmware of Remote node, 

    If possible let me know about references or links to be taken for knowledge over the same

    thanks and regards

    Manish

  • Hello Sir,

    I want  to integrate OTA in My application so please let me know how to do this?

    please send me some references or link to got through for implementing the same

    thanks and Regards 

    Manish

  • Hi,

    ZigBee Home Automation 1.2.1  : http://www.ti.com/tool/z-stack  consists of OTA examples (server/client)  for CC2530 and CC2538.

    C:\Texas Instruments\Z-Stack Home 1.2.1\Projects\zstack\OTA

    Thanks,

    Saurabh

  • Hello saurabh,

    Thanks for suggestion , I dont want to run the sample application i want this feature to be integrated with my application with out ti PC application support?

    thanks and regards 

    manish

  • Hi manish,

    I also suggest you to do the OTA test from PC first. Get familiar with OTA function and do porting later.

  • Hello Sir,

    I have tested it , created one client and server host the converted file on server and updated the firmware of client it takes around 11 to 18 minutes 

    But for my product i can not use ti PC application that is why i am asking you to help for implementing such an application

    Where i can change the firmware of remote node,

    One more way is there for writing the firmware via serial port  is this support available for TI cc2530 if yes can you please let me know I want to implement this functionality for my Client Hurry

    Thanks and regards

    Manish