This is only a preview of the September 2025 issue of Silicon Chip. You can view 42 of the 104 pages in the full issue, including the advertisments. For full access, purchase the issue for $10.00 or subscribe for access to the latest issues. Items relevant to "Power Breakout for PICkit Basic":
Articles in this series:
Items relevant to "HomeAssistant, Part 1":
Items relevant to "HomeAssistant Satellite":
Articles in this series:
Items relevant to "Ducted Heat Transfer Controller Part 2":
Items relevant to "USB-C Power Monitor, Part 2":
Purchase a printed copy of this issue for $14.00. |
Project by Tim Blythman
PICkit Basic
Power Breakout Board
The PICkit BASIC programmer/debugger is compact, robust and works with most modern
PIC chips. But it could really use the ability to provide power to the chip being programmed.
This small PCB fixes that!
Compact inline unit
Makes 5V & 3.3V available from a USB-C cable
Passes USB 2.0 data through, allowing a PICkit Basic to be connected
A
s we noted in our review of the PICkit
Basic, starting on page 33 of this
issue, it appears to be an updated version of the Snap programmer. Two of
the most obvious improvements are
the plastic case and a USB-C socket.
Like the Snap, it does not offer
high-voltage programming (HVP).
HVP involves applying 9-13V to one
of the microcontroller pins to enter
its programming mode. This was the
only way to program older chips like
the PIC16F84.
Later chips still support HVP,
but many parts now support LVP
(low-voltage programming). So you
can use the PICkit Basic to program
most PICs we have used in our projects over the last few years (plus some
other non-PIC chips).
The feature that’s most notably
absent is the ability to provide ‘target power’, to run the chip being programmed (the target). Neither the Snap
nor PICkit Basic can do this.
Both these programmers still have
a power pin. On
the PICkit Basic,
it is labelled
as Vdd or Vtg.
The programmer uses this
to check for
the presence of a
suitable
supply
LED indicators for 5V & 3.3V presence
Jumper wire for voltage selection
voltage for the selected microcontroller before communicating with it.
Programming parts out-of-circuit,
like we do for the programmed chips
we sell, can be done using a device
like our TQFP Programming Adaptors
(siliconchip.au/Article/15977). These
adaptors have separate terminals that
can be used to provide power, so it’s
not necessary for the programmer to
offer target power, although it is still
convenient that you don’t need a separate power supply.
For in-circuit programming, such as
during a project’s development or for a
part that cannot be easily programmed
out-of-circuit, it might be possible to
use the onboard power supply. However, that might not be feasible for projects powered by high voltages, such as
from the mains.
At the other extreme, some circuits
use batteries or coin cells for power.
For those cases, it makes sense to use
an external power supply to avoid
discharging the battery during development.
Thus, it often makes sense to supply
power via the programming header. So
we need a way of injecting an appropriate voltage into the Vdd/Vtg pin. Most
modern micros will happily work at
3.3V, including just about all the parts
we use these days. So we have chosen
that as one of the available voltages.
The USB cable also means that 5V is
available.
The Breakout Board replicates a handy feature
we added to our Snap programmer. The yellow
wire extracts 5V or 3.3V from suitable points
on the Snap and feeds it to the Vdd/Vtg pin
of the Snap’s programming headers, supplying
power to the connected circuit.
38
Silicon Chip
Australia's electronics magazine
In our PIC Programming Helper
project, we noted that the Snap has
pads that expose 5V and 3.3V rails.
We modified our Snap to add a threeway header socket so that these rails
can be easily accessed (June 2021;
siliconchip.au/Article/14889).
The third position of the header is
not connected to anything and provides a location for a wire in cases
where a voltage is not required. The
photo at lower left shows our modified
Snap, with one end of a jumper wire
soldered to the Snap’s Vdd/Vtg pin.
Of course, the PICkit Basic’s plastic case makes direct access to its PCB
more difficult. It does have marked
internal pads for 5V and 3.3V, but they
are not as conveniently arranged as on
the Snap. So the intent of the Power
Adaptor is to provide these power
breakouts without needing to modify
the PICkit Basic.
USB 2.0
The PICkit Basic uses only USB
full-speed (USB 2.0) communications,
although it is fitted with a USB-C connector. It makes sense to fit the Power
Breakout with a USB-C plug and socket
so that it can be connected inline, without needing an extra USB lead.
USB-C brings along with it the
delightful possibility of up to 48V
being present if a USB-PD (power
delivery) device is connected. To avoid
that, we have designed the circuitry
so that the USB-PD control lines are
not carried through. The Power Breakout makes it appear that the upstream
source is a USB 2.0 legacy 5V host by
taking over the USB-PD control lines.
This means that the Power Breakout
siliconchip.com.au
◀ Fig.1: the circuit requests and offers
a 5V legacy power source, turning
a fully featured USB-C connection
into a basic 5V USB-2.0 connection.
The regulator and capacitors derive
3.3V from the USB 5V supply, while
the LEDs and resistors act as power
indicators.
Fig.2: after soldering the USB socket
and plug, the remaining parts are
easy.
has a second use: if you have a non-
compliant device with a USB-C port
that does not get 5V power when connected via a USB-C to USB-C cable,
inserting the Power Breakout inline
will fix this.
Blocking USB-PD might seem a bit
overly cautious, but we suspect that
constructors might find other uses in
situations where devices don’t play
well with the newer features of USB-C
and power delivery.
Circuit details
Fig.1 shows the circuit; CON1 is a
USB-C receptacle. This variant sports
12 pins and breaks out power, USB 2.0
data, the CC (configuration channel)
and SBU (sideband use) pins.
CON2 is the corresponding plug,
allowing the Power Adaptor to be fitted inline. It is a nine-pin part, providing access to power, USB 2.0 data,
one SS (‘Superspeed’) pair and one CC
pin. Only one CC pin is needed, since
this is the point at which the cable orientation is detected in a USB-C cable
arrangement.
CON1’s CC pins are connected to
separate 5.1kW resistors to ground, in
the well-known legacy arrangement
that marks this as a power sink. This
means only 5V is requested from the
power source. CON2’s CC pin implements the corresponding source
arrangement, with a 56kW resistor
connecting it to Vusb.
Technically, arrangements like this
are not strictly allowed by the USB-C
specification. But since we are not
interested in higher voltages, currents
or USB data speeds, it is very unlikely
to cause any problems.
The remainder of the circuit is
straightforward. REG1 and its two
siliconchip.com.au
bypass capacitors derive 3.3V from the
nominal 5V Vusb rail. LED1 & LED2 are
connected (with dropping resistors) to
indicate that the two rails are present.
CON3 is a three-way header that
provides the same connections as our
modified Snap. One position has 5V,
one 3.3V, and the last is not connected.
CON4 is a similar three-way header,
but all pin positions are connected to
ground, in case grounds are needed.
We used a stackable header to intercept the connections for connecting
the Power Breakout to the PICkit Basic.
A jumper wire soldered to the appropriate pin allows power to be injected
when the other end of the jumper wire
is plugged into CON3. You can see this
in our photos overleaf.
If you just need 5V or 3.3V from a
USB-C cable, you could assemble the
Power Adaptor without CON2 and
break out the requisite voltages from
the pins of CON3 and CON4.
Construction
The main assembly is a PCB fitted
with small surface-mounting parts and
some fine-pitch USB connectors, as
shown in the overlay diagram, Fig.2.
The layout is fairly simple, so you
might get by using the PCB silkscreen
markings.
The pin pitch is around 0.5mm on
CON1, so you’ll need surface-mount
soldering tools and gear, including
a good magnifier. Flux paste and
solder-wicking braid are highly recommended, too. Add a thin layer of
flux to the component pads on the
PCB as you go.
Start by soldering CON1; it shouldn’t
be too hard to align correctly, since it
has locating pins. Tack one of these in
place and confirm that the leads are
centred on the pads and that the part
is flat against the PCB. Add flux to the
pads and solder the pins.
We’ve extended the pads slightly, so
you should be able to touch the iron to
the pads and see the solder flow onto
the leads. Solder the remaining locating pins and check for solder bridges
between the pins.
CON2 should be similarly easy to
locate. It has a slightly wider 0.65mm
Parts List – PICkit Basic Power Breakout
1 double-sided 42 × 14mm PCB coded 18106251
1 MCP1700T-3302E/TT 3.3V LDO regulator, SOT-23 (REG1)
2 red SMD LEDs, M2012/0805 size (LED1, LED2)
2 1μF 50V X7R M2012/0805-size SMD MLCC capacitors
1 USB 2.0 type-C receptacle (CON1) [GCT USB4105-GF-A]
1 edge-mounting USB 2.0 type-C plug (CON2)
1-2 3-way 2.54mm/0.1in pitch socket headers (CON3, CON4; optional)
1 8-way stackable header strip
1 jumper wire or similar pluggable arrangement to suit CON3
1 4cm length of 20-25mm diameter clear heatshrink tubing
a small amount of neutral-cure silicone sealant or thick glue
Resistors (all SMD M2012/0805 size, ±1% ⅛W)
1 56kW
2 5.1kW
1 1kW
1 470W
SC7512 Kit ($20 + P&P): includes all parts except the jumper wire and glue
We built some cables like
this, with five-way plug and
socket headers, to provide a
flexible connection between
our Snap and boards that
we have been developing.
Soldering an extra wire
allows the connection
to be made to the Power
Breakout.
◀
pin pitch and fewer
pins, so you can folThis header simply
low much the same
has half a jumper wire soldered to the second
process.
pin of a stackable header. The Breakout
Fit REG1 next, notBoard sits upstream of the programmer,
ing the correct orienwhile the stackable header connects
tation. Tack one lead,
downstream, to the ICSP header.
confirm the part is flat
and square and then
dry. Inspect it under a magnifier and fix
solder the remaining
any bridges or dry joints that you see.
leads. The two LEDs
Testing and completion
should be aligned with
their cathodes towards
The PCB can now be tested by plugthe ‘K’ marks on the
ging CON1 into a USB power source.
PCB. The cathode is
You should see LED1 and LED2 illuoften marked with a
minate. If you have a multimeter, you
small green dot, although
should measure close to 5V or 3.3V at
we have seen some parts
the marked pins on CON3. You can use
where the anode is
any pin of CON4 or the USB connecmarked instead.
tor shells for ground.
The remaining parts
You can also double-check that a
are not polarised. The
device can be connected downstream,
capacitors will not be marked, but forto CON2. Any USB 2.0 device should
tunately, only one value is used in this
work just as well as if it had been conproject, on either side of REG1. Fit the
nected directly with a USB-C cable.
resistors next, matching the values to
Any problems here point to a soldering
the silkscreen.
problem with CON1 or CON2.
That completes the SMD parts, so
Next, solder CON3 in place. We
clean any excess flux using an approdon’t plan to use CON4, so we left that
priate solvent and allow the PCB to
off our prototype. Cut the heatshrink
40
Silicon Chip
Australia's electronics magazine
into a piece 1cm long and another
piece 3cm long and shrink in place
on either side of CON3. Make sure to
cover CON3’s pins on the underside.
That completes the unit. You can
see from our photos that we used a
stackable header to feed power into
the downstream target. Half a jumper
wire is used to provide a pluggable
connection to CON3.
Solder the jumper wire to the second position on the stackable header.
This needs to align with the red Vdd/
Vtg markings on the PICkit BASIC, so
a red jumper wire is preferred. Follow
by adding some glue to the pins where
they join the housing of the header.
Run the glue up on the insulation of
the jumper wire as well and allow the
glue to cure.
We recommend a fairly thick geltype glue or silicone sealant, since a
thinner glue may flow into the header
housing and gum it up. This happened
to one of our prototypes.
The glue has two purposes. Since
the pins are only a press-fit into the
housing, this will stop them from
coming loose. The glue on the jumper
wire will also offer some strain relief
and prevent the wire breaking at the
solder joint.
You might also like to mark the heatshrink with the 5V and 3.3V markings
if they aren’t otherwise visible.
Using it
Plug the header and PCB into the
PICkit Basic as shown in the photos,
aligning the wire with the Vdd/Vtg
markings. Plug the jumper wire into
the 5V or 3.3V position, depending on
your needs. Most newer PIC micros
can be programmed with a 3.3V supply, so that is a fairly safe option.
Connect the header socket to the
ICSP header of the target board and plug
a USB-C cable into the PICkit Basic.
The photos show another arrangement we tried. For a while now, we
have used a short, flexible five-way
lead to provide a degree of strain relief
between our Snap programmer and target. It’s a bit less precarious than plugging the programmer directly into the
PCB and having it balance vertically.
By adding an extra orange power
wire to the assembly, we can avoid
the need to rig up the header socket.
It’s frustrating when a loose or intermittent connection causes problems,
so this eliminates a potential point
SC
of failure.
siliconchip.com.au
|