- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I am trying to include the wiced ota server into my application for upgrading.
I have looked at ota_fr as example. My board is SN8205 evk.
I am getting the error:
undefined reference to `wiced_ota_server_start'
From the example I added the following includes:
#include "wiced.h"
#include "wwd_debug.h"
#include "wiced_framework.h"
#include "wiced_ota_server.h"
In my Makefile I have added the following options:
$(NAME)_COMPONENTS := daemons/ota_server
#Set factory reset application to be this same application.
FR_APP := $(OUTPUT_DIR)/binary/$(CLEANED_BUILD_STRING).stripped.elf
DCT_IMAGE := $(OUTPUT_DIR)/DCT.stripped.elf
Do I have to add something somewhere else to get this compiling?
Or any other action needed?
Cheers,
Gerard
- Labels:
-
Over The Air Updates (OTA)
-
SDK 3.x
-
SPI
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This looks enough to me. Make sure that this is the actual problem that you are facing, if the library itself have a problem then it is not built and hence linking to it will fail (offcourse make sure the library itself is int libraries/daemons/ota_server
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Try make clean first
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ah thanks, stupid me forgot to run the make clean.
It compiles now, and I get the OTA webinterface, however I upload the elf file of another userapp.
I see in the console it nicely uploads the file and ends with the restarting message.
But after this the board doesn't work anymore. Can I just use the default bootloader for this? Or does my bootloader also needs support for ota?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The WICED boot loader is responsible for loading the new application, so you need it.
Regards,
Bassem
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I am trying to understand, but don't really get it.
From the OTA server I see it uploads the app into: DCT_APP0_INDEX
When it is done it sets the boot value to DCT_APP0_INDEX.
I then get the message restarting...
But now it restart and nothing happens, in the bootloader I see:
#ifdef PLATFORM_HAS_OTA
NoOS_setup_timing( );
if ( wiced_waf_check_factory_reset( ) )
{
wiced_dct_restore_factory_reset( );
wiced_waf_app_set_boot( DCT_FR_APP_INDEX, PLATFORM_DEFAULT_LOAD );
}
NoOS_stop_timing( );
#endif
I left this piece commented out, because I don't want go back to another app.
I simply want to overwrite my current image with a new version, I included the OTA functionality in there to update.
So my guess was, it should load the new one here:
if ( load_details->source.id == EXTERNAL_FIXED_LOCATION )
{
/* Fixed location in serial flash source - i.e. no filesystem */
wiced_waf_app_load( &load_details->source, new_entry_point );
}
I would think I shouldn't edit the bootloader, functionality seems already in.
Could you give me a pointer on how to look at this?
EDIT
I search around some more on the forums and located this:
OTA Upgrade from the Application
This had a different approach than I was doing so I followed each step.
The only problem that I get now is when the download step is executed that I get the following:
Illegal division by zero at ./tools/text_to_c/sector_count.pl line 27.
Illegal division by zero at ./tools/text_to_c/sector_count.pl line 27.
Building apps lookup table
./WICED/platform/MCU/wiced_apps_lut.c:63:46: error: expected expression before ',' token
.sectors = { {FR_APP_SECTOR_START,FR_APP_SECTOR_COUNT} }
^
./WICED/platform/MCU/wiced_apps_lut.c:68:49: error: expected expression before ',' token
.sectors = { {DCT_IMAGE_SECTOR_START,DCT_IMAGE_SECTOR_COUNT} }
^
./WICED/platform/MCU/wiced_apps_lut.c:73:49: error: expected expression before ',' token
.sectors = { {DCT_IMAGE_SECTOR_START,DCT_IMAGE_SECTOR_COUNT} }
^
Second edit
I found a solution for that here:
http://community.broadcom.com/message/11886#11886
I am able to do an OTA upgrade now