Curiosity PIC32MZEF 2.0

The Curiosity PIC32MZEF 2.0 is a development board from Microchip based on the high performance 32-bit PIC32MZ EF Series (PIC32MZ2048EFM144) microcontroller. The board features 2MB flash, 512KB RAM, 8MB quad-SPI memory, and an integrated programmer/debugger.

Project Specifics

There are no imported sensors or specialized elements or tools native to Curiosity PIC32MZEF 2.0 projects.

Hardware Specifics

Some devices may have limitations or design restrictions that cause unexpected behavior when used with Atmosphere. Specific information and details pertaining to the Curiosity PIC32MZEF 2.0 and its performance on Atmosphere is noted below.

No macOS Support

The Curiosity PIC32MZEF 2.0 is not supported on macOS with Atmosphere. Microchip’s MPLAB X IDE does have a macOS download, however there are known issues with MPLAB X IDE and macOS with programming the board. For more information, visit the Microchip MPLAB X IDE Forums.

Connecting to Atmosphere

While attempting to register the Curiosity PIC32MZEF 2.0 to Atmosphere from the Devices area’s Add Device window, the board must be connected via both its debug USB connector (J700) and its target USB connector (J201). Once registered, it can remain connected using either USB connector.

Debug Output

In order to view debug output from the Curiosity PIC32MZEF 2.0, the board must be connected via both its debug USB connector and its target USB connector. If simply powering the board on, connect it using the debug USB connector only.

Default Pin Mapping

Atmosphere configures each peripheral to a default pin for every supported device, based on ideal pairing of pins and their usage. The default pin configuration is set for convenience and enables each peripheral to work naturally without needing to be modified.

Curiosity PIC32MZEF 2.0 projects start with the following pin configuration:

Pin Description Notes
P_MB1_AN Click Connector 1 AN Pin Maps to PB4
P_MB1_RST Click Connector 1 RST Pin Maps to PJ12
P_MB1_SS Click Connector 1 SPI SS Pin Maps to PD9
P_MB1_SCK Click Connector 1 SPI CLK Pin Maps to PD1
P_MB1_SDI Click Connector 1 SPI SDI Pin Maps to PD7
P_MB1_SDO Click Connector 1 SPI SDO Pin Maps to PD14
P_MB1_PWM Click Connector 1 PWM Pin Maps to PD15
P_MB1_INT Click Connector 1 INT Pin Maps to PF12
P_MB1_RX Click Connector 1 UART RX Pin Maps to PC4
P_MB1_TX Click Connector 1 UART TX Pin Maps to PC1
P_MB1_SCL Click Connector 1 I2C SCL Pin Maps to PA2
P_MB1_SDA Click Connector 1 I2C SDA Pin Maps to PA3
P_MB2_AN Click Connector 2 AN Pin Maps to PA1
P_MB2_RST Click Connector 2 RST Pin Maps to PJ10
P_MB2_SS Click Connector 2 SPI SS Pin Maps to PC2
P_MB2_SCK Click Connector 2 SPI CLK Pin Maps to PG6
P_MB2_SDI Click Connector 2 SPI SDI Pin Maps to PG8
P_MB2_SDO Click Connector 2 SPI SDO Pin Maps to PG7
P_MB2_PWM Click Connector 2 PWM Pin Maps to PD15
P_MB2_INT Click Connector 2 INT Pin Maps to PD10
P_MB2_RX Click Connector 2 UART RX Pin Maps to PE9
P_MB2_TX Click Connector 2 UART TX Pin Maps to PG9
P_MB2_SCL Click Connector 2 I2C SCL Pin Maps to PA2
P_MB2_SDA Click Connector 2 I2C SDA Pin Maps to PA3
P_LED1 LED1 Maps to PJ7
P_LED2 LED2 Maps to PK7
P_LED3 LED3 Maps to PJ3
P_LED_R RGB LED (R) Maps to PB7
P_LED_G RGB LED (G) Maps to PB8
P_LED_B RGB LED (B) Maps to PB9

The default pin for any peripheral can be changed within an element's properties, from an element that references that particular peripheral.

Internal Curiosity PIC32MZEF 2.0 Pins

Each GPIO pin can be accessed using the following nomenclature: P[PORT][PIN]. For example, port A pin 6 can be accessed with PA6.

Peripherals

Below is information regarding the Curiosity PIC32MZEF 2.0’s exposed peripherals.

I2C

I2C can be accessed using the I2C pins on both click headers and the XPlained Pro header. Each of these connections share the same I2C Bus.

SPI

SPI can be accessed using the SPI pins on both click headers. Each click header communicates to its own SPI bus.

Programming Method

Programming the Curiosity PIC32MZEF 2.0 involves using the programmer interface in Atmosphere Studio to install embedded firmware. The Curiosity PIC32MZEF 2.0 doesn’t contain a built-in programmer, so it’s used alongside an installation of the Microchip MPLAB X IDE to program it. The MPLAB X IDE doesn’t need to be used itself, however it also installs software – specifically IPECMD – that is needed for programming the firmware binary file into the board.

Setup Configuration

Prior to programming a Curiosity PIC32MZEF 2.0, ensure you have the following setup configuration:

  • Microchip MPLAB X IDE must be installed.
  • The Curiosity PIC32MZEF 2.0 is powered on and connected via both its debug USB connector and its target USB connector.
  • The Atmosphere IoT Agent is installed on the computer and running. This is a local application that runs in the system tray and acts as an intermediary between the computer’s connectivity protocol drivers and the browser running Atmosphere.
  • An Internet connection is maintained.
  • The project to be programmed has been compiled.

Programming Instructions

With setup complete, you can program the Curiosity PIC32MZEF 2.0:

  1. From Atmosphere Studio’s Embedded tab, click the Program Firmware button from the tab’s toolbar. This displays the Program Firmware window.
  2. In the IPECMD Path field, an autocompleted path of the MPLAB X IDE’s IPECMD software is entered. This is based on the Atmosphere IoT Agent locating the software file from an expected installation path on your operating system.
    • In the event your installation path of the MPLAB X IDE differs from what the agent provided, enter in the field the complete path where the MPLAB X IDE’s copy of the ipecmd.jar file is located (e.g. C:\Program Files (x86)\Microchip\MPLABX\v5.25\mplab_platform\mplab_ipe\ipecmd.jar) within its installation directory.
  3. Click Program to start programming. When complete, you’ll receive a notification stating the Curiosity PIC32MZEF 2.0 is programmed with the project’s embedded firmware.

Guides and Tutorials

Get started using the Curiosity PIC32MZEF 2.0 with Atmosphere by walking through the following guides:

Curiosity PIC32MZEF 2.0 Guides
Getting Started with Curiosity PIC32MZEF

Demo Projects

Atmosphere includes a variety of Curiosity PIC32MZEF 2.0 demo projects for users of all levels. Check them out by clicking the demo’s name to open the project in Atmosphere.

Name Description
Wi-Fi 7 Click Demo Demonstrates using the Curiosity PIC32MZEF 2.0 alongside the Wi-Fi 7 Click board by sending an integer value to the cloud every second.
Curiosity PIC32 2.0 Sensor Demo Demonstrates using the Curiosity PIC32MZEF 2.0 alongside the Wi-Fi 7 Click board to read humidity data from the Sensirion SHT Click and temperature data from the TSYS02D Xplained Pro and sends the data to the cloud.

Videos

The Atmosphere video library contains the following videos on the Curiosity PIC32MZEF 2.0:

Videos for the Curiosity PIC32MZEF 2.0 coming soon!

Resources

The following additional resources and downloadable files are available for the Curiosity PIC32MZEF 2.0: