AWS IoT Device SDK Port Library
Loading...
Searching...
No Matches
AWS IoT Device SDK Port Library - Connectivity Port Layer for MQTT and HTTP on Infineon MCUs

Overview

The AWS IoT Device SDK Port Library provides a port layer implementation that enables the AWS-IoT-Device-SDK-Embedded-C library to work on Infineon connectivity-enabled MCU platforms. It bridges Infineon's secure sockets and RTOS abstraction APIs with the AWS SDK transport interface, enabling MQTT and HTTP client connectivity to AWS IoT Core. This library also includes Platform Abstraction Layer (PAL) APIs required for AWS IoT Over-the-Air (OTA) firmware updates.

Features

  • Secure socket transport layer — Implements the AWS SDK transport interface (NetworkContext) using Infineon's secure sockets library, supporting TLS connections with configurable RootCA verification modes (required, optional, none) and ALPN protocol negotiation.
  • TLS credential management — Supports flexible certificate and key provisioning from RAM or secure storage (PKCS flow), including SNI, client certificate authentication, and optional RootCA connections.
  • AWS OTA Platform Abstraction Layer — Provides OTA PAL APIs for flash storage operations (init, read, write, erase, seek), firmware image activation, validation, and rollback using MCUboot.
  • OTA OS and timer interfaces — Implements OTA event queue management and timer functions required by the AWS OTA agent, built on Infineon's abstraction-rtos.
  • Exponential backoff retry utilities — Includes configurable retry logic with jitter for resilient network reconnection attempts.
  • Clock abstraction — Provides Clock_GetTimeMs() and Clock_SleepMs() implementations using Infineon's RTOS abstraction layer.

Supported Software and Tools

This version of the library was validated for compatibility with the following software and tools:

Software and Tools Version
ModusToolbox™ Software Environment 3.9
ModusToolbox™ Device Configurator 5.90
GCC Compiler 14.2.1
IAR Compiler 9.50.2
Arm Compiler 6 6.22
LLVM compiler 22.1.0

When to Use

Use this library when building IoT applications on Infineon connectivity-enabled MCU platforms (such as PSOC™ 6, CYW43xxx, CYW955913, or PSOC™ Edge E84) that need to connect to AWS IoT Core using the AWS-IoT-Device-SDK-Embedded-C library. It is the required port layer for the Infineon MQTT Client and HTTP Client libraries when targeting AWS IoT services. Additionally, use this library when implementing AWS IoT OTA firmware updates to leverage the built-in PAL support for flash management, image verification, and secure boot integration.

How to Use

This library is a port layer consumed internally by the Infineon MQTT and HTTP Client libraries. Its APIs are not expected to be called directly by the application. Include this library as a dependency when using the MQTT Client Library or HTTP Client Library with AWS IoT.

Enabling OTA Support

By default, OTA support is disabled. To enable it:

  1. Add the CY_OTA_FLASH_SUPPORT macro in the application Makefile:
    DEFINES+=CY_OTA_FLASH_SUPPORT
  2. Using the ModusToolbox™ Library Manager (or by creating the *.mtb* files in the deps folder), add anycloud-ota and serial-flash:

    anycloud-ota.mtb: https://github.com/Infineon/anycloud-ota#release-v4.1.0#$$ASSET_REPO$$/anycloud-ota/

    serial-flash.mtb: https://github.com/Infineon/serial-flash#latest-v1.X#$$ASSET_REPO$$/serial-flash/

  3. Execute the make getlibs command.
  4. The reference file *./configs/ota_config.h* that is bundled with this library provides the default configurations required for the AWS IoT device SDK OTA library. Copy the reference file *./configs/ota_config.h* to application root folder, tune the OTA configuration parameter as required by application and add OTA signing certificate to macro AWS_IOT_OTA_SIGNING_CERT.
  5. Build the application using make build.

COMPONENT Usage

The library uses COMPONENT-based source selection:

  • **COMPONENT_SECURE_SOCKETS** — Enables the secure sockets-based transport implementation (cy_aws_tcpip_port_secure_sockets.c and cy_aws_pkcs_stub.c).
  • **COMPONENT_MBEDTLS** — Enables Mbed TLS-based OTA crypto and utility functions for signature verification on platforms using Mbed TLS.

Additional Information

Release Notes and Changelog

  • RELEASE.md - Detailed release notes for all versions

License

This port layer library is provided under Infineon software license terms. It has a direct dependency on the AWS IoT Device SDK for Embedded-C (pulled via deps/aws-iot-device-sdk-embedded-C.lib), which is governed by Amazon/AWS license terms. When OTA support is enabled, it additionally pulls the anycloud-ota and serial-flash libraries. You are responsible for reviewing and accepting all applicable third-party license terms.

Copyright

(c) 2026, Infineon Technologies AG, or an affiliate of Infineon

Technologies AG. All rights reserved.