Phillip Pearson - web + electronics notes

tech notes and web hackery from a new zealander who was vaguely useful on the web back in 2002 (see: python community server, the blogging ecosystem, the new zealand coffee review, the internet topic exchange).

Getting back into electronics - playing with ARM Cortex-M chips

… and shaking the cobwebs off this blog, apparently. It’s been a LONG while.

So I used to be an electrical engineer, until I joined the social media dev world in 2005, and I’ve been meaning to get back into electronics ever since. I finally half did it in 2012, making my matrix display, which was super fun, and keeps giving back — I’ve brought it to Burning Man twice, the Lunacy festival, the Lucidity festival, and SF’s Sea of Dreams NYE party twice. I’ve been meaning to do more microcontroller work since then, however, and I only really got into that in late 2014.

Since then I’ve been pretty busy… I counted up something like 17 circuit boards that I’ve designed between Nov 2014 and now. A bunch of random trivial boards to make connectors easier to work with (AVR ISP breakout, ARM SWD breakout, ARM SWD+UART multiplexer, FPC breakout for mini TFTs, etc), a couple of breakout boards for microcontrollers (Freescale MKE04Z8VTG4 and MKE02Z64VLD2), and a few actually interesting ones (an LED heart pendant, an 8x8 sparse - modifiable at solder time - matrix of LEDs to make a light-up birthday present for my girlfriend, a 20-LED ring, an ATMEGA328P based PWM controller for LED strips, and finally an LPC11U14 USB board, designed with Philip Lindsay).


Some of the boards I've designed since late 2014.

This all started when Philip mentioned to me that he’d been playing with NXP’s LPCXPresso LPC11U14 eval board, and I took a look at the specs and pricing on the microcontroller in question. How had I not managed to find out that ARM now made microcontrollers?! In 2012, the hobbyist world was going nuts over Arduino, which is a kinda ugly looking board combining an Atmel AVR (ATMEGA328P) MCU, a USB-to-serial adapter, and basic power stuff. Snotty EE that I am, I dismissed it out of hand due to how little it appeared to offer (why use one when I could just solder up the same thing on veroboard and use a real AVR programmer?!), failing to realize that the software support and amazing community behind the platform actually made it into the nicest hardware platform I’d ever worked with. I think I realized this after basing every custom hardware project for the next year on ATMEGA328P and ATTINY85 chips and building against the Arduino libraries… but anyway. So last year I found out that ARM made micros, and they were cheap and super high spec. Unfortunately, the “scene” seems super fragmented, unlike the AVR world, where there are basically only three chips worth considering, due to how well supported they are: ATMEGA328P (Arduino), ATTINY85 (Adafruit Trinket), and ATMEGA32U4 (Teensy).

So… for the last few months, I’ve been reading and reading and reading, and designing boards, buying chips, hacking around, and learning about the ARM Cortex-M system and its licensees by trial and error. Here’s a quick braindump:

Those are my pre-built recommendations. Now onto actual chips that I’ve been working with.

Blog comments still aren’t up and running, but if you’re reading this and have something to add, drop me a line! I’ll probably set up Disqus or something soon.

← Previous - Next →