Skip to content

Latest commit

 

History

History
150 lines (103 loc) · 7.78 KB

getting_started.md

File metadata and controls

150 lines (103 loc) · 7.78 KB

Getting Started with WizFi360 Azure IoT Examples

These sections will guide you through a series of steps from configuring development environment to running WizFi360 Azure IoT examples using the WIZnet's Wi-Fi products.

Development environment configuration

To test the WizFi360 Azure IoT examples, the development environment must be configured to use WizFi360-EVB-Pico.

The WizFi360 Azure IoT examples were tested by configuring the development environment for Windows. Please refer to the '9.2. Building on MS Windows' section of 'Getting started with Raspberry Pi Pico' document below and configure accordingly.

Visual Studio Code was used during development and testing of WizFi360 Azure IoT examples, the guide document in each directory was prepared also base on development with Visual Studio Code. Please refer to corresponding document.

Hardware requirements

The WizFi360 Azure IoT examples use WizFi360-EVB-Pico - Wi-Fi I/O module built on RP2040 and WIZnet's WizFi360 Wi-Fi module.

WizFi360 Azure IoT example structure

Examples are available at 'WizFi360-EVB-Pico-AZURE-C/examples/' directory. As of now, following examples are provided.

Note that CMSIS_5, CMSIS-Driver, CMSIS-FreeRTOS, mbedtls, azure-iot-sdk-c, pico-sdk are needed to run WizFi360 Azure IoT examples.

  • CMSIS_5 is a set of tools, APIs, frameworks, and work flows that help to simplify software re-use, reduce the learning curve for microcontroller developers, speed-up project build and debug, and thus reduce the time to market for new applications.
  • CMSIS-Driver contains MCU independent device driver implementations and template files.
  • CMSIS-FreeRTOS is a common API for embedded microcontroller real-time operating system FreeRTOS.
  • IoT_Socket contains the code of IoT Socket - a simple BSD like IP socket interface that implements the glue logic between IoT cloud connectors (IoT clients) and the underlying communication stack.
  • mbedtls library supports additional algorithms and support related to TLS and SSL connections.
  • azure-iot-sdk-c allows applications written in C99 or later or C++ to communicate easily with Azure IoT Hub, Azure IoT Central and to Azure IoT Device Provisioning. This library includes the source code, setup instructions, and samples demonstrating use scenarios.
  • pico-sdk is made available by Pico to enable developers to build software applications for the Pico platform.
  • pico-extras has additional libraries that are not yet ready for inclusion the Pico SDK proper, or are just useful but don't necessarily belong in the Pico SDK.

Libraries are located in the 'WizFi360-EVB-Pico-AZURE-C/libraries/' directory.

If you want to modify the code that MCU-dependent and use a MCU other than RP2040, you can modify it in the WizFi360-EVB-Pico-AZURE-C/port/ directory.

WizFi360 Azure IoT example testing

  1. Download

If the WizFi360 Azure IoT examples are cloned, the library set as a submodule is an empty directory. Therefore, if you want to download the library set as a submodule together, clone the WizFi360 Azure IoT examples with the following Git command.

/* Change directory */
// change to the directory to clone
cd [user path]

// e.g.
cd D:/RP2040

/* Clone */
git clone --recurse-submodules https://github.com/Wiznet/WizFi360-EVB-Pico-AZURE-C.git

With Visual Studio Code, the library set as a submodule is automatically downloaded, so it doesn't matter whether the library set as a submodule is an empty directory or not, so refer to it.

  1. Patch

With Visual Studio Code, each library set as a submodule is automatically patched, but if you do not use Visual Studio Code, each library set as a submodule must be manually patched with the Git commands below in each library directory.

  • CMSIS-FreeRTOS
/* Change directory */
// change to the 'CMSIS-FreeRTOS' library directory
cd [user path]/RP2040-HAT-C/libraries/CMSIS-FreeRTOS

// e.g.
cd D:/RP2040/WizFi360-EVB-Pico-AZURE-C/libraries/CMSIS-FreeRTOS/CMSIS/RTOS2/FreeRTOS/Source

/* Patch */
git apply ../../../../../../patches/01_cmsis_freertos_cmsis_os2.patch
  1. Test

Please refer to 'README.md' in each example directory to find detail guide for testing WizFi360 Azure IoT examples.