Skip to content

Infineon/azure-c-sdk-port

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Azure C SDK port library

Introduction

This library implements the port layer for the Azure SDK for Embedded C to work on PSoC™ 6 MCU connectivity-enabled platforms. This library automatically pulls the Azure SDK for Embedded C library; the port layer functions implemented by this library are used by the Azure SDK for Embedded C library. If your application needs Azure SDK for Embedded C library with MQTT client functionality, it needs to explicitly import the MQTT library. See README.md located in ./sample_app/README.md for additional information.

Features

Supported platforms

Supported frameworks

This middleware library is supported on the ModusToolbox™ environment.

This environment uses the abstraction-rtos library for RTOS abstraction APIs, the http-client library for sending HTTP client requests and receiving HTTP server responses, and the mqtt library for Azure-supported IoT hub services.

Dependencies

Quick start

This library is supported only on the ModusToolbox™ environment.

  1. Review and make the required changes to the pre-defined configuration files.
  • The configuration files are bundled with the wifi-mw-core library for FreeRTOS, lwIP, and Mbed TLS. See README.md for details.

    SeSee the "Quick Start" section in README.md(https://github.com/Infineon/wifi-core-freertos-lwip-mbedtls/blob/master/README.md).

  • If the application is using bundle library then the configuration files are in the bundle library. For example if the application is using Wi-Fi core freertos lwip mbedtls bundle library, the configuration files are in wifi-core-freertos-lwip-mbedtls/configs folder. Similarly if the application is using Ethernet Core FreeRTOS lwIP mbedtls library, the configuration files are in ethernet-core-freertos-lwip-mbedtls/configs folder.

  1. Define the following COMPONENTS in the application's Makefile for the Azure port library.

    COMPONENTS=FREERTOS MBEDTLS LWIP SECURE_SOCKETS
    
  2. By default, the Azure port library disables all the debug log messages. Do the following to enable log messages:

    1. Add the ENABLE_AZ_PORT_LOGS macro to the DEFINES in the code example's Makefile. The Makefile entry would look like as follows:
      DEFINES+=ENABLE_AZ_PORT_LOGS
      
    2. Call the cy_log_init() function provided by the cy-log module. cy-log is part of the connectivity-utilities library. See connectivity-utilities library API documentation for input arguments and usage of this API.
  3. Do the following in the application's Makefile for HTTP client configuration:

    1. (Optional) Change the response header maximum length to 'N'. By default, this value is set to 2048:

      DEFINES+=HTTP_MAX_RESPONSE_HEADERS_SIZE_BYTES=<N>
      
    2. Define the following macro in the application's Makefile to configure the user agent name in all HTTP request headers. By default, this component will be added to the request header. Update this for user-defined agent values:

      DEFINES += HTTP_USER_AGENT_VALUE="\"anycloud-http-client\""
      
    3. Define the following macros in the application's Makefile to mandatorily disable custom configuration header file:

      DEFINES += HTTP_DO_NOT_USE_CUSTOM_CONFIG
      DEFINES += MQTT_DO_NOT_USE_CUSTOM_CONFIG
      
    4. If the user application doesn't use MQTT client features, add the following path in the .cyignore file of the application to exclude the coreMQTT source files from the build:

      $(SEARCH_aws-iot-device-sdk-embedded-C)/libraries/standard/coreMQTT
      libs/aws-iot-device-sdk-embedded-C/libraries/standard/coreMQTT
      

Additional information

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages