MICROCHIP Harmony Integrated Software Framework
Specifications:
- Product Name: MPLAB Harmony Integrated Software Framework
- Version: v1.11
- Release Date: April 2017
Product Information:
The MPLAB Harmony Integrated Software Framework v1.11 is a software framework designed to simplify and accelerate the development of embedded applications for Microchip microcontrollers. It provides a comprehensive set of libraries, drivers, and middleware to streamline the development process.
Product Usage Instructions
Features and Known Issues:
MPLAB Harmony Features:
- Supports a wide range of Microchip microcontrollers
- Comprehensive set of libraries and middleware
- Easy configuration and setup
Known Issues:
- C++ programming language not supported
- Recommended -O1 optimization level for building projects with Harmony peripheral library
- Uninstaller behavior regarding user-modified files
Release Information
Provides MPLAB Harmony release information, include release notes, release contents, release types, and explains the version numbering system. A PDF copy of the Release Notes is provided in the <install-dir>/doc folder of your MPLAB Harmony installation.
Release Notes
This topic provides the release notes for this version of MPLAB Harmony.
Description
MPLAB Harmony Version: v1.11 Release Date: April 2017
Software Requirements
Before using MPLAB Harmony, ensure that the following are installed:
- MPLAB X IDE 3.60
- MPLAB XC32 C/C++ Compiler 1.43
- MPLAB Harmony Configurator 1.11.xx
Updating to This Release of MPLAB Harmony
Updating to this release of MPLAB Harmony is relatively simple. For detailed instructions, please refer to Porting and Updating to MPLAB Harmony.
What is New and Known Issues
The following tables list the features that have been changed or added and any known issues that have been identified since the last release of MPLAB Harmony. Any known issues that have yet to be resolved were retained from the previous release.
MPLAB Harmony:
Feature | Additions and Updates | Known Issues |
General | MPLAB Harmony has not been tested with C++; therefore, support for this programming language is not supported.
The “-O1” optimization level is recommended when building any projects that include the MPLAB Harmony prebuilt binary (.a file) peripheral library. This is necessary so that the linker will remove code from unused sections (for peripheral library features that are not used). Alternately, you may select “Remove Unused Sections” in the General options for the xc32-ld (linker) properties dialog box. The MPLAB Harmony uninstaller will delete all files installed by the installer, even if they were modified by the user. However, the uninstaller will not delete new files added by the user to the MPLAB Harmony installation folder. The MPLAB Harmony Display Manager plug-in provides complete configuration and simulation support to the LCC generated driver, and also provides basic support for all other graphics controller drivers. Full configuration and simulation support for the other graphics controller drivers will be added in a future release of MPLAB Harmony. |
Middleware and Libraries:
Feature | Additions and Updates | Known Issues |
Bootloader Library | The UDP bootloader does not compile for PIC32MZ devices when microMIPS is selected. | |
Crypto Library | N/A | Migrating projects that use the hardware Crypto library, and have multiple configurations, may run into a compile issue after regenerating code. MPLAB X IDE will show that the pic32mz-crypt.h and pic32mz-hash.c files are excluded from the configuration, even though it tried to add them. The compiler will generate errors, saying that certain Crypto functions cannot be referenced. To work around this issue, remove both files (pic32mz-crypt.h and pic32mz-hash.c) from the project and use the MPLAB Harmony Configurator (MHC) to regenerate all configurations that use these files. |
Decoder Libraries | Due to memory requirements and the amount of available SRAM, some decoders cannot operate concurrently with other decoders. However, each decoder will operate individually in the universal_audio_decoders demonstration. | |
File System | Found and fixed potential null pointer exception in the unmount function. | |
Graphics Libraries | JPEG decoding does not support progressive scanned images.Some transparency-incorporated animated GIF images may demonstrate tearing.The generated LCCG driver supports display resolution up to WVGA or equivalent. | |
TCP/IP Stack | SMTPC:
|
|
USB Device Library | N/A | The USB Device Stack has been tested in limited capacity with RTOS.While running the USB Device Stack on a PIC32MZ family device, the stack requires three seconds to initialize for PIC32MZ EC devices and three milliseconds for PIC32MZ EF devices. |
USB Host Library | Removed MHC support for USB Host Beta software. Support for USB Host Beta APIs will be removed in future releases. | The following USB Host Stack functions are not implemented:
The Hub, Audio v1.0, and HID Host Client Drivers have been tested in limited capacity.The USB Host Stack has been tested in limited capacity with RTOS.Polled mode operation has not been tested.Attach/Detach behavior has been tested in a limited capacity.While running the USB Host Stack on a PIC32MZ family device, the stack requires three seconds to initialize for PIC32MZ EC devices and three milliseconds for PIC32MZ EF devices.The USB Host Layer does not perform overcurrent checking. This feature will be available in a future release of MPLAB Harmony.The USB Host Layer does not check for the Hub Tier Level. This feature will be available in a future release of MPLAB Harmony.The USB Host Layer will only enable the first configuration when there are multiple configurations. If there are no interface matches in the first configuration, this causes the device to be become inoperative. Multiple configuration enabling will be activated in a future release of the of MPLAB Harmony. The MSD Host Client Driver has been tested with a limited number of commercially available USB Flash drives.The MSD Host Client Driver and the USB Host Layer have not been tested for read/write throughput. This testing will be done in a future release of MPLAB Harmony.The MSD Host Client Driver and SCSI block driver can only be used with the File system if the file system Auto-Mount feature is enabled.The MSD Host Client Driver has not been tested with Multi-LUN Mass Storage Device and USB Card Readers. |
USB Host Library (continued) | The USB Host SCSI Block Driver, the CDC Client Driver, and the Audio Host Client Driver only support single-client operation. Multi-client operation will be enabled in a future release of MPLAB Harmony.
USB HID Host Client driver has not been tested with multiple usage devices. Sending of output or feature report has not been tested. The USB Audio Host Client driver does not provide implementation for the following functions:
|
Device Drivers:
Feature | Additions and Updates | Known Issues |
LCC | . | The MPLAB Harmony Graphics Composer (MHGC) is not capable of providing a palette table; therefore, users must supply a uint16_t array of 256 16 bpp RGB colors to the LCC Driver using the DRV_GFX_PalletteSet function. The content of this array will serve to map color indices to TFT display colors.
The DMA Trigger Source setting in MHC has changed. If your project’s setting is on 3, 5, 7 or 9, MHC will flag it as red. Please change to either 2, 4, 6, or 8. All the odd-numbered timers are removed from selection. While these timers are functional at default, only the even-numbered timers (2, 4, 6, 8) will accept changes in prescaler values. |
I2C | N/A | I2C Driver Using the Peripheral and the Bit-banged Implementation:
|
MRF24WN Wi-Fi | New wdrvext_mx.a, wdrvext_ec.a, and wdrvext_mz.a library files. |
S1D13517 | The S1D13517 Driver does not support the getting of a pixel or array of pixels from the S1D13517 framebuffer and does not support font rendering when Anti-aliasing is enabled. | |
Secure Digital (SD) Card | N/A | The SD Card Driver has not been tested in a high frequency interrupt environment. |
SPI | N/A | The SPI Slave mode with DMA is not operational. This issue will be corrected in a future release of MPLAB Harmony. |
SPI Flash | Flash features such as high-speed read, hold, and write-protect are not supported by the driver library.
Static implementation of the driver library is not available. |
|
USB | The USB Driver Library has been tested in limited capacity with RTOS.
While running the USB Driver Library on a PIC32MZ family device, the stack requires three seconds to initialize for PIC32MZ EC devices and three milliseconds for PIC32MZ EF devices.Some APIs for USB Host Driver Library may change in the next release.USB Host Driver Library Polled mode operation has not been tested.USB Host Driver Library Attach/Detach behavior has been tested in a limited capacity. |
System Services:
Feature | Additions and Updates | Known Issues |
DMA |
Peripheral Libraries:
Feature | Additions and Updates | Known Issues |
ADCHS | N/A | FIFO is not supported in this version of the peripheral library. |
SQI | N/A | A SQI clock divider value higher than CLK_DIV_16 will not work. To achieve optimal SQI clock speeds, use a SQI clock divider value lower than CLK_DIV_16.
Note: This issue is applicable to any applications that use the SQI module. |
Applications
Feature | Additions and Updates | Known Issues |
Audio Demonstrations | Changed in Universal_audio_decoders to limit directory depth in the file system. This will prevent an exception if that otherwise would occur beyond 6 sub-directory levels. | usb_headset, usb_microphone, and usb_speaker Demonstrations:
The mute feature (as controlled from the PC) does not function. mac_audio_hi_res Demonstration: Muting the audio at the PC only works properly the first time |
Bluetooth Demonstrations | Fixed issues found in WVGA display on a2dp_avrcp demo. This is a premium demonstration. | Graphics have been temporarily turned off/removed in all PIC32MZ DA configurations and will be made available in a future release |
File System Demonstrations | LED_3, which is used to indicate demonstration success does not illuminate, which affects the following demonstrations:
As a work around, the user can place a breakpoint in the application code to see the status of the demonstrations. |
Graphics Demonstrations | Starter kit PKOB programming and debugging may produce the following error: The programmer could not be started: Failed to program the target device. If this message occur, repower the device and the application will start. If debugging is required, the suggested work around is to install the appropriate header onto the starter kit using MPLAB REAL ICE.
The following issues apply to the external_resources demonstration:
|
|
MEB II Demonstrations | The segger_emwin demonstration application does not yet include touch input. | |
RTOS Demonstrations | The SEGGER embOS Library with FPU support is required for PIC32MZ EF configuration and the user needs to explicitly include this. By default, the library without FPU support is included. | |
System Service Library Examples | N/A | The command_appio demonstration does not function using MPLAB X IDE v3.06, but is operational with v3.00. |
TCP/IP Wi-Fi
Demonstrations |
N/A | The tcpip_tcp_client demonstration using the ENC24xJ600 or the ENC28J60 configurations does not work properly if the SPI Driver enables DMA. Please disable the SPI DMA option for these configurations. This will be corrected in a future release of MPLAB Harmony. |
Test Applications | N/A | The FreeRTOS configurations for use with the PIC32MZ EF Starter Kit have the floating-point library disabled in the project options. |
USB Demonstrations | The msd_basic Device demonstration application when built using PIC32MZ devices, requires that the SCSI Enquiry response data structure to be placed in RAM. Placing this data structure in program Flash memory causes the enquiry response to become corrupted. This issue will be corrected in a future release.The hid_basic_keyboard Host demonstration captures keystrokes from A-Z, a-z, 0-9, Shift and CAPS LOCK key only. The keyboard LED glow functionality and support for other key combinations will be updated in a future release.In the audio_speaker Host demonstration, Plug and Play may not work for the pic32mz_ef_sk_int_dyn and pic32mx_usb_sk2_int_dyn configurations. This issue will be corrected in a future release.In the hub_msd Host demonstration application, Hub plug and play detection may occasionally fail. However, if the hub is plugged in before the PIC32MZ device is released from reset, the demonstration application operates as expected. This issue is under investigation and a correction will be available in a future release of MPLAB Harmony.It is recommended to use a self-powered hub while attempting to use the available hub demonstration applications. The VBUS supply regulator on the starter kit may not be able to meet the current requirements of a bus-powered hub, which would then cause unpredictable demonstration application behavior. |
Build Framework:
Feature | Additions and Updates | Known Issues |
Bluetooth Stack Library | N/A | |
Math Libraries | DSP Fixed-Point Math Library:
|
Utilities:
Feature | Additions and Updates | Known Issues |
MPLAB Harmony Configurator (MHC) | N/A |
|
Third-Party Software:
Feature | Additions and Updates | Known Issues |
SEGGER emWin Graphics Library | N/A | Only the LCC display controller is supported. Support for other display controllers is not available in this release.
An API to retrieve the Dialog widget handle is not available in this release. |
Release Contents
This topic lists the contents of this release and identifies each module.
Description
This table lists the contents of this release, including a brief description, and the release type (Alpha, Beta, Production, or Vendor).
Middleware and Libraries
<install-dir>/framework/ | Description | Release Type |
bluetooth/cdbt | Bluetooth Stack Library (Basic) | Production |
bluetooth/premium/audio/cdbt
bluetooth/premium/audio/decoder/sbc |
Bluetooth Audio Stack Library (Premium)
SBC Decoder Library (Premium) |
Production
Production |
bootloader | Bootloader Library | Production |
classb | Class B Library | Production |
crypto | Microchip Cryptographic Library | Production |
decoder/bmp/BmpDecoder decoder/bmp/GifDecoder decoder/bmp/JpegDecoder decoder/audio_decoders/decoder_opus decoder/speex decoder/premium/decoder_aac decoder/premium/decoder_mp3 decoder/premium/decoder_wma |
BMP Decoder Library GIF Decoder Library JPEG Decoder Library Opus Decoder Library Speex Decoder Library AAC Decoder Library (Premium) MP3 Decoder Library (Premium) WMA Decoder Library (Premium) |
Beta Beta Beta Beta Beta Beta Beta Beta |
gfx | Graphics Library | Production |
math/dsp | DSP Fixed-Point Math Library API header for PIC32MZ devices | Production |
math/libq | LibQ Fixed-Point Math Library API header for PIC32MZ devices | Production |
net/pres | MPLAB Harmony Network Presentation Layer | Beta |
test | Test Harness Library | Production |
tcpip | TCP/IP Network Stack | Production |
usb | USB Device Stack
USB Host Stack |
Production
Beta |
Device Drivers:
<install-dir>/framework/driver/ | Description | Release Type |
adc | Analog-to-Digital Converter (ADC) Driver
Dynamic Implementation Static Implementation |
Beta Beta |
camera/ovm7690 | OVM7690 Camera Driver
Dynamic Implementation only |
Beta |
can | Controller Area Network (CAN) Driver
Static Implementation only |
Beta |
cmp | Comparator Driver
Static Implementation only |
Beta |
codec/ak4384
codec/ak4642
codec/ak4953
codec/ak7755 |
AK4384 Codec Driver
Dynamic Implementation only
AK4642 Codec Driver Dynamic Implementation only
AK4953 Codec Driver Dynamic Implementation only
AK7755 Codec Driver Dynamic Implementation only |
Production
Production
Production
Production |
cpld | CPLD XC2C64A Driver
Static Implementation only |
Production |
enc28j60 | ENC28J60 Driver Library
Dynamic Implementation only |
Beta |
encx24j600 | ENCx24J600 Driver Library
Dynamic Implementation only |
Beta |
ethmac | Ethernet Media Access Controller (MAC) Driver
Dynamic Implementation only |
Production |
ethphy | Ethernet Physical Interface (PHY) Driver
Dynamic Implementation only |
Production |
flash | Flash Driver
Static Implementation only |
Beta |
gfx/controller/lcc | Low-Cost Controllerless (LCC) Graphics Driver
Dynamic Implementation only |
Production |
gfx/controller/otm2201a | OTM2201a LCD Controller Driver
Dynamic Implementation only |
Production |
gfx/controller/s1d13517 | Epson S1D13517 LCD Controller Driver
Dynamic Implementation only |
Production |
gfx/controller/ssd1289 | Solomon Systech SSD1289 Controller Driver
Dynamic Implementation only |
Production |
gfx/controller/ssd1926 | Solomon Systech SSD1926 Controller Driver
Dynamic Implementation only |
Production |
gfx/controller/tft002 | TFT002 Graphics Driver
Dynamic Implementation only |
Production |
i2c | Inter-Integrated Circuit (I2C) Driver
Dynamic Implementation Static Implementation |
Alpha Alpha |
i2s | Inter-IC Sound (I2S) Driver
Dynamic Implementation only |
Beta |
ic | Input Capture Driver
Static Implementation only |
Beta |
nvm | Non-Volatile Memory (NVM) Driver
Dynamic Implementation Static Implementation |
Beta Beta |
oc | Output Compare Driver
Static Implementation only |
Beta |
pmp | Parallel Master Port (PMP) Driver
Dynamic Implementation Static Implementation |
Production Beta |
rtcc | Real-Time Clock and Calendar (RTCC) Driver
Static Implementation only |
Beta |
sdcard | SD Card Driver (client of SPI Driver)
Dynamic Implementation only |
Beta |
spi | Serial Peripheral Interface (SPI) Driver
Dynamic Implementation Static Implementation |
Production Beta |
spi_flash/sst25vf016b spi_flash/sst25vf020b spi_flash/sst25vf064c spi_flash/sst25 |
SPI Flash Drivers
Dynamic Implementation only |
Alpha |
tmr | Timer Driver
Dynamic Implementation Static Implementation |
Production Beta |
touch/adc10bit
touch/ar1021
touch/mtch6301
touch/mtch6303 |
ADC 10-bit Touch Driver Dynamic Implementation only AR1021 Touch Driver Dynamic Implementation only MTCH6301 Touch Driver Dynamic Implementation only MTCH6303 Touch Driver Static Implementation only |
Beta
Beta
Beta
Beta |
usart | Universal Synchronous/Asynchronous Receiver/Transmitter (USART) Driver
Dynamic Implementation Static Implementation |
Production
Beta |
usbfs
usbhs |
PIC32MX Universal Serial Bus (USB) Controller Driver (USB Device) Dynamic Implementation onlyPIC32MZ Universal Serial Bus (USB) Controller Driver (USB Device) Dynamic Implementation only |
Production
Production |
usbfs
usbhs |
PIC32MX Universal Serial Bus (USB) Controller Driver (USB Host)
Dynamic Implementation only PIC32MZ Universal Serial Bus (USB) Controller Driver (USB Host) Dynamic Implementation only |
Beta
Beta |
wifi/mrf24w
wifi/mrf24wn |
Wi-Fi Driver for the MRF24WG controller Dynamic Implementation onlyWi-Fi Driver for the MRF24WN controller Dynamic Implementation only |
Production
Production |
System Services
<install-dir>/framework/system/ | Description | Release Type |
clk | Clock System Service Library
Dynamic Implementation Static Implementation |
Production
Production |
command | Command Processor System Service Library
Dynamic Implementation only |
Production |
common | Common System Service Library | Beta |
console | Console System Service Library
Dynamic Implementation Static Implementation |
Beta
Alpha |
debug | Debug System Service Library
Dynamic Implementation only |
Beta |
devcon | Device Control System Service Library
Dynamic Implementation only |
Production |
dma | Direct Memory Access System Service Library
Dynamic Implementation |
Production |
fs | File System Service Library
Dynamic Implementation only |
Production |
int | Interrupt System Service Library
Static Implementation only |
Production |
memory | Memory System Service Library
Static Implementation only |
Beta |
msg | Messaging System Service Library
Dynamic Implementation only |
Beta |
ports | Ports System Service Library
Static Implementation only |
Production |
random | Random Number Generator System Service Library
Static Implementation only |
Production |
reset | Reset System Service Library
Static Implementation only |
Beta |
tmr | Timer System Service Library
Dynamic Implementation only |
Beta |
touch | Touch System Service Library
Dynamic Implementation only |
Beta |
wdt | Watchdog Timer System Service Library
Static Implementation only |
Beta |
Peripheral Libraries:
<install-dir>/framework/ | Description | Release Type |
peripheral | Peripheral Library Source Code for all Supported PIC32 Microcontrollers | Production |
PIC32MX1XX/2XX 28/36/44-pin Family | Production | |
PIC32MX1XX/2XX/5XX 64/100-pin Family | Production | |
PIC32MX320/340/360/420/440/460 Family | Production | |
PIC32MX330/350/370/430/450/470 Family | Production | |
PIC32MX5XX/6XX/7XX Family | Production | |
PIC32MZ Embedded Connectivity (EC) Family | Production | |
PIC32MZ Embedded Connectivity with Floating Point Unit (EF) Family | Production |
Operating System Abstraction Layer (OSAL):
<install-dir>/framework/ | Description | Release Type |
osal | Operating System Abstraction Layer (OSAL) | Production |
Board Support Packages (BSP):
<install-dir>/bsp/ | Description | Release Type |
bt_audio_dk | BSP for the PIC32 Bluetooth Audio Development Kit. | Production |
chipkit_wf32 | BSP for the chipKIT™ WF32™ Wi-Fi Development Board. | Production |
chipkit_wifire | BSP for the chipKIT™ Wi-FIRE Development Board. | Production |
pic32mx_125_sk | BSP for the PIC32MX1/2/5 Starter Kit. | Production |
pic32mx_125_sk+lcc_pictail+qvga | BSP for the Low-Cost Controllerless (LCC) Graphics PICtail Plus Daughter Board with the Graphics Display Truly 3.2″ 320×240 Board connected to the PIC32MX1/2/5 Starter Kit. | Production |
pic32mx_125_sk+meb | BSP for the PIC32MX1/2/5 Starter Kit connected to the Multimedia Expansion Board (MEB). | Production |
pic32mx_bt_sk | BSP for the PIC32 Bluetooth Starter Kit. | Production |
pic32mx_eth_sk | BSP for the PIC32 Ethernet Starter Kit. | Production |
pic32mx_eth_sk2 | BSP for the PIC32 Ethernet Starter Kit II. | Production |
pic32mx_pcap_db | BSP for the PIC32 GUI Development Board with Projected Capacitive Touch. | Production |
pic32mx_usb_digital_audio_ab | BSP for the PIC32 USB Audio Accessory Board | Production |
pic32mx_usb_sk2 | BSP the PIC32 USB Starter Kit II. | Production |
pic32mx_usb_sk2+lcc_pictail+qvga | BSP for the Low-Cost Controllerless (LCC) Graphics PICtail Plus Daughter Board with the Graphics Display Truly 3.2″ 320×240 Board connected to the PIC32 USB Starter Kit II. | Production |
pic32mx_usb_sk2+lcc_pictail+wqvga | BSP for the Low-Cost Controllerless (LCC) Graphics PICtail Plus Daughter Board with the Graphics Display Powertip 4.3″ 480×272 Board connected to the PIC32 USB Starter Kit II. | Production |
pic32mx_usb_sk2+meb | BSP for the Multimedia Expansion Board (MEB) connected to the PIC32 USB Starter Kit II. | Production |
pic32mx_usb_sk2+s1d_pictail+vga | BSP for the Graphics Controller PICtail Plus Epson S1D13517 Daughter Board with the Graphics Display Truly 5.7″ 640×480 Board connected to the PIC32 USB Starter Kit II. | Production |
pic32mx_usb_sk2+s1d_pictail+wqvga | BSP for the Graphics Controller PICtail Plus Epson S1D13517 Daughter Board with the Graphics Display Power tip 4.3″ 480×272 Board connected to the PIC32 USB Starter Kit II. | Production |
pic32mx_usb_sk2+s1d_pictail+wvga | BSP for the Graphics Controller PICtail Plus Epson S1D13517 Daughter Board with Graphics Display Truly 7″ 800×400 Board connected to the PIC32 USB Starter Kit II. | Production |
pic32mx_usb_sk2+ssd_pictail+qvga | BSP for the Graphics LCD Controller PICtail Plus SSD1926 Daughter Board with Graphics Display Truly 3.2″ 320×240 Board connected to the PIC32 USB Starter Kit II. | Production |
pic32mx_usb_sk3 | BSP for the PIC32 USB Starter Kit III. | Production |
pic32mx270f512l_pim+bt_audio_dk | BSP for the PIC32MX270F512L Plug-in Module (PIM) connected to the PIC32 Bluetooth Audio Development Kit. | Production |
pic32mx460_pim+e16 | BSP for the PIC32MX460F512L Plug-in Module (PIM) connected to the Explorer 16 Development Board. | Production |
pic32mx470_pim+e16 | BSP for the PIC32MX450/470F512L Plug-in Module (PIM) connected to the Explorer 16 Development Board. | Production |
pic32mx795_pim+e16 | BSP for the PIC32MX795F512L Plug-in Module (PIM) connected to the Explorer 16 Development Board. | Production |
pic32mz_ec_pim+bt_audio_dk | BSP for the PIC32MZ2048ECH144 Audio Plug-in Module (PIM) connected to the PIC32 Bluetooth Audio Development Kit. | Production |
pic32mz_ec_pim+e16 | BSP for the PIC32MZ2048ECH100 Plug-in Module (PIM) connected to the Explorer 16 Development Board. | Production |
pic32mz_ec_sk | BSP for the PIC32MZ Embedded Connectivity (EC) Starter Kit. | Production |
pic32mz_ec_sk+meb2 | BSP for the Multimedia Expansion Board II (MEB II) connected to the PIC32MZ Embedded Connectivity (EC) Starter Kit. | Production |
pic32mz_ec_sk+meb2+wvga | BSP for the Multimedia Expansion Board II (MEB II) with the 5″ WVGA PCAP Display Board (see Note) connected to the PIC32MZ Embedded Connectivity (EC) Starter Kit.
Note: Please contact your local Microchip Sales Office for information on obtaining the 5″ WVGA PCAP Display Board. |
Production |
pic32mz_ec_sk+s1d_pictail+vga | BSP for the Graphics Controller PICtail Plus Epson S1D13517 Daughter Board with the Graphics Display Truly 5.7″ 640×480 Board connected to the PIC32MZ Embedded Connectivity (EC) Starter Kit. | Production |
pic32mz_ec_sk+s1d_pictail+wqvga | BSP for the Graphics Controller PICtail Plus Epson S1D13517 Daughter Board with the Graphics Display Powertip 4.3″ 480×272 Board connected to the PIC32MZ Embedded Connectivity (EC) Starter Kit. | Production |
pic32mz_ec_sk+s1d_pictail+wvga | BSP for the Graphics Controller PICtail Plus Epson S1D13517 Daughter Board with the 5″ WVGA PCAP Display Board (see Note) connected to the PIC32MZ Embedded Connectivity with Floating Point Unit (EC) Starter Kit.
Note: Please contact your local Microchip Sales Office for information on obtaining the 5″ WVGA PCAP Display Board. |
Production |
pic32mz_ef_pim+bt_audio_dk | BSP for the PIC32MZ2048EFH144 Audio Plug-in Module (PIM) connected to the PIC32 Bluetooth Audio Development Kit. | Production |
pic32mz_ef_pim+e16 | BSP for the PIC32MZ2048EFH100 Plug-in Module (PIM) connected to the Explorer 16 Development Board. | Production |
pic32mz_ef_sk | BSP for the PIC32MZ Embedded Connectivity with Floating Point (EF) Starter Kit. | Production |
pic32mz_ef_sk+meb2 | BSP for the Multimedia Expansion Board II (MEB II) connected to the PIC32MZ Embedded Connectivity with Floating Point Unit (EF) Starter Kit. | Production |
pic32mz_ef_sk+meb2+wvga | BSP for the Multimedia Expansion Board II (MEB II) with the 5″ WVGA PCAP Display Board (see Note) connected to the PIC32MZ Embedded Connectivity with Floating Point Unit (EF) Starter Kit.
Note: Please contact your local Microchip Sales Office for information on obtaining the 5″ WVGA PCAP Display Board. |
Production |
pic32mz_ef_sk+s1d_pictail+vga | BSP for the Graphics Controller PICtail Plus Epson S1D13517 Daughter Board with the Graphics Display Truly 5.7″ 640×480 Board connected to the PIC32MZ Embedded Connectivity with Floating Point Unit (EF) Starter Kit. | Production |
pic32mz_ef_sk+s1d_pictail+wqvga | BSP for the Graphics Controller PICtail Plus Epson S1D13517 Daughter Board with the Graphics Display Powertip 4.3″ 480×272 Board connected to the PIC32MZ Embedded Connectivity with Floating Point Unit (EF) Starter Kit. | Production |
wifi_g_db | BSP for the Wi-Fi G Demo Board. | Production |
Audio Applications:
<install-dir>/apps/audio/ | Description | Release Type |
audio_microphone_loopback | Audio Microphone Loopback Demonstration | Production |
audio_tone | Audio Tone Demonstration | Production |
mac_audio_hi_res | Hi-resolution Audio Demonstration | Production |
sdcard_usb_audio | USB Audio SD Card Demonstration | Beta |
universal_audio_decoders | Universal Audio Decoder Demonstration | Production |
usb_headset | USB Audio Headset Demonstration | Production |
usb_microphone | USB Audio Microphone Demonstration | Production |
usb_speaker | USB Audio Speaker Demonstration | Production |
Bluetooth Applications:
<install-dir>/apps/bluetooth/ | Description | Release Type |
data/data_basic | Bluetooth® Basic Data Demonstration | Production |
data/data_temp_sens_rgb | Bluetooth Temperature Sensor and RGB Data Demonstration | Production |
premium/audio/a2dp_avrcp | Bluetooth Premium Audio Demonstration | Production |
Bootloader Applications:
<install-dir>/apps/bootloader/ | Description | Release Type |
basic | Basic Bootloader Demonstration | Production |
LiveUpdate | Live Update Demonstration | Production |
Class B Applications:
<install-dir>/apps/class b/ | Description | Release Type |
ClassB Demo | Class B Library Demonstration | Production |
Cryptographic Applications:
<install-dir>/apps/crypto/ | Description | Release Type |
encrypt_decrypt | Crypto Peripheral Library MD5 Encrypt/Decrypt Demonstration | Production |
large_hash | Crypto Peripheral Library Hash Demonstration | Production |
Driver Applications:
<install-dir>/apps/driver/ | Description | Release Type |
i2c/i2c_rtcc | I2C RTCC Demonstration | Production |
nvm/nvm_read_write | NVM Demonstration | Production |
spi/serial_eeprom | SPI Demonstration | Production |
spi/spi_loopback | SPI Demonstration | Production |
spi_flash/sst25vf020b | SPI Flash SST25VF020B Device Demonstration | Production |
usart/usart_echo | USART Demonstration | Production |
usart/usart_loopback | USART Loopback Demonstration | Production |
Example Applications:
<install-dir>/apps/examples/ | Description | Release Type |
my_first_app | MPLAB Harmony Tutorial Example Solution | N/A |
peripheral | MPLAB Harmony Compliant Peripheral Library Examples | Production |
system | MPLAB Harmony Compliant System Service Library Examples | Production |
External Memory Programmer Applications:
<install-dir>/apps/programmer/ | Description | Release Type |
external_flash | External Flash Bootloader Demonstration | Production |
sqi_flash | External Memory Programmer SQI Flash Demonstration | Production |
File System Applications:
<install-dir>/apps/fs/ | Description | Release Type |
nvm_fat_single_disk | Single-disk Non-Volatile Memory FAT FS Demonstration | Production |
nvm_mpfs_single_disk | Single-disk Non-Volatile Memory MPFS Demonstration | Production |
nvm_sdcard_fat_mpfs_multi_disk | Multi-disk Non-Volatile Memory FAT FS MPFS Demonstration | Production |
nvm_sdcard_fat_multi_disk | Multi-disk Non-Volatile Memory FAT FS Demonstration | Production |
sdcard_fat_single_disk | Single-disk SD Card FAT FS Demonstration | Production |
sdcard_msd_fat_multi_disk | Multi-disk SD Card MSD FAT FS Demonstration | Production |
sst25_fat | SST25 Flash FAT FS Demonstration | Alpha |
Graphics Applications:
<install-dir>/apps/gfx/ | Description | Release Type |
basic_image_motion | Basic Image Motion Graphics Library Demonstration | Production |
emwin_quickstart | SEGGER emWin Quick Start Demonstration | Production |
external_resources | Stored Graphics Resources External Memory Access Demonstration | Production |
graphics_showcase | Graphics Low-Cost Controllerless (LCC) WVGA Demonstration | Production |
lcc | Low-Cost Controllerless (LCC) Graphics Demonstration | Production |
media_image_viewer | Graphics Media Image Viewer Demonstration | Production |
object | Graphics Object Layer Demonstration | Production |
primitive | Graphics Primitives Layer Demonstration | Production |
resistive_touch_calibrate | Resistive Touch Calibration Demonstration | Production |
s1d13517 | Epson S1D13517 LCD Controller Demonstration | Production |
ssd1926 | Solomon Systech SSD1926 Controller Demonstration | Production |
Multimedia Expansion Board II (MEB II) Applications:
<install-dir>/apps/meb_ii/ | Description | Release Type |
gfx_camera | Graphics Camera Demonstration | Production |
gfx_cdc_com_port_single | Combined Graphics and USB CDC Demonstration | Production |
gfx_photo_frame | Graphics Photo Frame Demonstration | Production |
gfx_web_server_nvm_mpfs | Combined Graphics and TCP/IP Web Server Demonstration | Production |
emwin | SEGGER emWin® Capabilities on MEB II Demonstration | Beta |
RTOS Applications:
<install-dir>/apps/rtos/ | Description | Release Type |
embos | SEGGER embOS® Demonstrations | Production |
freertos | FreeRTOS™ Demonstrations | Production |
openrtos | OPENRTOS Demonstrations | Production |
threadx | Express Logic ThreadX Demonstrations | Production |
uC_OS_II | Micriµm® µC/OS-II™ Demonstrations | Beta |
uC_OS_III | Micriµm® µC/OS-III™ Demonstrations | Production |
TCP/IP Applications:
<install-dir>/apps/tcpip/ | Description | Release Type |
berkeley_tcp_client | Berkeley TCP/IP Client Demonstration | Production |
berkeley_tcp_server | Berkeley TCP/IP Server Demonstration | Production |
berkeley_udp_client | Berkeley TCP/IP UDP Client Demonstration | Production |
berkeley_udp_relay | Berkeley TCP/IP UDP Relay Demonstration | Production |
berkeley_udp_server | Berkeley TCP/IP UDP Server Demonstration | Production |
wolfssl_tcp_client | wolfSSL TCP/IP TCP Client Demonstration | Production |
wolfssl_tcp_server | wolfSSL TCP/IP TCP Server Demonstration | Production |
snmpv3_nvm_mpfs | SNMPv3 Non-Volatile Memory Microchip Proprietary File System Demonstration | Production |
snmpv3_sdcard_fatfs | SNMPv3 Non-Volatile Memory SD Card FAT File System Demonstration | Production |
tcpip_tcp_client | TCP/IP TCP Client Demonstration | Production |
tcpip_tcp_client_server | TCP/IP TCP Client Server Demonstration | Production |
tcpip_tcp_server | TCP/IP TCP Server Demonstration | Production |
tcpip_udp_client | TCP/IP UDP Client Demonstration | Production |
tcpip_udp_client_server | TCP/IP UDP Client Server Demonstration | Production |
tcpip_udp_server | TCP/IP UDP Server Demonstration | Production |
web_server_nvm_mpfs | Non-Volatile Memory Microchip Proprietary File System Web Server Demonstration | Production |
web_server_sdcard_fatfs | SD Card FAT File System Web Server Demonstration | Production |
wifi_easy_configuration | Wi-Fi® EasyConf Demonstration | Production |
wifi_g_demo | Wi-Fi G Demonstration | Production |
wifi_wolfssl_tcp_client | Wi-Fi wolfSSL TCP/IP Client Demonstration | Production |
wifi_wolfssl_tcp_server | Wi-Fi wolfSSL TCP/IP Server Demonstration | Production |
wolfssl_tcp_client | wolfSSL TCP/IP Client Demonstration | Production |
wolfssl_tcp_server | wolfSSL TCP/IP Server Demonstration | Production |
Test Applications:
<install-dir>/apps/meb_ii/ | Description | Release Type |
test_sample | MPLAB Harmony Test Sample Application | Alpha |
USB Device Applications:
<install-dir>/apps/usb/device/ | Description | Release Type |
cdc_com_port_dual | CDC Dual Serial COM Ports Emulation Demonstration | Production |
cdc_com_port_single | CDC Single Serial COM Port Emulation Demonstration | Production |
cdc_msd_basic | CDC Mass Storage Device (MSD) Demonstration | Production |
cdc_serial_emulator | CDC Serial Emulation Demonstration | Production |
cdc_serial_emulator_msd | CDC Serial Emulation MSD Demonstration | Production |
hid_basic | Basic USB Human Interface Device (HID) Demonstration | Production |
hid_joystick | USB HID Class Joystick Device Demonstration | Production |
hid_keyboard | USB HID Class Keyboard Device Demonstration | Production |
hid_mouse | USB HID Class Mouse Device Demonstration | Production |
hid_msd_basic | USB HID Class MSD Demonstration | Production |
msd_basic | USB MSD Demonstration | Production |
msd_fs_spiflash | USB MSD SPI Flash File System Demonstration | Production |
msd_sdcard | USB MSD SD Card Demonstration | Production |
vendor | USB Vendor (i.e., Generic) Demonstration | Production |
USB Host Applications:
<install-dir>/apps/usb/host/ | Description | Release Type |
audio_speaker | USB Audio v1.0 Host Class Driver Demonstration | Production |
cdc_basic | USB CDC Basic Demonstration | Production |
cdc_msd | USB CDC MSD Basic Demonstration | Production |
hid_basic_keyboard | USB HID Host Keyboard Demonstration | Production |
hid_basic_mouse | USB HID Host Mouse Demonstration | Production |
hub_cdc_hid | USB HID CDC Hub Demonstration | Production |
hub_msd | USB MSD Hub Host Demonstration | Production |
msd_basic | USB MSD Host Simple Thumb Drive Demonstration | Production |
Prebuilt Binaries:
<install-dir>/bin/framework | Description | Release Type |
bluetooth | Prebuilt PIC32 Bluetooth Stack Libraries | Production |
bluetooth/premium/audio | Prebuilt PIC32 Bluetooth Audio Stack Libraries (Premium) | Production |
decoder/premium/aac_microaptiv | Prebuilt AAC Decoder Library for PIC32MZ Devices with microAptiv Core Features (Premium) | Beta |
decoder/premium/aac_pic32mx | Prebuilt AAC Decoder Library for PIC32MX Devices (Premium) | Beta |
decoder/premium/mp3_microaptiv | Prebuilt MP3 Decoder Library for PIC32MZ Devices with microAptiv Core Features (Premium) | Production |
decoder/premium/mp3_pic32mx | Prebuilt MP3 Decoder Library for PIC32MX Devices (Premium) | Production |
decoder/premium/wma_microaptiv | Prebuilt WMA Decoder Library for PIC32MZ Devices with microAptiv Core Features (Premium) | Beta |
decoder/premium/wma_pic32mx | Prebuilt WMA Decoder Library for PIC32MX Devices (Premium) | Beta |
math/dsp | Prebuilt DSP Fixed-Point Math Libraries for PIC32MZ Devices | Production |
math/libq | Prebuilt LibQ Fixed-Point Math Libraries for PIC32MZ Devices | Production |
math/libq/libq_c | Prebuilt Math library with C-implementations compatible with both Pic32MX and Pic32MZ devices. (NOTE: These routines are not compatible with the functions of the libq library) | Beta |
peripheral | Prebuilt Peripheral Libraries | Production/ Beta |
Build Framework:
<install-dir>/build/framework/ | Description | Release Type |
math/libq | LibQ Library Build Project | Production |
math/libq | LibQ_C Library Build Project | Alpha |
peripheral | Peripheral Library Build Project | Production |
Utilities:
<install-dir>/utilities/ | Description | Release Type |
mhc/plugins/displaymanager/displaymanager.jar | MPLAB Harmony Display Manager Plug-in | Beta |
mhc/com-microchip-mplab-modules-mhc.nbm | MPLAB Harmony Configurator (MHC) Plug-in
MPLAB Harmony Graphics Composer (included in the MHC plug-in) |
Production
Beta |
mib2bib/mib2bib.jar | Compiled Custom Microchip MIB script (snmp.mib) to generate snmp.bib and mib.h | Production |
mpfs_generator/mpfs2.jar | TCP/IP MPFS File Generator and Upload Utility | Production |
segger/emwin | SEGGER emWin utilities used by MPLAB Harmony emWin demonstration applications | Vendor |
tcpip_discoverer/tcpip_discoverer.jar | TCP/IP Microchip Node Discoverer Utility | Production |
Third-Party Software:
<install-dir>/third_party/ | Description | Release Type |
decoder | Decoder Library Source Distribution | Vendor |
gfx/emwin | SEGGER emWin® Graphics Library Distribution | Vendor |
rtos/embOS | SEGGER embOS® Distribution | Vendor |
rtos/FreeRTOS | FreeRTOS Source Distribution with Support for PIC32MZ Devices | Vendor |
rtos/MicriumOSII | Micriµm® µC/OS-II™ Distribution | Vendor |
rtos/MicriumOSIII | Micriµm® µC/OS-III™ Distribution | Vendor |
rtos/OpenRTOS | OPENRTOS Source Distribution with Support for PIC32MZ Devices | Vendor |
rtos/ThreadX | Express Logic ThreadX Distribution | Vendor |
segger/emwin | SEGGER emWin® Pro Distribution | Vendor |
tcpip/wolfssl | wolfSSL (formerly CyaSSL) Embedded SSL Library Open Source-based Demonstration | Vendor |
tcpip/iniche | InterNiche Library Distribution | Vendor |
Documentation:
<install-dir>/doc/ | Description | Release Type |
harmony_help.pdf | MPLAB Harmony Help in Portable Document Format (PDF) | Production |
harmony_help.chm | MPLAB Harmony Help in Compiled Help (CHM) format | Production |
html/index.html | MPLAB Harmony Help in HTML format | Production |
harmony_compatibility_worksheet.pdf | PDF form for use in determining the level of MPLAB Harmony compatibility and to capture any exceptions or restrictions to the compatibility guidelines | Production |
harmony_release_brief_v1.11.pdf | MPLAB Harmony Release Brief, providing “at-a-glance” release information | Production |
harmony_release_notes_v1.11.pdf | MPLAB Harmony Release Notes in PDF | Production |
harmony_license_v1.11.pdf | MPLAB Harmony Software License Agreement in PDF | Production |
Release Types
This section describes the release types and their meaning.
Description
MPLAB Harmony module releases can be one of three different types, as shown in the following illustration.
Alpha Release
An alpha release version of a module is usually an initial release. Alpha releases will have complete implementations of their basic feature set, they are functionally unit tested and will build correctly. An alpha release is a great “preview” of what a new development Microchip is working on and it can be very helpful for exploring new features. However, it has not gone through the complete formal test process and it is almost certain that some of its interface will change before the production version is released, and therefore, is not recommended for production use.
Beta Release
A beta release version of a module has gone through the internal interface review process and has had formal testing of its functionality. Also, issues reported from the alpha release will have been fixed or documented. When a module is in a beta version, you can expect it to function correctly in normal circumstances and you can expect that its interface is very close to the final form (although changes can still be made if required). However, it has not had stress or performance testing and it may not fail gracefully if used incorrectly. A beta release is not recommended for production use, but it can be used for development.
Production Release
By the time a module is released in a production form, it is feature complete, fully tested, and its interface is “frozen”. All known issues from previous releases will have been fixed or documented. The existing interface will not change in future releases. It may be expanded with additional features and additional interface functions, but existing interface functions will not change. This is stable code with a stable Application Program Interface (API) that you can rely on for production purposes.
Version Numbers
This section describes the meaning of MPLAB Harmony version numbers.
Description
MPLAB Harmony Version Numbering Scheme
MPLAB Harmony uses the following version numbering scheme:
<major>.<minor>[.<dot>][<release type>]
Where:
- <major> = Major revision (significant change that affects many or all modules)
- <minor> = Minor revision (new features, regular releases)
- [.<dot>] = Dot release (error corrections, unscheduled releases)
- [<release type>] = Release Type (a for alpha and b for beta, if applicable). Production release versions do not include a release type letter.
Version String
The SYS_VersionStrGet function will return a string in the format:
“<major>.<minor>[.<patch>][<type>]”
Where:
- <major> is the module’s major version number
- <minor> is the module’s minor version number
- <patch> is an optional “patch” or “dot” release number (which is not included in the string if it equals “00”)
- <type> is an optional release type of “a” for alpha and “b” for beta. This type is not included if the release is a production version (i.e., not an alpha or a beta)
Note: The version string will not contain any spaces.
Example:
“0.03a”
“1.00”
Version Number
The version number returned from the SYS_VersionGet function is an unsigned integer in the following decimal format (not in a BCD format).
<major> * 10000 + <minor> * 100 + <patch>
Where the numbers are represented in decimal and the meaning is the same as described in Version String.
Note: There is no numerical representation of the release type.
Example:
For version “0.03a”, the value returned is equal to: 0 * 10000 + 3 * 100 + 0.
For version “1.00”, the value returned is equal to: 1 * 100000 + 0 * 100 + 0.
© 2013-2017 Microchip Technology Inc.
FAQ
- Q: Can MPLAB Harmony be used with C++ programming language?
A: No, MPLAB Harmony has not been tested with C++; therefore, support for this programming language is not available. - Q: What is the recommended optimization level for building projects with MPLAB Harmony peripheral library?
A: The -O1 optimization level is recommended to remove code from unused sections in the peripheral library. - Q: How does the MPLAB Harmony uninstaller handle user-modified files?
A: The uninstaller will delete all files installed by the installer, even if they were modified by the user. However, new files added by the user will not be deleted.
Documents / Resources
![]() |
MICROCHIP Harmony Integrated Software Framework [pdf] User Guide v1.11, Harmony Integrated Software Framework, Integrated Software Framework, Software Framework, Framework |