Important: This document is applicable for two different products; PIC-IoT WG (AC164164) and PIC-IoT
WA (EV54Y39A). Both variants are referred to as PIC-IoT Wx in this document, and both products have
identical hardware. PIC-IoT WG is preconfigured to send data through Google Cloud IoT Core, and PICIoT WA is preconfigured to send data through Amazon Web Services (AWS). Both products can be
reconfigured to send data to different cloud providers.
Introduction
The PIC-IoT Wx development board is a small and easily expandable demonstration and development platform for
IoT solutions based on the PIC® microcontroller architecture using Wi-Fi® technology. It is designed to demonstrate
that the design of a typical IoT application can be simplified by partitioning the problem into three blocks:
• Smart - represented by the PIC24FJ128GA705 microcontroller
• Secure - represented by the ATECC608A secure element
• Connected - represented by the ATWINC1510 Wi-Fi controller module
The PIC-IoT Wx Development Board features the following elements:
• The on-board debugger (PKOB nano) supplies full programming and debugging support through MPLAB X IDE.
It also provides access to a serial port interface (serial to USB bridge) and one logic analyzer channel (debug
GPIO).
• The on-board debugger enumerates on the PC as a mass storage interface device for easy ‘drag and drop’
programming, Wi-Fi configuration, and full access to the microcontroller application Command Line Interface
(CLI)
• A mikroBUS™ socket allows for the ability to expand the board capabilities with the selection from 450+ sensors
and actuators options offered by MikroElektronika (www.mikroe.com) via a growing portfolio of Click boards
• A light sensor used to demonstrate published data
• Microchip MCP9808 high-accuracy temperature sensor used to demonstrate published data
• Microchip MCP73871 Li-Ion/LiPo battery charger with power path management
The Microchip Website.................................................................................................................................28
• Preconfigured for Microchip Accounts with Different Cloud Providers
– Google Cloud IoT Core
– Amazon Web Services (AWS)
• Four User LEDs
• Two Mechanical Buttons
• TEMT6000 Light Sensor
• MCP9808 Temperature Sensor
• mikroBUS Socket
• On-board Debugger
– Board identification in Microchip MPLAB X IDE
– One green board power and status LED
– Virtual serial port (USB CDC)
– One logic analyzer channel (debug GPIO)
• USB and Battery Powered
• MCP73871 Li-Ion/LiPo Battery Charger
• Fixed 3.3V
PIC-IoT Wx Hardware User Guide
Introduction
1.2 Kit Overview
The PIC-IoT Wx development board is a hardware platform to evaluate and develop IoT solutions with the Microchip
PIC24FJ128GA705 16-bit microcontroller, ATECC608A secure element, and WINC1510 Wi-Fi controller module.
The preprogrammed demo application publishes data from the on-board light and temperature sensor read by the
PIC24FJ128GA705 every second to the cloud. Any data received from the cloud over the subscribed topic is sent to
the virtual serial port and can be displayed in a serial terminal application. The WINC1510 needs a connection to a
Wi-Fi network with an internet connection. The ATECC608A is used to authenticate the hardware with the cloud to
uniquely identify every board. The demo application source code can be modified to publish data to a personal cloud
account to get started with a custom cloud application.
The figure below shows the main features and pinout of the board.
2.Open the “CLICK-ME.HTM” file on the “CURIOSITY” mass storage disk and follow the instructions.
2.1.Download the latest application .hex firmware.
2.2.Download the Wi-Fi configuration file "WIFI.cfg".
3.Drag and drop the application .hex file on the "CURIOSITY" drive.
4.Drag and drop the “WIFI.cfg” configuration file on the “CURIOSITY” drive.
The board will now connect to your Wi-Fi network and send data to the website opened in step 2 through a cloud
provider.
2.2 Design Documentation and Relevant Links
The following list contains links to the most relevant documents and software for the PIC-IoT Wx.
Getting Started
• PIC-IoT WG website- Find schematics, design files, and purchase the board. Set up for Google Cloud IoT
Core.
• PIC-IoT WG on microchipDIRECT - Purchase this board on Microchip Direct.
• PIC-IoT WA website- Find schematics, design files, and purchase the board. Set up for Amazon Web Services.
• PIC-IoT WA on microchipDIRECT - Purchase this board on Microchip Direct.
• MPLAB Data Visualizer - MPLAB Data Visualizer is a program used for processing and visualizing data. The
Data Visualizer can receive data from various sources such as serial ports and on-board debugger’s Data
Gateway Interface, as found on Curiosity Nano and Xplained Pro boards.
• MPLAB® X IDE - MPLAB X IDE is a software program that runs on a PC (Windows®, Mac OS®, Linux®) to
develop applications for Microchip microcontrollers and digital signal controllers. It is called an Integrated
Development Environment (IDE) because it provides a single integrated “environment” to develop code for
embedded microcontrollers.
• Microchip Sample Store - Microchip sample store where you can order samples of devices.
The PIC24FJ128GA705 mounted on PIC-IoT Wx is preprogrammed with an application ready to publish data to a
Microchip account with a cloud provider, and subscribe to data sent from https://pic-iot.com through the cloud
provider. PIC-IoT WA is preconfigured for Amazon Web Services (AWS), and PIC-IoT WG is preconfigured for
Google Cloud IoT Core. The data is read from the cloud and presented to the user on https://pic-iot.com.
PIC-IoT WA
The application publishes data through Amazon Web Services, and the firmware is available on GitHub: https://
The application publishes data through Google Cloud IoT Core. For in-depth information about the preprogrammed
demo application and how to develop your application, see the full PIC-IoT WG Application User Guide: https://
Any PIC-IoT Wx kit can be reprovisioned to publish data to either Microchips sandbox account at Amazon Web
Services, Microchips sandbox account at Google Cloud IoT Core, or to a personal account.
Download the IoT Provisioning Tool package, compatible with Windows, Mac and Linux to get started: https://
PIC-IoT Wx contains an on-board debugger for programming and debugging. The on-board debugger is a composite
USB device consisting of several interfaces:
• A debugger that can program and debug the PIC24FJ128GA705 in MPLAB X IDE
• A mass storage device that allows drag-and-drop programming of the PIC24FJ128GA705
• A virtual serial port (CDC) that is connected to a Universal Asynchronous Receiver/Transmitter (UART) on the
PIC24FJ128GA705, and provides an easy way to communicate with the target application through terminal
software
• A Data Gateway Interface (DGI) for code instrumentation with logic analyzer channels (debug GPIO) to visualize
program flow
The on-board debugger controls a Power and Status LED (marked PS) on the PIC-IoT Wx Board. The table below
shows how the LED is controlled in different operation modes.
Table 4-1. On-Board Debugger LED Control
Operation ModePower and Status LED
PIC-IoT Wx Hardware User Guide
Hardware User Guide
Boot Loader modeThe LED blinks slowly during power-up
Power-upThe LED is ON
Normal operationThe LED is ON
ProgrammingActivity indicator: The LED blinks slowly during programming/debugging
Drag-and-drop
programming
FaultThe LED blinks rapidly if a power Fault is detected
Sleep/OffThe LED is OFF. The on-board debugger is either in a sleep mode or powered down.
4.1.1 Debugger
The on-board debugger on the PIC-IoT Wx Board appears as a Human Interface Device (HID) on the host
computer’s USB subsystem. The debugger supports full-featured programming and debugging of the
PIC24FJ128GA705 using MPLAB X IDE.
Success:The LED blinks slowly for 2 sec.
Failure:The LED blinks rapidly for 2 sec.
This can occur if the board is externally powered.
Info: Slow blinking is approximately 1 Hz, and rapid blinking is approximately 5 Hz.
Remember: Keep the debugger’s firmware up-to-date. Firmware upgrades are done automatically when
using MPLAB X IDE.
4.1.2 Virtual Serial Port (CDC)
The virtual serial port (CDC) is a general purpose serial bridge between a host PC and a target device.
The on-board debugger implements a composite USB device that includes a standard Communications Device Class
(CDC) interface, which appears on the host as a virtual serial port. The CDC can be used to stream arbitrary data in
both directions between the host computer and the target: All characters sent through the virtual serial port on the
host computer will be transmitted as UART on the debugger’s CDC TX pin, and UART characters captured on the
debugger’s CDC RX pin will be returned to the host computer through the virtual serial port.
Figure 4-1. CDC Connection
PIC-IoT Wx Hardware User Guide
Hardware User Guide
Info: As shown in Figure 4-1, the debugger’s CDC TX pin is connected to a UART RX pin on the target
for receiving characters from the host computer. Similarly, the debugger’s CDC RX pin is connected to a
UART TX pin on the target for transmitting characters to the host computer.
4.1.2.2 Operating System Support
On Windows machines, the CDC will enumerate as Curiosity Virtual COM Port and appear in the Ports section of the
Windows Device Manager. The COM port number can also be found there.
Info: On older Windows systems, a USB driver is required for CDC. This driver is included in installations
of MPLAB X IDE.
On Linux machines, the CDC will enumerate and appear as /dev/ttyACM#.
Info: tty* devices belong to the “dialout” group in Linux, so it may be necessary to become a member of
that group to have permissions to access the CDC.
On MAC machines, the CDC will enumerate and appear as /dev/tty.usbmodem#. Depending on which terminal
program is used, it will appear in the available list of modems as usbmodem#.
Info: For all operating systems: Be sure to use a terminal emulator that supports DTR signaling. See
Section 3.1.2.4 “Signaling”.
4.1.2.3 Limitations
Not all UART features are implemented in the on-board debugger CDC. The constraints are outlined here:
• Baud rate: Must be in the range of 1200 bps to 500 kbps. Any baud rate outside this range will be set to the
closest limit, without warning. Baud rate can be changed on-the-fly.
• Character format: Only 8-bit characters are supported.
During USB enumeration, the host OS will start both communication and data pipes of the CDC interface. At this
point, it is possible to set and read back the baud rate and other UART parameters of the CDC, but data sending and
receiving will not be enabled.
When a terminal connects on the host, it must assert the DTR signal. As this is a virtual control signal implemented
on the USB interface, it is not physically present on the board. Asserting the DTR signal from the host will indicate to
the on-board debugger that a CDC session is active. The debugger will then enable its level shifters (if available), and
start the CDC data send and receive mechanisms.
Deasserting the DTR signal will not disable the level shifters but will disable the receiver so no further data will be
streamed to the host. Data packets that are already queued up for sending to the target will continue to be sent out,
but no further data will be accepted.
PIC-IoT Wx Hardware User Guide
Hardware User Guide
Remember: Set up the terminal emulator to assert the DTR signal. Without the signal, the on-board
debugger will not send or receive any data through its UART.
Tip: The on-board debugger’s CDC TX pin will not be driven until the CDC interface is enabled by the
host computer. Also, there are no external pull-up resistors on the CDC lines connecting the debugger and
the target, which means that during power-up, these lines are floating. To avoid any glitches resulting in
unpredictable behavior like framing errors, the target device should enable the internal pull-up resistor on
the pin connected to the debugger’s CDC TX pin.
4.1.2.5 Advanced Use
CDC Override Mode
In normal operation, the on-board debugger is a true UART bridge between the host and the device. However, in
certain use cases, the on-board debugger can override the basic operating mode and use the CDC TX and RX pins
for other purposes.
Dropping a text file into the on-board debugger’s mass storage drive can be used to send characters out of the
debugger’s CDC TX pin. The filename and extension are trivial, but the text file must start with the characters:
CMD:SEND_UART=
The maximum message length is 50 characters – all remaining data in the frame are ignored.
The default baud rate used in this mode is 9600 bps, but if the CDC is already active or has been configured, the
previously used baud rate still applies.
USB-Level Framing Considerations
Sending data from the host to the CDC can be done byte-wise or in blocks, which will be chunked into 64-byte USB
frames. Each such frame will be queued up for sending to the debugger’s CDC TX pin. Transferring a small amount
of data per frame can be inefficient, particularly at low baud rates, because the on-board debugger buffers frames
and not bytes. A maximum of four 64-byte frames can be active at any time. The on-board debugger will throttle the
incoming frames accordingly. Sending full 64-byte frames containing data is the most efficient method.
When receiving data on the debugger’s CDC RX pin, the on-board debugger will queue up the incoming bytes into
64-byte frames, which are sent to the USB queue for transmission to the host when they are full. Incomplete frames
are also pushed to the USB queue at approximately 100 ms intervals, triggered by USB start-of-frame tokens. Up to
eight 64-byte frames can be active at any time.
If the host (or the software running on it) fails to receive data fast enough, an overrun will occur. When this happens,
the last-filled buffer frame will be recycled instead of being sent to the USB queue, and a full frame of data will be
lost. To prevent this occurrence, the user must ensure that the CDC data pipe is being read continuously, or the
incoming data rate must be reduced.
4.1.3 Mass Storage Device
The on-board debugger includes a simple Mass Storage Device implementation, which is accessible for read/write
operations via the host operating system to which it is connected.
It provides:
• Read access to basic text and HTML files for detailed kit information and support
• Write access for programming Intel® HEX formatted files into the target device’s memory
• Write access for simple text files for utility purposes
4.1.3.1 Mass Storage Device Implementation
The on-board debugger implements a highly optimized variant of the FAT12 file system that has several limitations,
partly due to the nature of FAT12 itself and optimizations made to fulfill its purpose for its embedded application.
The Curiosity Nano USB Device is USB Chapter 9-compliant as a mass storage device but does not, in any way,
fulfill the expectations of a general purpose mass storage device. This behavior is intentional.
When using the Windows operating system, the on-board debugger enumerates as a Curiosity Nano USB Device
that can be found in the disk drives section of the device manager. The CURIOSITY drive appears in the file manager
and claims the next available drive letter in the system.
The CURIOSITY drive contains approximately one MB of free space. This does not reflect the size of the target
device’s Flash in any way. When programming an Intel® HEX file, the binary data are encoded in ASCII with
metadata providing a large overhead, so one MB is a trivially chosen value for disk size.
It is not possible to format the CURIOSITY drive. When programming a file to the target, the filename may appear in
the disk directory listing. This is merely the operating system’s view of the directory, which, in reality, has not been
updated. It is not possible to read out the file contents. Removing and replugging the board will return the file system
to its original state, but the target will still contain the application that has been previously programmed.
To erase the target device, copy a text file starting with “CMD:ERASE” onto the disk.
PIC-IoT Wx Hardware User Guide
Hardware User Guide
By default, the CURIOSITY drive contains several read-only files for generating icons as well as reporting status and
linking to further information:
• AUTORUN.ICO – icon file for the Microchip logo
• AUTORUN.INF – system file required for Windows Explorer to show the icon file
• CLICK-ME.HTM – redirect to the PIC-IoT Wx web demo application
• KIT-INFO.HTM – redirect to the development board website
• KIT-INFO.TXT – a text file containing details about the board’s debugger firmware version, board name, USB
serial number, device, and drag-and-drop support
• PUBKEY.TXT – a text file containing the public key for data encryption
• STATUS.TXT – a text file containing the programming status of the board
Info: STATUS.TXT is dynamically updated by the on-board debugger. The contents may be cached by
the OS and, therefore, do not reflect the correct status.
4.1.3.2 Configuration Words
Configuration Words (PIC® MCU Targets)
Configuration Word settings included in the project being programmed after program Flash is programmed. The
debugger will not mask out any bits in the Configuration Words when writing them, but since it uses Low-Voltage
Programming mode, it is unable to clear the LVP Configuration bit. If the incorrect clock source is selected, for
example, and the board does not boot, it is always possible to perform a bulk erase (always done before
programming) and restore the device to its default settings.
4.1.3.3 Special Commands
Several utility commands are supported by copying text files to the mass storage disk. The filename or extension is
irrelevant – the command handler reacts to content only.
Table 4-2. Special File Commands
Command ContentDescription
CMD:ERASE
CMD:SEND_UART=
CMD:RESET
Info: The commands listed here are triggered by the content being sent to the mass storage emulated
disk, and no feedback is provided in the case of either success or failure.
PIC-IoT Wx Hardware User Guide
Hardware User Guide
Executes a chip erase of the target
Sends a string of characters to the CDC UART. See “CDC Override Mode”.
Resets the target device by entering Programming mode and then exiting
Programming mode immediately thereafter. Exact timing can vary according to
the programming interface of the target device. (Debugger firmware v1.16 or
newer.)
4.1.4 Data Gateway Interface (DGI)
Data Gateway Interface (DGI) is a USB interface for transporting raw and time-stamped data between on-board
debuggers and host computer-based visualization tools. MPLAB Data Visualizer is used on the host computer to
display debug GPIO data. It is available as a plug-in for MPLAB® X IDE or a stand-alone application that can be used
in parallel with MPLAB X IDE.
Although DGI encompasses several physical data interfaces, the PIC-IoT Wx implementation includes logic analyzer
channels:
• One debug GPIO channel (also known as DGI GPIO)
4.1.4.1 Debug GPIO
Debug GPIO channels are timestamped digital signal lines connecting the target application to a host computer
visualization application. They are typically used to plot the occurrence of low-frequency events on a time-axis – for
example, when certain application state transitions occur.
The figure below shows the monitoring of the digital state of a mechanical switch connected to a debug GPIO in
MPLAB Data Visualizer.
Figure 4-2. Monitoring Debug GPIO with MPLAB Data Visualizer
Debug GPIO channels are timestamped, so the resolution of DGI GPIO events is determined by the resolution of the
DGI timestamp module.
Important: Although bursts of higher-frequency signals can be captured, the useful frequency range of
signals for which debug GPIO can be used is up to about 2 kHz. Attempting to capture signals above this
frequency will result in data saturation and overflow, which may cause the DGI session to be aborted.
4.1.4.2 Timestamping
DGI sources are timestamped as they are captured by the debugger. The timestamp counter implemented in the
Curiosity Nano debugger increments at 2 MHz frequency, providing a timestamp resolution of a half microsecond.
4.2 On-Board Debugger Connections
The table below shows the connections between the target and the debugger section. All connections between the
target and the debugger are tri-stated as long as the debugger is not actively using the interface. Hence, since there
are little contaminations of the signals, the pins can be configured to anything the user wants.
For further information on how to use the capabilities of the on-board debugger, see 4.1 On-Board Debugger
The board can be powered through the USB port or by a Li-Ion/LiPo battery. The kit contains one buck converter for
generating 3.3V for the debugger, target, and peripherals.
The maximum available current from the USB is limited to 500 mA. The current will be shared between charging the
battery (if connected) and the target application section.
Figure 4-3. Power Supply Block Diagram
PIC-IoT Wx Hardware User Guide
Hardware User Guide
4.3.2 Battery Charger
PIC-IoT Wx features an MCP73871 Li-Ion/LiPo charger and JST battery connector on board. The charger is
configured to limit the charge current to 100 mA to prevent the overcharging of small capacity batteries. Minimum
recommended battery capacity is 400 mAh.
Table 4-4. Charger Status LEDs
LEDsFunction
Red (charging)The battery is being charged by the USB
Red (discharging)The battery voltage is low. Triggers if the voltage is under 3.1V.
GreenCharge complete
Red and GreenTimer Fault. The six-hour charge cycle has timed out before the complete
4.3.3 Hardware Modifications
On the bottom side of the PIC-IoT Wx board, there are two cut-straps as shown in the figure below. These are
intended for current measurement purposes. Do not leave these unconnected as the microcontrollers might get
powered through the I/O’s.
The MCP73871 has a battery charge voltage of 4.2V. Make sure your battery has the same charge
voltage.
charge.
User Guide
DS50002964A-page 15
PIC-IoT Wx Hardware User Guide
Hardware User Guide
Figure 4-4. V
The 5V supply to the mikroBUS socket is connected by default. To remove 5V from the socket, desolder the 0-ohm
resistor (0402) below the 5V text, as shown in the figure below.
Figure 4-5. mikroBUS™ 5V Footprint
CC
4.4 Peripherals
Cut-Straps
4.4.1 PIC24FJ128GA705
Microchip’s PIC24FJ128GA705 features 128KB of ECC Flash, 16KB of RAM, and eXtreme Low Power (XLP) with 16
MIPS performance. It has 12-bit ADC at 200ksps with 14 analog inputs, and a robust set of digital communications
and timer with peripheral pin select. Within the same family, there are variants with 64KB or 256KB Flash for
applications that require more or less memory. The PIC24FJ128GA705 is available in a 48-pin package, while other
variants are available in 28-pin and 44-pin packages. The PIC24F family is ideally suited for low power IoT sensor
node applications.
4.4.2 mikroBUS™ Socket
PIC-IoT Wx features a mikroBUS Socket footprint for expanding the functionality of the development kit using
MikroElektronika Click Boards and other mikroBUS add-on boards. The socket is populated with two 1x8 2.54 mm
pitch female headers and is ready to mount add-on boards.
1) A 0-ohm resistor has been soldered to connect the VCC_MUX pin to the mikroBUS socket. If an add-on
module cannot handle 5V on this pin, the 0-ohm resistor has to be removed. For more information, see
4.3.3 Hardware Modifications.
4.4.3 WINC1510 Wi-Fi Module
Microchip's WINC1510 is a low-power consumption 802.11 b/g/n IoT module, specifically optimized for low-power IoT
applications. The module integrates Power Amplifier (PA), Low-Noise Amplifier (LNA), switch, power management,
and a printed antenna or a micro co-ax (U.FL) connector for an external antenna resulting in a small form factor
(21.7x14.7x 2.1 mm) design. It is interoperable with various vendors’ 802.11 b/g/n access points. This module
provides SPI ports to interface with a host controller.
WINC1510 provides internal Flash memory as well as multiple peripheral interfaces, including UART and SPI. The
only external clock source needed for WINC1510 is the built-in, high-speed crystal or oscillator (26 MHz). WINC1510
is available in a QFN package or as a certified module.
The communication interface between the PIC24FJ128GA705 and the WINC1510 Wi-Fi module is SPI, together with
some enable signals and interrupt. The rest of the connections are left unconnected.
The ATECC608A is a secure element from the Microchip CryptoAuthentication portfolio with advanced Elliptic Curve
Cryptography (ECC) capabilities. With ECDH and ECDSA being built right in, this device is ideal for the rapidly
growing Internet of Things (IoT) market by easily supplying the full range of security, such as confidentiality, data
integrity, and authentication to systems with MCU or MPUs running encryption/decryption algorithms. Similar to all
Microchip CryptoAuthentication products, the new ATECC608A employs ultra-secure, hardware-based cryptographic
key storage and cryptographic countermeasures that eliminate any potential backdoors linked to software
weaknesses.
ATECC608A CryptoAuthentication device on the PIC-IoT Wx board is used to authenticate the hardware with cloud
providers to uniquely identify every board.
Note: 7-bit I2C address: 0x58.
Table 4-7. ATECC608A Connections
PIC-IoT Wx Hardware User Guide
Hardware User Guide
ATECC608A Pin PIC24FJ128GA7
05 Pin
SDARB2I2C SDA2MCP9808
SCLRB3I2C SCL2MCP9808
4.4.5 Temperature Sensor
The MCP9808 digital temperature sensor converts temperatures between -20°C and +100°C to a digital word with
±0.25°C/±0.5°C (typical/maximum) accuracy.
Additional features:
• Accuracy:
– ±0.25°C (typical) from -40°C to +125°C
– ±0.5°C (maximum) from -20°C to +100°C
• User Selectable Measurement Resolution:
– 0.5°C, 0.25°C, 0.125°C, 0.0625°C
• User Programmable Temperature Limits:
– Temperature Window Limit
– Critical Temperature Limit
• User Programmable Temperature Alert Output
• Operating Voltage Range:
– 2.7V to 5.5V
• Operating Current:
– 200 μA (typical)
• Shutdown Current:
– 0.1 μA (typical)
The MCP9808 temperature sensor is connected to the PIC24FJ128GA705 through I2C and a GPIO for the userconfigurable alert output.
A TEMT6000X01 light sensor is mounted on the PIC-IoT Wx board for measuring the light intensity. The sensor is a
current source that will induce a voltage across the series resistor, which in turn can be measured by the
PIC24FJ128GA705 ADC. The current is exponentially relative to illuminance, from about 10 µA@20lx to 50
µA@100lx. The series resistor has a value of 10 kΩ.
Table 4-9. Light Sensor Connection
PIC24FJ128GA705
Pin
RB12ADC AN8—
4.4.7 LED
There are four LEDs available on the PIC-IoT Wx board that can be controlled with PWM or GPIO. The LEDs can be
activated by driving the connected I/O line to GND.
Table 4-10. LED Connections
PIC24FJ128GA705
Pin
FunctionShared Functionality
05 Pin
FunctionShared Functionality
FunctionDescription
RB4OCM2ARed LED
RC3OCM2BYellow LED
RC4OCM3AGreen LED
RC5OCM3BBlue LED
4.4.8 Mechanical Buttons
PIC-IoT Wx contains two mechanical buttons. These are generic user-configurable buttons. When a button is
pressed, it will drive the connected I/O line to ground (GND).
Info: There are no pull-up resistors connected to the generic user buttons. Remember to enable the
internal pull-up in the PIC24FJ128GA705 to use the buttons.
This equipment has been tested and found to comply with the limits for a Class B digital device, pursuant to part 15 of
the FCC Rules. These limits are designed to provide reasonable protection against harmful interference in a
residential installation. This equipment generates, uses, and can radiate radio frequency energy, and if not installed
and used in accordance with the instructions, may cause harmful interference to radio communications. However,
there is no guarantee that interference will not occur in a particular installation. If this equipment does cause harmful
interference to radio or television reception, which can be determined by turning the equipment off and on, the user is
encouraged to try to correct the interference by one or more of the following measures:
• Reorient or relocate the receiving antenna
• Increase the separation between the equipment and receiver
• Connect the equipment into an outlet on a circuit different from that to which the receiver is connected
• Consult the dealer or an experienced radio/TV technician for help
5.2 Canada
Contains IC: 20266-ATWINC1510.
This device complies with Industry Canada's license-exempt RSS standard(s). Operation is subject to the following
two conditions:
(1) This device may not cause interference, and
(2) This device must accept any interference, including interference that may cause undesired operation of the
device.
Le présent appareil est conforme aux CNR d'Industrie Canada applicables aux appareils radio exempts de licence.
L'exploitation est autorisée aux deux conditions suivantes:
(1) l'appareil ne doit pas produire de brouillage, et
(2) l'utilisateur de l'appareil doit accepter tout brouillage radioélectrique subi, même si le brouillage est susceptible
d'en compromettre le fonctionnement.
Guidelines on Transmitter Antenna for License Exempt Radio Apparatus:
Under Industry Canada regulations, this radio transmitter may only operate using an antenna of a type and maximum
(or lesser) gain approved for the transmitter by Industry Canada. To reduce potential radio interference to other users,
the antenna type and its gain should be so chosen that the equivalent isotropically radiated power (e.i.r.p.) is not
more than that necessary for successful communication.
Conformément à la réglementation d'Industrie Canada, le présent émetteur radio peut fonctionner avec une antenne
d'un type et d'un gain maximal (ou inférieur) approuvé pour l'émetteur par Industrie Canada. Dans le but de réduire
les risques de brouillage radioélectrique à l'intention des autres utilisateurs, il faut choisir le type d'antenne et son
gain de sorte que la puissance isotrope rayonnée équivalente (p.i.r.e.) ne dépasse pas l'intensité nécessaire à
l'établisse-ment d'une communication satisfaisante.
This user guide is written to provide information about the latest available revision of the board. The following
sections contain information about known issues, a revision history of older revisions, and how older revisions differ
from the latest revision.
6.1 Identifying Product ID and Revision
The revision and product identifier of the PIC-IoT Wx board can be found in two ways: Either by utilizing the MPLAB
X IDE Kit Window or by looking at the sticker on the bottom side of the PCB.
By connecting a PIC-IoT Wx to a computer with MPLAB X IDE running, the Kit Window will pop up. The first six digits
of the serial number, which is listed under kit information, contain the product identifier and revision.
Tip: The Kit Window can be opened in MPLAB® X IDE through the menu bar Window > Kit Window.
The same information can be found on the sticker on the bottom side of the PCB. Most boards will have the identifier
and revision printed in plain text as A09-nnnn\rr, where “nnnn” is the identifier, and “rr” is the revision. Boards with
limited space have a sticker with only a data matrix code, containing the product identifier, revision, and serial
number.
The serial number string has the following format:
"nnnnrrssssssssss"
n = product identifier
r = revision
s = serial number
The product identifier for PIC-IoT WG is A09-3261.
The product identifier for PIC-IoT WA is A09-3352.
6.2 PIC-IoT WG
6.2.1 Revision 3
Revision 3 of PIC-IoT WG has 5V applied to the mikroBUS socket by default (R204 is populated). It is otherwise
identical to revision 2.
6.2.2 Revision 2
Revision 2 of PIC-IoT WG is the initial released revision. R204, the 0-ohm resistor that applies 5V to mikroBUS
socket, is not populated on this revision.
6.3 PIC-IoT WA
6.3.1 Revision 1
Revision 1 of PIC-IoT WA is the initial released revision. The hardware is identical to PIC-IoT WG revision 3.
Reconfiguration of Wi-Fi credentials does not work with the application firmware preprogrammed on this revision of
the kit. Follow the instructions in 2.1 Quick Start to download and upgrade the application firmware.
Microchip provides online support via our website at http://www.microchip.com/. This website is used to make files
and information easily available to customers. Some of the content available includes:
• Product Support – Data sheets and errata, application notes and sample programs, design resources, user’s
guides and hardware support documents, latest software releases and archived software
• General Technical Support – Frequently Asked Questions (FAQs), technical support requests, online
discussion groups, Microchip design partner program member listing
• Business of Microchip – Product selector and ordering guides, latest Microchip press releases, listing of
seminars and events, listings of Microchip sales offices, distributors and factory representatives
Product Change Notification Service
Microchip’s product change notification service helps keep customers current on Microchip products. Subscribers will
receive email notification whenever there are changes, updates, revisions or errata related to a specified product
family or development tool of interest.
To register, go to http://www.microchip.com/pcn and follow the registration instructions.
Customer Support
Users of Microchip products can receive assistance through several channels:
• Distributor or Representative
• Local Sales Office
• Embedded Solutions Engineer (ESE)
• Technical Support
Customers should contact their distributor, representative or ESE for support. Local sales offices are also available to
help customers. A listing of sales offices and locations is included in this document.
Technical support is available through the website at: http://www.microchip.com/support
Microchip Devices Code Protection Feature
Note the following details of the code protection feature on Microchip devices:
• Microchip products meet the specification contained in their particular Microchip Data Sheet.
• Microchip believes that its family of products is one of the most secure families of its kind on the market today,
when used in the intended manner and under normal conditions.
• There are dishonest and possibly illegal methods used to breach the code protection feature. All of these
methods, to our knowledge, require using the Microchip products in a manner outside the operating
specifications contained in Microchip’s Data Sheets. Most likely, the person doing so is engaged in theft of
intellectual property.
• Microchip is willing to work with the customer who is concerned about the integrity of their code.
• Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code
protection does not mean that we are guaranteeing the product as “unbreakable.”
Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection
features of our products. Attempts to break Microchip’s code protection feature may be a violation of the Digital
Millennium Copyright Act. If such acts allow unauthorized access to your software or other copyrighted work, you
may have a right to sue for relief under that Act.
Legal Notice
Information contained in this publication regarding device applications and the like is provided only for your
convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with
your specifications. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER
EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION,
INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR
FITNESS FOR PURPOSE. Microchip disclaims all liability arising from this information and its use. Use of Microchip
devices in life support and/or safety applications is entirely at the buyer’s risk, and the buyer agrees to defend,
indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such
use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights unless
otherwise stated.
Trademarks
The Microchip name and logo, the Microchip logo, Adaptec, AnyRate, AVR, AVR logo, AVR Freaks, BesTime,
BitCloud, chipKIT, chipKIT logo, CryptoMemory, CryptoRF, dsPIC, FlashFlex, flexPWR, HELDO, IGLOO, JukeBlox,
KeeLoq, Kleer, LANCheck, LinkMD, maXStylus, maXTouch, MediaLB, megaAVR, Microsemi, Microsemi logo, MOST,
MOST logo, MPLAB, OptoLyzer, PackeTime, PIC, picoPower, PICSTART, PIC32 logo, PolarFire, Prochip Designer,
QTouch, SAM-BA, SenGenuity, SpyNIC, SST, SST Logo, SuperFlash, Symmetricom, SyncServer, Tachyon,
TempTrackr, TimeSource, tinyAVR, UNI/O, Vectron, and XMEGA are registered trademarks of Microchip Technology
Incorporated in the U.S.A. and other countries.
APT, ClockWorks, The Embedded Control Solutions Company, EtherSynch, FlashTec, Hyper Speed Control,
HyperLight Load, IntelliMOS, Libero, motorBench, mTouch, Powermite 3, Precision Edge, ProASIC, ProASIC Plus,
ProASIC Plus logo, Quiet-Wire, SmartFusion, SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider,
Vite, WinPath, and ZL are registered trademarks of Microchip Technology Incorporated in the U.S.A.
Adjacent Key Suppression, AKS, Analog-for-the-Digital Age, Any Capacitor, AnyIn, AnyOut, BlueSky, BodyCom,
CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, CryptoController, dsPICDEM,
dsPICDEM.net, Dynamic Average Matching, DAM, ECAN, EtherGREEN, In-Circuit Serial Programming, ICSP,
INICnet, Inter-Chip Connectivity, JitterBlocker, KleerNet, KleerNet logo, memBrain, Mindi, MiWi, MPASM, MPF,
MPLAB Certified logo, MPLIB, MPLINK, MultiTRAK, NetDetach, Omniscient Code Generation, PICDEM,
PICDEM.net, PICkit, PICtail, PowerSmart, PureSilicon, QMatrix, REAL ICE, Ripple Blocker, SAM-ICE, Serial Quad
I/O, SMART-I.S., SQI, SuperSwitcher, SuperSwitcher II, Total Endurance, TSHARC, USBCheck, VariSense,
ViewSpan, WiperLock, Wireless DNA, and ZENA are trademarks of Microchip Technology Incorporated in the U.S.A.
and other countries.
SQTP is a service mark of Microchip Technology Incorporated in the U.S.A.
The Adaptec logo, Frequency on Demand, Silicon Storage Technology, and Symmcom are registered trademarks of
Microchip Technology Inc. in other countries.
GestIC is a registered trademark of Microchip Technology Germany II GmbH & Co. KG, a subsidiary of Microchip
Technology Inc., in other countries.
All other trademarks mentioned herein are property of their respective companies.