Silicon Chip – May 2019

(Elliott) #1

84 Silicon chip Australia’s electronics magazine siliconchip.com.au


minimum version required to use the
Snap, so we didn’t have to install any
new software.
We then tried to program a PIC-
32MX170 chip (on a Micromite Back-
Pack), but this failed.
It turns out that the Snap Debugger/
Programmer is not capable of provid-
ing power to the target, even though
there is a checkbox for this in the pow-
er settings page.
Once we realised this, we connect
an external DC supply to the board
and were then able to program the
PIC32MX170. The programming speed
appears comparable to the PICkit 4,
which we expected based on them
using a similar SAM E70 processor.
A further peruse indicated that high-
voltage programming is not support-
ed either, which rules out its use with
many ‘legacy’ PICs such as the (still in
production) PIC16F84A.
So it seems that the main reason for
the Snap being so much cheaper is that
they’ve left off some of the features of
the PICkit, some of which are mainly
for convenience (eg, providing power
to the target processor) while others are
only needed for use with older PICs.


A closer look


On this basis, we decided to take
a closer look at Microchip’s informa-
tion sheet to see what else sets the
Snap apart from the PICkit 4. It can
be downloaded from siliconchip.com.
au/link/aanp
The manual mentions that the emer-
gency recovery jumper is unpopulated;
you activate it by shorting the header
pins, while on the PICkit 4, a tactile
button is provided for this function.
There is also a comparison table be-
tween the two programmers (see above
right). In particular, the programma-
ble power options are missing on the
Snap, as are the configurable pull-ups
for the programming pins.
There is an ‘interface comparison’
which notes that practically the same
programming interfaces are available,
with the proviso that only the low volt-
age version is available for some chips.
It also confirms that there is no pro-
grammer-to-go feature, and that the
Snap is not intended to be a produc-
tion programmer, while the PICkit 4 is.
The PICkit 4 is also claimed to support
all Microchip flash-based MCUs, while
the Snap supports most.
This is slightly vague, but makes it
clear that the Snap is not a direct sub-


Using the IPE (integrated programming environment) version 5.05 with the Snap
programmer. It looks similar to when using the PICkit 4; in fact, the only visible
difference is the programmer name.

stitute for the PICkit 4.

Take it for a spin
Once we’d cleared up the issue of
powering the target, we tried a few
programming and debugging exercis-
es using many PIC32 devices, includ-
ing PIC32MX170s and PIC32MX470s
in various Micromites, as well as the
PIC32MX270 in the February 2019
USB Mouse and Keyboard Inter-
face for Micros (siliconchip.com.au/
Article/11414).
The speed of working with Snap
seemed to be on par with the PIC
kit, so if you only need to work with
PIC32 devices, the Snap could be a
good choice. We checked the device
support list for MPLABX 5.10, and it
appears that the Snap now supports
most (but not quite all) PIC32 devices
to some extent.

Programming 8-bit & 16-bit PICs
Next, we tried the PIC16F1455,
which has appeared most notably in
the May 2017 Microbridge project
(siliconchip.com.au/Article/10648)
and as the USB/serial interface of the

Micromite Backpack V2 (May 2017;
siliconchip.com.au/Article/10652)
and the USB Digital Interface Module
(November 2018; siliconchip.com.au/
Article/11299).
Initially, we tried a chip that had al-
ready been programmed for the Digital
Interface Module, but could not get the
Snap to communicate with it. Using a
PICkit 4, we found that the LVP (low
voltage programming) option on that
chip had been disabled.
After using the PICkit 4 to reset this,
we found that Snap could happily read
and program the 16F1455. As noted
earlier, the Snap cannot do high-volt-
age programming.
Other 8-bit PICs such as the 12F617
and 16F84 require high voltage pro-
gramming, so we did not try to pro-
gram these. As expected, the device
support list (for both MPLABX 5.05
and 5.10) indicates that these devices
are not supported by the Snap tool.

Give me power
We note that the Snap board has
pads for 3.3V, 5V and GND easily ac-
cessible, so it may be possible to rig
Free download pdf