Contents
1. Introduction
2. Getting Started with WBZ451 Curiosity Board
2.1. Hardware
2.2. Preprogrammed Demo Software
2.3. BLE Demo Experience
2.4. ZigBee Demo Experience
2.5. Multiprotocol (BLE + ZigBee)Demo Experience
2.6. Next Steps
3. Getting Started with Software Development
3.1. Install IDE and Compiler
3.2. Install Device Family Part Pack
3.3. Install MCC Plugin
3.4. Install Harmony 3 Dependencies
3.5. Creating a new MCC Harmony Project
3.6. Running a Precompiled Application Example
3.7. Next Steps
4. Getting Started with BLE Applications
4.1. Building Block Examples
4.1.1. Central
4.1.1.1. Central - FreeRTOS BLE Stack and App Initialize
4.1.1.2. BLE Legacy Scan
4.1.1.3. BLE Scanning Extended Advertisements
4.1.1.4. BLE Connection
4.1.1.5. BLE Transparent UART
4.1.1.6. BLE Multilink Transparent UART
4.1.2. Peripheral
4.1.2.1. Peripheral - FreeRTOS BLE Stack and App Initialize
4.1.2.2. BLE Sleep Mode Legacy Advertisements
4.1.2.3. BLE Extended Advertisements
4.1.2.4. BLE Deep Sleep Advertising
4.1.2.5. BLE Connection
4.1.2.6. BLE Transparent UART
4.1.2.7. BLE Custom service
4.1.3. BLE Multirole Multilink Transparent UART
4.1.4. Chip Peripherals
4.1.4.1. UART -- Hello World
4.2. Advanced Applications
4.2.1. BLE Sensor App
4.2.1.1. Protocol Exchange
4.2.2. BLE Throughput
4.3. BLE Virtual Sniffer
5. Getting Started with Zigbee Applications
5.1. Zigbee Project Generation
5.2. Zigbee Console Commands
5.3. Zigbee Commisioning Procedure
5.4. Zigbee Network Security Models
5.5. Zigbee Green Power
5.6. ZigBee Applications
5.6.1. Zigbee Application Demo: Light control and Monitoring using Combined Interface
5.6.2. Zigbee Application Demo: Light control and Monitoring using Alexa Echo Plus
5.6.3. Zigbee Centralised Network Formation by Combined Interface
5.6.4. Zigbee Application Demo: Multi-Sensor with Low Power Functionality
6. Getting Started With Multiprotocol Applications
6.1. Multiprotocol (BLE+ZIGBEE) Concurrent Application - Tutorial
6.2. Multiprotocol Application Demo: Zigbee light and Zigbee commissioning through BLE
6.3. Multiprotocol Device Firmware Upgrade over BLE Link
6.4. Zigbee commissioning through BLE - Protocol Exchange
6.5. BLE ZigBee Provisioning Low Power Application Demo: Zigbee Multi-Sensor and Zigbee commissioning through BLE
7. How-to: Adding Chip Peripherals
7.1. USART with Direct Pin Enable
7.2. USART with Peripheral Pin Select (PPS)
7.3. Clock
8. How-to: Low Power Design
8.1. Low Power Design on PIC32CXBZ2 Devices
8.2. Low Power BLE Application Design
9. How-to: Firmware and OTA Updates
9.1. Bootloader
9.2. Device Firmware Upgrade Over Serial
9.3. Device Firmware Upgrade Over BLE
9.3.1. BLE OTA DFU Firmware Architecture
9.3.2. Memory Management
9.3.3. Microchip defined BLE OTA DFU Profile
9.3.4. BLE OTA DFU Image File Definition
9.3.5. BLE OTA DFU Image Distribution Procedure
9.3.6. BLE OTA DFU Implementation
9.3.6.1. MCC Component and Code Generation
9.3.6.2. OTA Application Development
9.3.6.3. Project Properties Configuration for Current/Running Firmware
9.3.6.4. Unified Image Generation
9.3.6.5. Programming the Current Application Image using MPLABX IDE
9.3.6.6. Upgradable image .bin file generation
9.3.7. BLE OTA DFU Demo
9.4. Device Firmware Upgrade Over Zigbee Link
9.4.1. Zigbee OTAU Firmware Architecture
9.4.2. OTAU Basic Protocol and Control Flow
9.4.3. Memory Management
9.4.4. Zigbee OTAU Image File Definition
9.4.5. Zigbee OTAU - Image Distribution Procedure
9.4.6. OTA Implementation Details - OTAU Client Side
9.4.6.1. Application Development
9.4.6.2. Project Properties Configuration for Current Image
9.4.6.3. Unified Image Generation
9.4.6.4. Programming the Current Application Image using MPLABX IDE
9.4.6.5. Upgradable image .zigbee file generation
9.4.7. OTA Implementation Details - OTAU Server
9.4.7.1. Application Development
9.4.7.2. Project Properties Configuration for Serial Bootloading
9.4.7.3. Unified Image Generation for Serial Bootloading
9.4.7.4. Programming the Current Application Image using MPLABX IDE
9.4.8. Zigbee OTAU Demo
9.5. Microchip Utility Tool
9.5.1. Introduction
9.5.2. Tools Description
9.5.3. Zigbee Over The Air Update Demo
9.5.3.1. ISD Protocol
9.5.4. Serial Bootloader Demo
9.5.5. Programming using IPECMD.exe
10. Wireless System Services API
10.1. BLE_OTA
10.1.1. BLE_OTA Enums
10.1.1.1. APP_OTA_HDL_Mode_T
10.1.2. BLE_OTA Functions
10.1.2.1. APP_OTA_EvtHandler
10.1.2.2. APP_OTA_HDL_Complete
10.1.2.3. APP_OTA_HDL_ErrorHandle
10.1.2.4. APP_OTA_HDL_GetOTAMode
10.1.2.5. APP_OTA_HDL_Init
10.1.2.6. APP_OTA_HDL_Prepare
10.1.2.7. APP_OTA_HDL_Reset
10.1.2.8. APP_OTA_HDL_SetOTAMode
10.1.2.9. APP_OTA_HDL_Start
10.1.2.10. APP_OTA_HDL_Updating
10.1.2.11. APP_OTA_Reboot_Handler
10.1.2.12. APP_OTA_Timeout_Handler
10.2. BLE_Conn_Handler
10.2.1. BLE_Conn_Handler Enums
10.2.1.1. APP_BLE_LinkState_T
10.2.2. BLE_Conn_Handler Functions
10.2.2.1. APP_BleGapConnEvtHandler
10.2.2.2. APP_GetBleState
10.2.2.3. APP_GetConnHandleByIndex
10.2.2.4. APP_GetConnInfoByConnHandle
10.2.2.5. APP_InitConnList
10.2.2.6. APP_SetBleState
10.2.3. BLE_Conn_Handler Structures
10.2.3.1. APP_BLE_ConnData_T
10.2.3.2. APP_BLE_ConnList_T
10.3. APP_TRPS
10.3.1. APP_TRPS Defines
10.3.1.1. Control Response ID status Length
10.3.1.2. Maximum Control List Size
10.3.2. APP_TRPS Enums
10.3.2.1. APP_TRPS_CTRL_STATUS_CODE_T
10.3.3. APP_TRPS Functions
10.3.3.1. APP_TRPS_ConnEvtProc
10.3.3.2. APP_TRPS_deInit
10.3.3.3. APP_TRPS_DiscEvtProc
10.3.3.4. APP_TRPS_EventHandler
10.3.3.5. APP_TRPS_Init
10.3.3.6. APP_TRPS_SendNotification
10.3.4. APP_TRPS Structures
10.3.4.1. APP_TRPS_CmdResp_T
10.3.4.2. APP_TRPS_ConnList_T
10.3.4.3. APP_TRPS_Ctrl_T
10.3.4.4. APP_TRPS_CtrlCmd_T
10.3.4.5. APP_TRPS_NotifyData_T
10.4. APP_ERROR_DEF
10.4.1. APP_ERROR_DEF Defines
10.4.1.1. Error Codes Def-1
10.4.1.2. Error Codes Def-2
10.5. APP_Timer
10.5.1. APP_Timer Defines
10.5.1.1. APP_TIMER_TIMEOUT
10.5.2. APP_Timer Enums
10.5.2.1. APP_TIMER_TimerId_T
10.5.3. App_Timer Functions
10.5.3.1. APP_TIMER_IsTimerExisted
10.5.3.2. APP_TIMER_ResetTimer
10.5.3.3. APP_TIMER_SetTimer
10.5.3.4. APP_TIMER_StopTimer
10.6. Application Timer Service
11. Support Documentation
11.1. User Action
11.2. MPLAB Code Configurator(MCC) Code Generation
11.3. Import existing App Example Configuration
12. Porting Guide for WBZ451 to PIC32CX1012BZ25048
13. Microchip Information
The Microchip Website
Product Change Notification Service
Customer Support
Microchip Devices Code Protection Feature
Legal Notice
Trademarks
Quality Management System
Worldwide Sales and Service