Get ready for MPLAB Express, throw away your Arduino

I credit the maker movement with bringing electronics back from the crusty old and lonely electronics hobby back into the main stream. The Arduino is the micro of choice for this army of makers and I conceded it made sense… you install the IDE, plugged in your board into the USB port and a couple clicks later and you have an LED blinking.. the most exciting blinking LED you’d ever seen in most cases. I stuck with the PIC micros because I didn’t see any need to put back on the training wheels.

I got invited to a conference call earlier this week as they rolled out MPLAB Express. I almost passed the email up as spam, I’m glad I didn’t… a quick half hour later and I was in shock. Microchip is now relevant in the hobbyist realm.. They just leapfrogged over Arduino in usability for the beginner. They just released Microchip MPLAB Express a new, free, online cloud-IDE. Write your code (or pick a sample), press the compile button and the .hex file downloads.. DRAG AND DROP the .hex file on to the dev board. … the dev board looks like a plain flash drive… just drag and drop and the code is automatically programmed to the device… DRAG AND DROP.. brilliant.


Express Evaluation Board

I received my board today, they’re not in production quite yet but will be shortly. The board has a small programmer on board, removing your need for a PICKit programmer. The programmer is a 18LF15K50 … the onboard application device is a brand new 16F18855. The board comes with a break out of all pins and the MikroBUS standard for modules. Mikroelektronika has a ton of little add-on boards and you can certainly make your own. I suspect this board will cost about 15$ or so.. ? We will have to see when they come out.

So the details?

The online application allows you to bypass the need for MPLAB IDE and XC8 compiler installations on your local PC in trade for using a web brower on your favorite device. They mentioned it works on most common browser platforms on Windows, Mac, and Linux. They said it even works on android and iOS, … I’ll check it out on the android later.

I logged on before the webex to check out the environment found at and was initially concerned they missed the boat by not including MCC. Well it turns out MCC is available when you create a free account and logon. (Phew! Near miss Microchip!) MCC is kind of like a cheat-sheet app for settings like micro clock frequency, output setup, etc..

What I like: They’ll give you a comparison of premium optimization next to the standard free compiled version (XC8)! They also will allow you to use the premium optimization by subscription that is easy to start/stop. The price is $30/month… so if you just happened to need to squeeze your code into something you can pick up the premium optimization for a month and take it easy on Starbucks for the week and you’re a wash. I also really like that MCC is online and the programming is drag and drop on the dev board..

I have seen two people complain about how the premium XC8 compiler is not included but I have had no issues with the free version, and when you’re a hobbyist of low volume user you can usually just use the next chip size up with more flash for a dollar… I don’t have a problem paying for premium services if I want them. If you’re really hell bent on a chip spend the $30 bucks for a single month of premium use…

The dev board, I think it’s a $10-15 board but I’m get mine for free so I’m not certain.. the PIC16F18855 sits on the board and uses drag and drop programming. The device looks like a flash drive.. just drop your hex code (downloaded from the online site when compiling) and it’s programmed! Brilliant.. easier than the Arduino. Oh yeah, they even have code samples that are tried and tested ready to go with a wiki if you want to do some bathroom reading.

I plan on putting on an introduction course in my makerspace once I get my dev board… I’ll probably pick up a handful of the dev boards as well so I can give them out. If you’re local let’s meetup and try it out.



  • March 15, 2016 - 9:52 am | Permalink

    As a hobbyist, access to opensource software and hardware at as many possible levels is extremely important. That is one reason I am attracted to use the avr family of chips. I can use the free and open gcc compiler, and any editor/ide that I want to. Also, the hardware layout for arduino are opensource, so that folks can learn and modify.

    Are these opensource options available in the PIC and MPLAB scenario you are reviewing?


    • Chas
      March 15, 2016 - 10:29 am | Permalink

      Colin, the IDE is built on Netbeans OR you can use other tools from other vendors. The C compiler is not open source but it is free. When was the last time you opened the source for GCC to modify it? I appreciate open source but In this case I don’t care, at all. I care what my code looks like.. Not my compiler. I can always review the ASM if needed.

      • April 6, 2016 - 7:32 am | Permalink

        Chas, the problem with the XC8 compiler is that it is extremely buggy and poor performing, even in the paid version (unlike the compilers for their 24 series and PIC32 which are gcc-based). And there is no other compiler nor tooling available for those chips, so that the IDE is Netbeans based is very much irelevant – there is nothing else to replace it with.

        The OSS part is important when you want to run the tooling on a platform that is not supported by the manufacturer or when you want to keep old stuff working after the vendor stopped support – e.g. schools are using Arduino IDE on Raspberry Pis. Good luck doing that with MCP tooling (no compilers/IDE for ARM Linux …).

        I think MCP has good chips with a lot of interesting peripherals (AVRs feel like poor cousins compared to that), but the terrible proprietary tooling has rather pushed me over to ARMs instead.

        Seriously, the only thing somewhat relevant on these boards is the drag & drop download, but why that should be something ground breaking or a reason to drop the Arduino for beginners I somehow don’t see. With Arduino most people push a button and the code is flashed in the MCU. With this you have to first download it and then drop it on the device. So an extra step, actually … BTW, the same feature is also in MBed and quite a few other boards.

        Arduino is primarily about the newbie-friendly ecosystem anyway which MCP doesn’t have, not about flashing code by drag and drop.

  • March 16, 2016 - 8:53 am | Permalink

    I should have been more clear. My personal preference is for opensource full tool chain. This is not because I have the strong need to modify gcc. However I do read the code to gcc and many other parts of my tool chain. I am no expert in gcc, but it is a nicely laid out compiler, and I have learned a lot about target cpu architectures by studying gcc.

    So, personally, I am in it more for the learning opportunity than for any practical reasons.

    Have fun!

    • Chas
      March 16, 2016 - 9:43 am | Permalink

      Colin, fair enough. I learned assembler for the PIC line first so the architecture is very clear. My preference is obviously the PIC because of all the peripherals like CLC, which is a light CPLD kinda…the NCO, and then of couple the timers are nice with the kick ass PWM/CCP modules … I also like the MSP430 line from TI but I don’t actively use it.

  • Pingback: MPLAB Xpress First Thoughts « Adafruit Industries – Makers, hackers, artists, designers and engineers!

  • wombora
    April 7, 2016 - 12:27 am | Permalink

    Leapfrogging is a bit much said because it’s not just the online IDE, that BTW Arduino/AVR now also has, but it’s the amount of entrylevel tutorials and documentation and a big amount of libraries and even the possibility to use the arduino IDE for mor then just AVR
    There are Support files for the ESP8266

    As soon as you have the same amount of beginner documentation for PIC or even more you could start thinking about the word Leapfrogging.

    It’s not just a Board needed.

    That being said: Finally i can play around with PIC, was always a bit driven away because of the PICKit programmer and the “Horror Stories” i’ve read about it’s beginner unfriendliness

  • John U
    April 7, 2016 - 1:07 am | Permalink

    I too prefer open-source stuff purely because it can’t suddenly disappear from you behind a paywall, licence, or upgrade.

    I can see good & evil reasons for these online web-compilers, as long as they’re doing it for the good reasons then we’re cool.

    Good reasons: You can give away the dev tools free, it will work across any platform and you know it’s set up right.

    Evil reasons: Get ’em hooked then slam ’em with a paywall, get to keep all code that gets written by your users, if it looks commercial send ’em a bill, using a device we don’t want to support anymore – ha! no! denied!

    Gets bonus points for not being an arduino.

  • Leave a Reply