encounters with electron•ics / by flabbergast

ARM breakouts

Tags: ,

A summary of hand-solderable ARM breakout boards that I’ve made over the past year (STM32F042F6P6, STM32F030F4P6, MKL27Z256VLH4).

Over the last year, I’ve moved from (mainly) ATMEL/AVR/XMEGA things towards ARM chips. For various reasons, I ended up playing with STM32F0- family chips from ST, and with Kinetis MK20- and MKL2- series chips from Freescale.

They are all low cost, mostly USB enabled ARM Cortex chips, the STM32 ones are M0, the Kinetis are either M0+ or M4. The chips’ features that matter to me presently the most are

  • USB enabled
  • crystal-less USB
  • internal voltage regulator
  • built-in bootloader
  • small hand-solderable package

The closest to all of the above comes Kinetis KL27 series; their main drawback being that the smallest available QFP-type package is LQFP-64.

Anyway, I’ve made three breakouts.

STM32F030F4P6

This chip does not have USB, but it is very small (TSSOP-20), cheap, and has an internal serial bootloader. The resulting breakout can be thus very small.

The layout is that the shorter sides of the rectange have UART and SWD pads, respectively; the long sides break out all the pins from the TSSOP-20 package. The voltage regulator is on the bottom side. There’s one LED on top.

Finally, the analogue voltage source can be filtered through a ferrite bead on the bottom side.

The two buttons are RESET and BOOT0; holding BOOT0 during a reset/powerup enters the bootloader.

Get the PCBs from OSH Park.

STM32F042FxP6

This is a very cute chip which does have USB capability, almost the same pinout and the same package as the F030F4P6. See the top photo for the top side, and size-comparison with the previous breakout. The breakout is functionally almost the same as the F030F4P6 one, except one of the short sides now carries an USB connector instead of UART pads.

The F042 series chips also comes in LQFP-32 and LQFP-48 packages, which are very easy to solder and have more pins… The only limitation is flash size (32kB max) and SRAM (6kB).

Get the PCBs from OSH Park.

MKL27ZxxxVLH4

As mentioned above, the Kinetis KL27 series chips are almost ideal for low-number-of-extra-parts USB thingies. They don’t even need an external voltage regulator, only passive parts; but they do need more of those than the STM32F042-series chips: the extras are 2 33Ohm resistors on the USB lines; the packages have 4 GND/VCC pairs (and officially all of these require a 0.1uF cap, but this is not a really strict requirement), and finally the internal regulator requires two external >=2.2uF caps.

Finally, the smallest package they come in is LQFP-64, so the resulting breakout does not break out all the pins, and is again slightly larger than the previous breakouts.

(For the bottom-side photo, see higher up.)

Again, SWD pins are broken out to pads on a shorter rectangle side, opposite to the USB connector.

A word of warning here is that this breakout will work with MKL27Z256VLH4 (256kB version) and MKL27Z128VLH4 (128kB version) from the KL27 series. It will not work with the 32kB and 65kB versions, MKL27Z32VLH4 and MKL27Z64VLH4. The latter two do not have the built-in voltage regulator. This makes them quite different from the former two. I must say that I am very puzzled by Freescale’s way of naming the chips.

Get the PCBs from OSH Park.

For all the breakouts, the EAGLE sources and png schematics are available from my github repo.