BAMF2011: ChipKIT Is Arduino To The Power Of 32

If you’ve been hungry for more power for your microcontroller projects, but reluctant to dump your investment in Arduino shields or the libraries and community knowledge that go with them all, Digilent has you covered. Their new chipKIT boards are built around the Microchip PIC32 MCU…a powerful 32-bit chip that until recently was left out of the cross-platform scene. A majority of code and quite a number of Arduino shields will work “out of the box” with the chipKIT, and the familiar development tools are available for all three major operating systems: Windows, Mac and Linux.

We first mentioned these a couple weeks ago, but the software was unavailable at the time. Seeing the development tools in action was quite unexpected…

What’s really fascinating with chipKIT is that the workflow is exactly Arduino-like. The serial bootloader works with avrdude, and you can program both “real” Arduinos and Digilent’s 32-bit work-alikes using the exact same IDE; there’s no need to run two different IDEs for two different boards, as has been the case with Leaf Labs’ 32-bit Maple. As a demonstration, they compiled and ran code for an Arduino Mega with SparkFun LCD shield…then popped the shield off and placed it on the Max32, selected the 32-bit board in the same IDE, and repeated the process. The exact code ran on the new board/shield combo, with stunning performance — all the standard Arduino libraries have been implemented natively for the PIC32; this is not emulation.

Because Digilent didn’t just adapt the Arduino IDE to their one specific board, but rather developed a system by which the IDE can be extended to new hardware, it’s their hope that their work (not an official Arduino project) might be rolled back into the mainline code, and that other developers might jump on the bandwagon to provide Arduino IDE support for their own boards, whether they be based on AVR, PIC32 or a completely different kind of microcontroller altogether. The groundwork has been laid.

The chipKIT comes in two versions: Uno32 and Max32, similar in form factor to the Arduino Uno and Mega 2560, respectively. These can be ordered directly from Digilent’s web site, and the IDE is freely downloadable as of today. We have evaluation hardware in-hand and expect to be providing a proper review in the near future.

25 thoughts on “BAMF2011: ChipKIT Is Arduino To The Power Of 32

  1. So, now I can flash an LED once a second in *32 bit-mode?*

    Jus kiddin – looks a great move – an upwards path, for jus bout same price – well done Diligent – I’m buying.

  2. Now this is an excellent “hack”. Lets people leverage their existing investment. With this and the Maple, the move to 32-bit for everything has begun in earnest.

    @BiOzZ: Nothing’s stopping you. You want an Arduino-compatible cortex M3? Do it. Everything you need is available.

  3. @BiOzZ

    The Maple, from Leaflabs is based on a STM32F103 yet.

    @therian read this and tell me who is in religion ;-) :—-PICduino—to22611991.html

    Maple doesn’t seem to sell and I don’t know what will be the success of this one. I think there’s a simple reason. Most people using Arduino don’t need more power and it’s far more powerful when used in C instead of Arduino language. Who would do the test to toggle a pin with Arduino commands and direct register access and measure the time gain?

  4. There’s a certain degree of irony here as Microchip deliberately chose the MIPS ISA over ARM in order to facilitate vendor lock-in. Maybe they’re starting to realize that being compatible has its advantages?

  5. But can you get just the chip with the bootloader, so that you can use it in your own projects without needing the dev board? That’s one of the things I like about the arduino platform.

  6. Really? MIPS for lock-in? Citation needed. I would have guessed “dramatically lower licensing costs”. MIPS has a fine heritage being used in the Playstation 2, PSP, SGI workstations, supercomputers, …

  7. @ Pixel, Sure you can get Atmega 8, 168, or 328 with the Arduino boot-loader from places like Adafruit, Sparkfun, etc. To my knowledge no one is selling the surface mount AVRs with the boot-loader on them, admittedly I have not really looked either. I am sure someone will begin selling these two PIC32’s with the boot-loader pre installed though.

    They just opened the chipKIT forums

  8. eBay has the ATmega328 SMD with the bootloader in it. I didn’t like the price, TBH, but heck, they got it. ;-)

    I wonder about those PIC32 chips with the bootloader on it, or a way to flash them easily like with the USBtinyISP programmer. ;-)

  9. I hate to be the guy in the forums that is new to something and asks for help but i would really like to get into Arduino based projects. I’ve been doing some research and still am unsure of where a good place to start is. I’m looking for entry level stuff that would allow me to get familiar with building projects. Thanks for any help.

  10. I just got a reply from Microchip regarding Ethernet shields.

    There will be a chipKIT Ethernet shield released sometime in June. The details I have are: Ethernet PHY and transformer, USB OTG, 32 KHz oscillator, 256 Kbit I2C EEPROM, and 2 CAN interfaces

    There will also be a Basic I/O shield released around the same time. Details on it are: 4 switches, 4 buttons, I2C™ temperature sensor, 256 Kbit I2C EEPROM, 128×32 OLED display, 4 open drain channels, 1 potentiometer, and 8 LEDs

  11. @Benjamin – is an awesome Tutorial site. Besides Tronixstuff, there’s the Adafruit site, Sparkfun, and a handful of others with a few tutorials each.

    After you’ve done a few tutorials, try to adapt them. Think of interesting “cause and effects” (like putting magnets and reed switches in toys, they having Darth Vader cause a reaction from Luke…).

    For starting out, get the official Uno board because more shields (and “unofficial” libraries) will work with it. The ChipKit boards would make a fine second/upgrade board (and also – there’s plenty of projects to try, making 1 arduino communicate with another..).

  12. @Daniel The specific reason they’ve given was to differentiate themselves from all the ARM MCUs. But the only reason to have a different ISA is to make it harder for customers to switch to a different vendor.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.