XDK API  3.6.0
Documentation
Macros | Functions
Utils.c File Reference
#include "XdkCommonInfo.h"
#include "XDK_Utils.h"
#include <stdio.h>
#include <string.h>
#include "XDK_FOTA.h"
#include "XdkVersion.h"
#include "BCDS_NVMConfig.h"
#include "BCDS_MCU_Watchdog.h"
+ Include dependency graph for Utils.c:

Macros

#define BCDS_MODULE_ID   XDK_COMMON_ID_UTILS
 

Functions

static uint8_t * convDecToStr (uint8_t data, uint8_t *str)
 Convert Decimal/Hex value to String Format to display Version Information. More...
 
static uint8_t * convert32IntegerToVersionString (uint32_t appVersion, uint32_t xdkVersion, uint8_t *str)
 This function is to convert the integer data into a string data. More...
 
static uint32_t InterChangeEndianIfNecessaryU32 (uint32_t dataU32)
 Converts the IP address from little endian format to big endian format if necessary. More...
 
Retcode_T Utils_ConvertIpStringToNumber (const char *ipDottedQuad, uint32_t *ipAddress)
 Convert human readable IPv4 address to UINT32 which is in big endian format. More...
 
Retcode_T Utils_GetMacInfoFromNVM (Utils_NVMMacInfo_T nvmMacInfo, uint8_t *data)
 This function reads the BLE/wifi MAC address from NVM module. More...
 
Retcode_T Utils_GetXdkVersionString (uint8_t *verstring)
 This function to Get the Firmware Version by combining the XDK SW Release (i.e., Workbench Release) version (i.e., 3.0.1) & Fota Container Firmware Version (i.e., 0.0.1) So , the GetFwVersionInfo returns the Version Information as like (i.e., 3.0.1-0.0.1 ) More...
 
void Utils_PrintResetCause (void)
 This function prints if last reset was caused due to watchdog timer. More...
 

Macro Definition Documentation

#define BCDS_MODULE_ID   XDK_COMMON_ID_UTILS

Function Documentation

static uint8_t* convDecToStr ( uint8_t  data,
uint8_t *  str 
)
static
Parameters
[in]dataNumber which needs to be convert into string to display in Decimal instead of HEX values.
in/out]*str pointer to Store/write the Version number in String Format.

+ Here is the caller graph for this function:

static uint8_t* convert32IntegerToVersionString ( uint32_t  appVersion,
uint32_t  xdkVersion,
uint8_t *  str 
)
static
Parameters
[in]appVersion- 32 bit value containing the FOTA version information
[in]xdkVersion- 32 bit value containing the XDK SW version information
in/out]str - pointer to the parsed version string
[out]Returnsindex where the application version starts

1. FOTA capable device only has the Valid application firmware version in that case output format will be example:v3.0.1-0.0.1( XDK Version + Application version)

  1. For Non- FOTA capable device version number will be v3.0.1-xx.xx.xx( XDK Version-xx.xx.xx)
  2. Also note that the XDK version number is represented in Decimal format (i.e if XDK version is 3.0.1).
    the following macros maintain to represent the XDK SW release version #define XDKVERSION_MAJOR 3 #define XDKVERSION_MINOR 0 #define XDKVERSION_PATCH 1
  3. Also note that the Application version number is represented in Decimal format. example: if user modifies the application version value macros under application.mk as follows MAJOR_SW_NO ?= 0xFF MINOR_SW_NO ?= 0xFF PATCH_SW_NO ?= 0xFF so, the appVersion will be represented as 255.255.255

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static uint32_t InterChangeEndianIfNecessaryU32 ( uint32_t  dataU32)
static
Parameters
[in]uint32_tIP Address
[out]ReturnsIp address in big endian format

+ Here is the caller graph for this function:


All rights reserved. The use is subject to the XDK SDK EULA by Bosch Connected Devices and Solutions GmbH.
This documentation file has been automatically generated on Thu Mar 14 2019 19:12:41 by doxygen 1.8.8