Skip to content
CEC Semester Twenty Two 2022

IoT Device Prototyping with Microchip Curiosity Development Boards

Fred Eady -
Owner, EDTP Electronics Inc. and Principal Engineer, Ongoing Systems LLC.
December 12,
2022
Curiosity Firmware Development Using the CCS C Compiler
The CCS C Compiler was the first C compiler introduced to exclusively support Microchip PIC microcontrollers. The latest version of the CCS C Compiler is made up of a C-Aware IDEbuilt-in functionsdevice librariesand example programs. The C-Aware features include a Project Wizard and a BLE application development helper. The content of today's lecture will focus on using the Project Wizard to generate an EUSART driveran I2C driverand a SPI driver. The target PIC microcontroller mounted on our Curiosity Development Boarda PIC16F1619contains a High-Endurance Flash cell. We will also call upon the resources of the Project Wizard to configure and activate the PIC16F1619's High-Endurance Flash. The CCS C Compiler is capable of running under the control of the Microchip MPLABX IDE. The final phase of today's lecture will demonstrate how to generate PIC16F1619 firmware using a combination of MPLABX and the CCS C Compiler Project Wizard.
Course Resources
Special Educational Materials
Simplify Motion Detection Using the ATtiny1627 Curiosity Nano - Article
Microchip's Curiosity Development Board - Another Geek Moment Product Preview - Video
How to Quickly Create AWS Cloud-Controlled IoT Endpoints - Article
Microchip Curiosity HPC Development Board - Blog
December 12,
2022
Curiosity Firmware Development Using the CCS C Compiler
The CCS C Compiler was the first C compiler introduced to exclusively support Microchip PIC microcontrollers. The latest version of the CCS C Compiler is made up of a C-Aware IDEbuilt-in functionsdevice librariesand example programs. The C-Aware features include a Project Wizard and a BLE application development helper. The content of today's lecture will focus on using the Project Wizard to generate an EUSART driveran I2C driverand a SPI driver. The target PIC microcontroller mounted on our Curiosity Development Boarda PIC16F1619contains a High-Endurance Flash cell. We will also call upon the resources of the Project Wizard to configure and activate the PIC16F1619's High-Endurance Flash. The CCS C Compiler is capable of running under the control of the Microchip MPLABX IDE. The final phase of today's lecture will demonstrate how to generate PIC16F1619 firmware using a combination of MPLABX and the CCS C Compiler Project Wizard.
Course Resources
Special Educational Materials
Simplify Motion Detection Using the ATtiny1627 Curiosity Nano - Article
Microchip's Curiosity Development Board - Another Geek Moment Product Preview - Video
How to Quickly Create AWS Cloud-Controlled IoT Endpoints - Article
Microchip Curiosity HPC Development Board - Blog
December 13,
2022
Curiosity Firmware Development Using the Microchip XC8 Compiler
XC8 is a free-for-the-download C compiler targeting Microchip's family of 8-bit microcontrollers. Today we will code the drivers for a pair of Reyax RYLR890 LoRa data radios. The target host hardware for today consists of a couple of Microchip Curiosity Development Boards (DM164137) loaded with 8-bit PIC microcontrollers and RYLR890 LoRa data radios.
Course Resources
Special Educational Materials
Simplify Motion Detection Using the ATtiny1627 Curiosity Nano - Article
Microchip's Curiosity Development Board - Another Geek Moment Product Preview - Video
How to Quickly Create AWS Cloud-Controlled IoT Endpoints - Article
Microchip Curiosity HPC Development Board - Blog
December 13,
2022
Curiosity Firmware Development Using the Microchip XC8 Compiler
XC8 is a free-for-the-download C compiler targeting Microchip's family of 8-bit microcontrollers. Today we will code the drivers for a pair of Reyax RYLR890 LoRa data radios. The target host hardware for today consists of a couple of Microchip Curiosity Development Boards (DM164137) loaded with 8-bit PIC microcontrollers and RYLR890 LoRa data radios.
Course Resources
Special Educational Materials
Simplify Motion Detection Using the ATtiny1627 Curiosity Nano - Article
Microchip's Curiosity Development Board - Another Geek Moment Product Preview - Video
How to Quickly Create AWS Cloud-Controlled IoT Endpoints - Article
Microchip Curiosity HPC Development Board - Blog
December 14,
2022
Constructing a 32-bit Wi-Fi Node Using the PIC32MM USB Curiosity Development Board
The PIC32MM family of 32-bit microcontrollers are a click below full-blown PIC32 devices and distant cousins to ARM Cortex microcontrollers. In other wordsPIC32MM devices are perfect for applications that need a bit more horsepower than an 8-bit PIC but not as much umph as an entry-level ARM Cortex microcontroller. The goal of today's lecture is to load up our PIC32MM USB Curiosity Development Board with an ATWINC1500 Wi-FI module and write some code to put the ATWINC1500 through its paces. By the end of today's lecturewe will use MPLAB Xthe XC32 C Compilerand the Microchip Code Configurator to assemble code that will query and set the ATWINC1500's internal data areas. Using the same Microchip firmware development toolswe will also code functions to generate TCP/IP-based data exchange via client and server nodes.
Course Resources
Special Educational Materials
Simplify Motion Detection Using the ATtiny1627 Curiosity Nano - Article
Microchip's Curiosity Development Board - Another Geek Moment Product Preview - Video
How to Quickly Create AWS Cloud-Controlled IoT Endpoints - Article
Microchip Curiosity HPC Development Board - Blog
December 14,
2022
Constructing a 32-bit Wi-Fi Node Using the PIC32MM USB Curiosity Development Board
The PIC32MM family of 32-bit microcontrollers are a click below full-blown PIC32 devices and distant cousins to ARM Cortex microcontrollers. In other wordsPIC32MM devices are perfect for applications that need a bit more horsepower than an 8-bit PIC but not as much umph as an entry-level ARM Cortex microcontroller. The goal of today's lecture is to load up our PIC32MM USB Curiosity Development Board with an ATWINC1500 Wi-FI module and write some code to put the ATWINC1500 through its paces. By the end of today's lecturewe will use MPLAB Xthe XC32 C Compilerand the Microchip Code Configurator to assemble code that will query and set the ATWINC1500's internal data areas. Using the same Microchip firmware development toolswe will also code functions to generate TCP/IP-based data exchange via client and server nodes.
Course Resources
Special Educational Materials
Simplify Motion Detection Using the ATtiny1627 Curiosity Nano - Article
Microchip's Curiosity Development Board - Another Geek Moment Product Preview - Video
How to Quickly Create AWS Cloud-Controlled IoT Endpoints - Article
Microchip Curiosity HPC Development Board - Blog
December 15,
2022
AVR-IoT Cellular Mini Primer
The AVR-IoT Cellular Mini is not billed as an official Curiosity Development Board. Howeverit's red and looks like a Curiosity Development Board. The AVR-IoT Cellular Mini even has a built-in programmer/debugger like a Curiosity Development Board. The only thing that the AVR-IoT Cellular Mini does not have in common with the Curiosity Development Boards weve been working with so far is that the AVR-IoT Cellular Mini's firmware is generated using Arduino. Sofrom where we standthe AVR-IoT Cellular Mini is indeed a member of the Curiosity Development Board family. This lecture will focus on the AVR-IoT Cellular Mini hardware and the Arduino code that makes up the functions contained within the AVR-IoT Cellular Mini's API. During the course of today's discussionwe will assemble a firmware development environment based on Arduino and AVR-IoT Cellular Mini Arduino libraries that runs under the supervision of Visual Studio Code. Following the successful implementation of the Visual Studio Code/Arduino firmware development environmentwe will apply the AVR-IoT Cellular Mini API calls to some example codewhich we will write using Arduino.
Course Resources
Special Educational Materials
Simplify Motion Detection Using the ATtiny1627 Curiosity Nano - Article
Microchip's Curiosity Development Board - Another Geek Moment Product Preview - Video
How to Quickly Create AWS Cloud-Controlled IoT Endpoints - Article
Microchip Curiosity HPC Development Board - Blog
December 15,
2022
AVR-IoT Cellular Mini Primer
The AVR-IoT Cellular Mini is not billed as an official Curiosity Development Board. Howeverit's red and looks like a Curiosity Development Board. The AVR-IoT Cellular Mini even has a built-in programmer/debugger like a Curiosity Development Board. The only thing that the AVR-IoT Cellular Mini does not have in common with the Curiosity Development Boards weve been working with so far is that the AVR-IoT Cellular Mini's firmware is generated using Arduino. Sofrom where we standthe AVR-IoT Cellular Mini is indeed a member of the Curiosity Development Board family. This lecture will focus on the AVR-IoT Cellular Mini hardware and the Arduino code that makes up the functions contained within the AVR-IoT Cellular Mini's API. During the course of today's discussionwe will assemble a firmware development environment based on Arduino and AVR-IoT Cellular Mini Arduino libraries that runs under the supervision of Visual Studio Code. Following the successful implementation of the Visual Studio Code/Arduino firmware development environmentwe will apply the AVR-IoT Cellular Mini API calls to some example codewhich we will write using Arduino.
Course Resources
Special Educational Materials
Simplify Motion Detection Using the ATtiny1627 Curiosity Nano - Article
Microchip's Curiosity Development Board - Another Geek Moment Product Preview - Video
How to Quickly Create AWS Cloud-Controlled IoT Endpoints - Article
Microchip Curiosity HPC Development Board - Blog
December 16,
2022
Coding the PIC32CM MC Curiosity Nano Evaluation Kit Using Harmony v3
Today's spotlight is shared by an ARM Cortex M0+ PIC32CM1216MC00032 microcontroller and the Harmony v3 firmware development application. Harmony v3 runs under the control of MPLAB X and uses the Microchip XC32 C Compiler. The first order of business will be to install Harmony v3 and all of the necessary supporting applications. The remainder of the lecture time will be spent creating Harmony v3-generated code that will be used to exercise the hardware resources of the PIC32CM MC Curiosity Nano Evaluation Kit. To eliminate having to perform point-to-point wiring between the PIC32CM MC Curiosity Nano Evaluation Kit and targeted external deviceswe will mount our PIC32CM MC Curiosity Nano Evaluation Kit on a Microchip Curiosity Nano Base for Click Boards.
Course Resources
Special Educational Materials
Simplify Motion Detection Using the ATtiny1627 Curiosity Nano - Article
Microchip's Curiosity Development Board - Another Geek Moment Product Preview - Video
How to Quickly Create AWS Cloud-Controlled IoT Endpoints - Article
Microchip Curiosity HPC Development Board - Blog
December 16,
2022
Coding the PIC32CM MC Curiosity Nano Evaluation Kit Using Harmony v3
Today's spotlight is shared by an ARM Cortex M0+ PIC32CM1216MC00032 microcontroller and the Harmony v3 firmware development application. Harmony v3 runs under the control of MPLAB X and uses the Microchip XC32 C Compiler. The first order of business will be to install Harmony v3 and all of the necessary supporting applications. The remainder of the lecture time will be spent creating Harmony v3-generated code that will be used to exercise the hardware resources of the PIC32CM MC Curiosity Nano Evaluation Kit. To eliminate having to perform point-to-point wiring between the PIC32CM MC Curiosity Nano Evaluation Kit and targeted external deviceswe will mount our PIC32CM MC Curiosity Nano Evaluation Kit on a Microchip Curiosity Nano Base for Click Boards.
Course Resources
Special Educational Materials
Simplify Motion Detection Using the ATtiny1627 Curiosity Nano - Article
Microchip's Curiosity Development Board - Another Geek Moment Product Preview - Video
How to Quickly Create AWS Cloud-Controlled IoT Endpoints - Article
Microchip Curiosity HPC Development Board - Blog
Instructor
Fred Eady
Owner, EDTP Electronics Inc. and Principal Engineer, Ongoing Systems LLC.

Fred Eady is the owner of EDTP Electronics Inc. and is the principal engineer at the Georgia branch of Ongoing Systems LLC. EDTP Electronics was established in 1988. In the meantime, Fred has written thousands of magazine articles. He has written for all of the major electronic magazines, including Radio Electronics, Electronics Now, Nuts and Volts, Servo, MicroComputer Journal, and Circuit Cellar. Fred has even done a few short feature articles for Design News. To date, he has authored four books and contributed to a fifth. He currently works as a PIC microcontroller consultant and is a Microchip Authorized Design Partner. Fred’s expertise also extends into the ARM community where he is a hardware and firmware design consultant. His customers include aerospace companies, machine shops, specialty startup companies, medical machine manufacturers, coin-operated device businesses, and various other research and development companies. He has a very close working relationship with Microchip Technology, the manufacturer of PIC microcontrollers, and has taught multiple Ethernet and WiFi classes at Microchip's annual Masters Conference.