Part Number:CC2640R2F
Tool/software: Code Composer Studio
I am using ble sdk 1.58 and CCS v7.4
The off chip oad works if I select no optimization in CCS and set the OAD block size in 24 bytes
Once I set the CCS optimization to 0 ~ 5, OAD fails... the OAD downloader stops at "OAD Send Start OAD To ImageControl".
I can not change the block size when running no optimization, I tried to set break point at:
if (pMsg->method == ATT_MTU_UPDATED_EVENT)
{
OAD_setBlockSize(pMsg->msg.mtuEvt.MTU);
}
It doesn't stop at the break point and continue the OAD process, why it doesn't stop?
If I run the simple peripheral oad off chip example, it can break at this point and change the MTU.
I think it was the problem of heap size, since I find the voice over HID and OAD doesn't work if the heap size is too small( <4000)
I followed the instruction and used AUX_AS_RAM to increase the heap, will the speed of ram affect the OAD?
Or should I try the cache as ram? the doc said it can not uses VIMS?
My project sends hid keys and voice to host, support one I2C sensor and external flash for Off chip OAD, are these functions require VIMS?
One more... I can not program the app_Flash_ROM. hex file, the device can not boot up, but it works when I program the app_FLASH_ROM_oad.bin. I tried the " it doesn't work for me.. :(
It is fine in development, but it will be problem when doing production, the worker need to click two times to do programming, since the programmer can not program app.bin ,bim.hex and stack.hex at the same time.