MPLAB Xpress: three new boards

Teodor Costachioiu
Aug 10, 2017 · 4 min read
Image for post
Image for post

Almost unnoticed, the range of MPLAB Xpress evaluation boards was expanded with three new development boards, all of them featuring the same unique drag-and-drop, no drivers needed, USB programmer you know from the original MPLAB Xpress board.

Unlike the first MPLAB Xpress board, the new ones come in a different shape: they are in a breadboard-friendly format, and they feature only the bare minimum: PIC microcontroller, USB programmer, reset button, and power supply. No LED’s, no extra buttons, no mikroBUS sockets.

The three new boards are device-specific. There’s an MPLAB Xpress PIC16F18345 Evaluation Board with part number DM164141. The second board is the MPLAB Xpress PIC16F18877 Evaluation Board, with part no. DM164142, while the third board is the MPLAB Xpress PIC16F15386 Evaluation Board, part number being DM164143.

The PIC16F18345 that comes with the first board belongs to the enhanced Mid-range Core with 49 Instruction, 16 Stack Levels. It has 14kb FLASH memory, 1024 bytes RAM and 256 bytes EEPROM, and it can achieve a speed of 8 MIPS, at a maximum clock frequency of 32MHz. It has a total of 18 I/O pins, of which one pin is input-only.

Image for post
Image for post
MPLAB Xpress PIC16f18345

The PIC16F18877 that comes with the second board also belongs to the enhanced Mid-range Core family. It has 56kb FLASH memory, 4096 bytes RAM and 256 bytes EEPROM. It reaches the same speed of 8 MIPS, at 32MHz. It has a total of 36 I/O pins, again with one pin being input-only. Also, it has a wider range of peripherals, including the 10-bit ADC with Computation (ADC2).

Image for post
Image for post
MPLAB Xpress — PIC16f18877

The third board has a PIC16F15386 microcontroller, also belonging to the enhanced Mid-range Core family. It has 28kb FLASH memory and 2048 bytes of RAM, with no internal EEPROM. It reaches the same speed of 8 MIPS, at 32MHz. It has a total of 44 I/O pins, one pin being input-only.

Today I have two of the boards in my office: the smaller PIC16F18345 board and the PIC16F18877 board. So let’s take a closer look at them.

Image for post
Image for post
MPLAB Xpress boards

On all these boards we have access to all the microcontroller pins, including those that are used by the programmer. So it’s our responsibility to avoid any conflicts between the onboard programmer and USB-UART bridge and whatever we might place on the breadboard.

The boards can be powered via the USB cable. The power supply is also the same: an MCP1703 linear regulator can deliver up to 250mA @ 3.3V. There’s also the possibility to configure the boards for 5V operation by moving one solder bridge. We also find one resettable fuse. However, as the schematic of the boards is not available, I have no idea of the maximum current rating.

Image for post
Image for post
MPLAB Xpress PIC16f18877 — programmer

The programmer and USB-UART bridge are implemented using one PIC16F1454, which can work with 3.3V or 5V power. The first MPLAB Xpress board was using a PIC18FL25K50, which was 3.3V only.

I have to say I like this. Being able to switch to 5V will allow me to use a lot of hardware that I have from my (5V) Arduino projects: LCDs, sensors, other stuff. Another thing that I like about these boards is the layout of the I/O pins: it matches the P-DIP version of the microcontroller.

Image for post
Image for post
Xpress board vs PDIP layout

A small nuisance is the absence of the board schematics. I don’t know how to configure the UART interfaces using the Peripheral PIN Select to work with the USB-UART bridge. A little help came from the examples provided in MPLAB Xpress, where I could find the following settings:

All the three boards come with several simple examples in MLPAB. So there’s a good starting point when programming the boards for the first time.

With a price tag of 12$ (on the new boards come with the same price as the older DM164140 Xpress board. However, note that the boards come as they are in pictures, without header pins. You have to order those, and solder them yourselves. It’s just a minor nuisance.

Overall, nice boards. Pretty cheap — way cheaper than a genuine Arduino Micro or a Nano. Works with breadboards. Easy to integrate into bigger projects. Free MPLAB Xpress IDE, with community examples. No programmer necessary. What else could anyone want?

Originally published at on August 10, 2017. Moved to Medium on May 2, 2020.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store