ChipKIT Pi

chipKIT_PiMicrochip and element14 designed a very useful board which will add more power to your Raspberry Pi. The chipKIT Pi board has been developed in order to allow users to create advanced applications like touch sensing, audio processing and sophisticated control, thanks to the powerful PIC32MX250F128B. The board is compatible with Arduino and can be easily programmed with the free chipKIT™ Multi-Platform IDE (MPIDE) that can be hosted on the Raspberry Pi. The PIC32’s performance, memory and integrated peripherals are one step ahead if compared to the ones available with an Arduino board. ChipKIT Pi makes available to the user, the high-performance PIC32 MCU in a prototyping-friendly package: a low pin count SPDIP package. The board interfaces directly to the Raspberry Pi I/O Expansion header without any additional components and to the 3.3V shields made for Arduino, value choosed due to the Raspberry Pi’s processor is a 3.3V chip and its digital I/O and communications (I2C™, UART, SPI) pins require 3.3V hence no voltage level traslation is required however if you still require a voltage adaptation, you can find useful information here: The board can be used without raspberry, in stand-alone mode; for this reason there is a DC plug, useful to power the board with a power supply. The ICSP header (JP3) has been added to program the MCU using a Microchip PICkit or a ICD in-circuit debugger/programmer.

The chipKIT Pi is an open-source hardware and software solution intended for beginners and users with little or no knowledge of embedded controllers wanting to explore embedded applications. You can buy the board here:

The PCB has been designed using CadSoft Eagle, as reported on the bottom of the PCB and on the package, to be form factor compatible with existing Arduino shields:

CHIPKIT_PI_BACK_Microchip produces the best price to performance ratio 8, 16 and 32 bit microcontrollers available on the market and PIC32MX250F128B is no exception. Its main features are: 50 MHz maximum speed, 128KB Flash memory, 32K SRAM memory, USB 2.0 (host/OTG), Hardware Real-Time Clock and Calendar (RTCC), Two UART and I2C™ modules, five 16-bit Digital Timers, nine 10 bit ADC with a maximum sample rate of 1100 KSPS, on board 8 MHz and 32 KHz oscillators. Full details are available on the official page and datasheet:

Useful information about the chipKIT Pi can be found here:

and here:

where you can find the quick start guide (, the schematic ( and the raspian version which include the MPIDE:

Let’s have a look to the MPIDE:


MPIDE has been developed to support many boards, including the whole Arduino family, Microchip’s and chipKIT boards therefore the first thing to do is to make sure that the chipKIT Pi board is already selected as visibile below:


Now can start using a simple examples:

blinkblink_codeIn order to program the chipKIT Pi from MPIDE with your sketch, the board must be set to bootloader mode.

Note: to enter bootloader mode (both Jumpers JP1 and JP4 are connected to upper most pins of their header as detailed in the quick start guide):

  1. Press and hold the BOOTLOAD-EN button, while the BOOTLOAD-EN button is still pressed, press and release the RESET button.
  2. Release the BOOTLOAD-EN button.
  3. Bootloader mode will be confirmed when the TX1 LED is on and the RX1 flashes. Now you can click on the “upload” icon:blink_upload
  4. After the sketch is uploaded, the TX1 and RX1 LEDs will turn off.

When the upload will be finished, LED 1 will blink at 1 Hz and in the command bar on the bottom, you will read “Done uploading”:


We wanna thanks Microchip for their precious support: without them the review would not have been possible.


1 thought on “ChipKIT Pi

  1. Hi,

    I am trying to get the i2c to work but not successful. Can anyone share code that already proven to works on Chipkit pi?

    Best regards,
    Ahmad Sapon

Leave a Reply

Your email address will not be published. Required fields are marked *