Skip to content

sw-ms-imranbhadelia/iotc-generic-c-sdk-mqtt-2_1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

This IoTConnect C SDK is intended for standard operating systems Linux/Windows/MacOS.

The SDK can be integrated with Azure IoT C SDK or Paho MQTT C Client.

The Paho MQTT implementation does not support TPM authentication.

CMake Build Options

Note that the following build options are configured by default and can be toggled with cmake flags:

  • IOTC_USE_PAHO=ON - Builds with Paho MQTT Client instead of Azure IoT C SDK by default.
  • IOTC_TPM_SUPPORT=ON - Adds TPM Support for Azure IoT C SDK. Requires IOTC_USE_PAHO=OFF.

Dependencies

The project depends on curl openssl libraries and uuid library (uuid required for for Azure C SDK flavor onl) .

Both the shared libraries and the C source headers are required to be present on the build host for building. Curl and openssl shared libraries must be present on the device when running the project.

The project uses the following dependent projects as git submodules:

Initializing/Downloading The Project

This project has git submodules that need to be pulled before building. You can either:

  • Download this project from the GitHub Releases or Actions
  • or Clone this repo or download and perform the following steps:
  • Follow the instructions for your OS:
  • Edit samples/basic-sample/config/app_config.h to reflect your account and device's configuration.
  • If using CA Certificate based authentication, follow the instructions in the iotc-c-lib/tools/ecc-certs repo and create the identify for your device. Place the device certificate and private key into certs/client-crt.pem and certs/client-key.pem in the basic-sample project.
  • Build or re-build the project after editing the app_config.h file.

About

Generic IoTConnect C SDK Windows

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published