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.
I am trying to do on chip OAD .
Here are the implementation details:
Hardware Components: CC2650em+Smart RF06 board
Software :BLE_STACK: ble_sdk_2_02_00_31+ TI-RTOS: tirtos_cc13xx_cc26xx_2_18_00_03
Project: cc2650_em\ oad_target (configuration:flashrom for both app and stack)
bim (configuration :flashonly)
IDE: IAR
I built the bim, oad_target app and stack projects as explained in the "Over-the-Air Download User’s Guide For BLE-Stack™ Version: 2.2.0".
But I am unable to create a unified hex file using merge.bat because there is an overlap.
The addresses for app,stack and bim hex files are:
bim 000:1FFFF
oad_target app starting location=100
oad_target stack end location =1EFFF
What are the address changes I need to bim,stack and app make to generate a unified hex file?
Please advise.
Hi,
It seems there is an overlap in the BIM and App projects. To fix the overlap, you can change the linker file for the App to not link anything in the last page. Comment out the //FLASH_LAST_PAGE in the cc26xx_app_oad.icf file under Tools as below:
// RTOS in ROM OAD image is fixed and can therefore use the extra space
// on page 31 (0x1F).
// Caution! Check the build size of BIM to verify that there is no overlap.
if ( isdefinedsymbol(RTOS_ROM) )
{
define region FLASH_LAST_PAGE = mem:[from 0x1FB00 to 0x1FFA7];
define region FLASH = //FLASH_LAST_PAGE |
mem:[from OAD_FLASH_START to FLASH_END];
}
else
{
define region FLASH_LAST_PAGE = mem:[from(FLASH_SIZE) - 0x1000 to FLASH_SIZE-1];
define region FLASH = mem:[from OAD_FLASH_START to FLASH_END];
}
Best wishes
I made the changes that you suggested .The device is finally advertising now.
Now I've built the image B as explained in the "Over-the-Air Download User’s Guide For BLE-Stack™ Version: 2.2.0" for simple_peripheral_cc2650_em project in FlashOnly_ImgB_OAD.
I included the necessary preprocessor directives , additional directories and setup the linker.The CRC covers addresses from 6004 to EFFF.
But the oad is stuck at 0%.
Please advise.
Hi Pranav,
Did you try uploading the same .bin file with BLE Device Monitor?
Best wishes
Hi,
In section 10.2.4, it does include some scripts that can used to merge files. Instead of the -o option which outputs hex files, you can use the -ob option to output the binary file. Alternatively, the merge.bat file found in the project directory can also be used to merge files.
Best wishes
Hi,
Which version of Device Monitor are you using? I was able to OAD the application with BLE Device Monitor. Did you try resetting the device after the OAD?
Best wishes
I know why the oad image is being rejected.When use the oad_image_tool.py tool, the userID assigned to the output file is EEEE,even though I've given the -t onchip command.
I've included HAL_IMAGE_B in preprocessor directive and the configuration is for simple_peripheral_cc2650em_app project is flashonly_OAD_lmgB.
How do I solve this issue?