Skip to content

Latest commit

 

History

History
176 lines (130 loc) · 7.18 KB

File metadata and controls

176 lines (130 loc) · 7.18 KB

PIC32CXBZ2_WBZ45x_BLE_WINC1500_WIFI_PROVISIONING

"IOT Made Easy!" - This example demonstrates the use of the ATWINC15x0 with the WBZ451 Curiosity board to enable Wi-Fi provisioning over a BLE connection

Devices: | PIC32CXBZ2 | WBZ45x |
Features: | BLE | Wi-Fi |

Back to Main page

⚠ Disclaimer

THE SOFTWARE ARE PROVIDED "AS IS" AND GIVE A PATH FOR SELF-SUPPORT AND SELF-MAINTENANCE. This repository contains example code intended to help accelerate client product development.

For additional Microchip repos, see: https://github.com/Microchip-MPLAB-Harmony

Checkout the Technical support portal to access our knowledge base, community forums or submit support ticket requests.

Contents

  1. Introduction
  2. Bill of materials
  3. Hardware Setup
  4. Software Setup
  5. Harmony MCC Configuration
  6. Run the demo

1. Introduction

This example demonstrates how to pass the AP credentials to WINC1500 device via BLE of WBZ451.

Wi-Fi Prov

This application shows how a user can use the WBZ451's BLE to send the target AP credentials to a WINC1500 device. After pairing with the smart phone, the user can use the "Microchip Bluetooth Data" mobile application to send the AP credentials to the WINC1500 via BLE Custom service created in WBZ451 device.

2. Bill of materials

Tools Quantity
WBZ451 Curiosity Evaluation Kit (Rev 3) 1
WINC1500 Xplained Pro 1
XPRO-ADAPTER Click 1
Apple® iPhone 1
Wi-Fi Access Point 1

3. Hardware Setup

  • Connect the WBZ451 Curiosity Evaluation Kit to the Host PC as a USB Device through a Type-A male to micro-B USB cable connected to Micro-B USB (Debug USB) port
  • Connect WINC1500 Xplained Pro and WBZ451 Curiosity board as below
WBZ451 Click connector WBZ451 Pin name/Number WINC1500 Xplained Pro WINC1500 Pin Name/Number
1 PB1 10 CHIP EN
2 PB2 5 RST
3 PA9 15 SPI CS
4 PA8 18 SPI CLK
5 PA10 17 SPI_MISO
6 PA7 16 SPI_MOSI
7 Vcc 20 +3.3V
8 GND 19 GND
15/16 PA2 9 IRQN (In V2 board, connect to 16)
  • WBZ451 Curiosity board can be connected to WINC1500 Xplained Pro using a XPRO-ADAPTER Click as shown below.
    Board
    • The jumper settings in XPRO-ADAPTER click board is as shown above figure. Use Jumpers and Jumper wires to connect the header as mentioned in below table.

      Jumper Connections
      J3.1   to   J4.1
      J3.3   to   J1.5
      J3.5   to   J3.6
      J3.7   to   J3.8
      J3.9   to   J3.10
      J3.11  to   J3.12
      J4.1   to   J3.1
      J4.3   to   J4.4
      J4.6   Open
      J4.8   Open
      J4.10  Open
      J4.12  Open

4. Software Setup

This project has been verified to work with the following versions of software tools:

  • MPLAB X IDE v6.00
  • XC32 Compiler v4.10
  • MPLAB® Code Configurator v5.1.17
  • PIC32CX-BZ_DFP v1.0.107
  • MCC Harmony
    • csp version: v3.13.1
    • core version: v3.11.1
    • wireless_pic32cxbz_wbz: v1.0.0
    • wireless_ble: v1.0.0
    • zlib: v1.2.11
    • wireless_wifi version: v3.6.1
    • dev_packs version: v3.13.1
    • wolfssl: v4.7.0
    • crypto: v3.7.6
    • CMSIS-FreeRTOS version: v10.4.6

Refer Project Manifest present in harmony-manifest-success.yml under the project folder firmware\src\config\default\harmony-manifest-success.yml for more details

  • Any Serial Terminal application like Tera Term terminal application.
    • configure the serial settings as follows:
      • Baud : 115200
      • Data : 8 Bits
      • Parity : None
      • Stop : 1 Bit
      • Flow Control : None

Because Microchip regularly update tools, occasionally issue(s) could be discovered while using the newer versions of the tools. If the project doesn’t seem to work and version incompatibility is suspected, It is recommended to double-check and use the same versions that the project was tested with. To download original version of MPLAB Harmony v3 packages, refer to document How to Use the MPLAB Harmony v3 Project Manifest Feature

5. Harmony MCC Configuration

  • The "MCC - Harmony Project Graph" below depicts the harmony components utilized in this project.
    Harmony Project Graph

  • The system configuration is depicted as follows.
    System DEVCFG1
    System PPS

  • The EIC configuration is depicted as follows.
    EIC

  • The WINC configuration is depicted as follows.
    WINC

  • The SPI Driver configuration is depicted as follows.
    SPI Driver

  • The SERCOM1 SPI configuration is depicted as follows.
    SERCOM1 SPI

  • The SERCOM0 UART configuration is depicted as follows.
    SERCOM0 SPI

  • The PIN configuration is depicted as follows.
    PIN Configuration

  • The BLE Configuration is depicted as follows.
    BLE Configuration

  • The below figure shows configurations used in custom service component. Custom Service

6. Run the demo

  • On startup, WBZ451 will Advertize with local name wbz451_winc1500_wiifiProv
  • Open the Tera Term terminal application on your PC. The WBZ451 will show the welcome message in Tera Term after intialization as shown below.
    teraterm_init
  • Open MBD app in iPhone, touch on BLE Provisioning and touch on WINC3400.
  • The MBD app will scan for ble advertising device and will display the device wbz451_winc1500_wifiProv as shown below.
    mbd_scan
  • Select wbz451_winc1500_wiifiProv to connect with wbz451_winc1500_wiifiProv device.
  • The console log in tera term will display the Bluetooth pairing pass code as shown below.
    teraterm_pair
  • In MBD App, Enter the pairing pass code as shown below.
    mbd_pair
  • When pairing is sucessfully completed, the console log in Tera Tem will show a success message as shown below.
    teraterm_pair_success
  • Enter the SSID, Passphrase and select Wi-Fi Authentication Type. (In this example, the iPhone only supports "Open" and "WPA". On the Android phone, only "Open" is supported.)
    mbd_prov
  • Press provision button. Now the MBD app will send the Wi-Fi Provisionig credentials to WBZ451 device. WBZ451 will disconnect BLE connections then intialize WINC1500 and connect to the AP.
  • Once connected, the device's IP address will be displayed in the Tera Term console log as shown below.
    teraterm_prov_success

Back to top