Merging modern software development with electrons and metal
Random header image... Refresh for more!

Preview: Cortex M4 Dev Kits


My Cortex-M4 Dev Boards

My Cortex-M4 Dev Board

Over the last year or so I’ve acquired six ARM Cortex-M4 boards; I have some experiments planed for them, and hope to be able to do some write ups this fall.  Here’s a chart highlighting some of their key specifications (of course, these boards can do a lot more, such as SPI and I2C communications).

LM4F120 LP TM4C1294 LP NucleoF401 STM32F4 Discovery Micro Python Pixy
MCU LM4F120 TM4C1294 STM32 F401RE  STM32 F407VBT6  STM32 F405RG LPC4330
MHz  80  120  84  168  168 204
SRAM  32K  256K  96K  192K  192K 264K
Flash  256K  1024K  512K  1024K  1024K 1024K
Debug  Yes  Yes  Yes  Yes  No No
USB  Yes  Yes  Yes  Yes  Yes Yes
Ethernet  No  Yes  No  No  No No
microSD  No  No  No  No  Yes No
Headers 1 Booster Pack XL  2 Booster Pack XL Arduino Uno R3 plus STM Morpho STMF4 Discovery Headers Micro Python skins (planned) None
Frame work  Energia, eLua (beta) Energia, eLua (beta) mbed eLua (beta) Micro Python Pixy vision
Open Source No No No No Yes Yes
Price $13 $20 $10 $15 $40 $59

Notes on the Chart

  • Debug means built-in debug support over USB, JTAG connector, or similar.
  • USB support varies; for example, some boards include USB OTG support.
  • eLua support is probably usable, but not very polished, on the various platforms, but that’s a guess because I haven’t tried it yet.
  • Energia is a Wiring-based IDE and framework for Launch Pads that’s very similar to Arduino.
  • Prices are approximate.
  • My apologies if the chart is hard to read; I haven’t had time to update my theme to allow for wider charts.

Stellaris LM4F120 LaunchPad (Tiva TM4C123G LaunchPad)

The LM4F120 LaunchPad is no longer available; however, the Tiva TM4C123G LaunchPad is very similar (it does have a few improvements).

I bought this board when it first come out, since TI had a special offer (around $5 IIRC).

Tiva TM4C1294 LaunchPad

I bought one of this when it first came out because I’ve been waiting for a successor to the Stellaris LM3S9Bxx MCUs (which had on-chip PHY and plenty of SRAM).  Yes, I do love to buy boards before I have time to play with them…

At EE Live! 2014 these LaunchPads were the top tool swap choice.  (At the TI tool swap, TI gives you a new TI dev board in exchange for an old, non-TI board).


I wasn’t planning on picking up one of these,  but I managed to snag a free one at EE Live! 2014 from the ST  booth.  It’s definitely a very impressive board for the price

STM32F4 Discovery

I wanted a STM32F4 board with Ethernet, and had a hard time choosing between the STM4F Discovery with Base Board (which adds Ethernet and more) or the Olimex STM32-E407 (which has Olimex UEXT connectors).  I went the STM32F4 Discovery route because it seems to have better software support.


I backed the MicroPython Kickstarter project primarily because I like the Python language (and have used it on production machines), and was curious to see how much of Python’s goodness could be packed into a MCU.  As you can see, it’s a pretty tiny board.

The base Kickstarter price was about $40; when it becomes available to all, the price will probably be a bit higher.


The Pixy is primarily a machine vision system, designed to track objects and work well with Arduinos and similar systems.  However, it could be used as a pretty powerful embedded board.

I backed the Pixy because I like machine vision (I also own 5 smart cameras), I’ve wanted to play with the NXP LPC43xx MCU at the heart of the Pixy, and because I remember the Charmed Labs guys from their Nintendo hack days.

The base Kickstart price was $59; it’s currently available on Amazon for $69.


June 23, 2014   No Comments

Notes from the EE Live! 2014 Exhibition

In early April I managed to sneak off work for a day and wander down to the San Jose Convention Center for the EE Live! 2014 Exhibition (formerly known as the Embedded Systems Conference).  The ESC has had its ups and downs, going from the San Jose Convention Center (which I like a lot) to the Moscone in SF (bigger, but not better), back to the SJCC, and next year, down to the Santa Clara Convention Center (which is a pretty nice setup, but not the location for major shows).

I skipped ESC last year, so I was surprised how much the show has shrunk.  On the plus side, there was a lot of exhibition floor training sessions, and all the ones I saw were well attended.  In fact, NXP skipped the product booth and only did training.  Since I do enjoy harassing talking to sales dudes and want to encourage companies to come back, I spent most of my time at the vendor booths.  Here are my show notes, which reflect my interests (which tend towards industrial applications, MCUs, and DSPs):

  • I was surprised at the size of the x86/x64 contingent: Intel, AMD, and a trio of motherboard manufacturers (Asrock, Supermicro, and MSI).  There were also several flash vendors.
    • I have to put in a plug for ASRock, because my desktop PC has an ASRock motherboard, and when it had a minor problem (PS/2 ports quit working), ASRock’s service was quite good.  However, the industrial division is separate (and much smaller), selling compact industrial motherboards direct or through distributors such as Logic Supply.
  • TI had a pretty big booth, showing off their more embedded-oriented lines (no C6x DSPs or analog), including the BeagleBone and the various LaunchPads.
    • TI’s EE Live! 2014 videos are available on Youtube.
    • TI still did their tool swap, so I traded an old Philips 8051 CAN dev kit for a shiny new Tiva Connected LaunchPad, which I have since donated to an eLua volunteer.  TI said the Connected LaunchPad was very popular.
    • I had fun discussing industrial safety (standards, light curtains, safety PLCs, and such) with the Hercules guys – and verified that the RM48 Hercules MCUs do indeed support double precision floating point.
    • It’s always fun to see motors run, and TI was demonstrating their InstaSPIN techology with a conveyor.  I had fun complaining about too many serial encoder protocols (Biss, EnDAT. SSI, Panasonic, Tamagawa, etc).
  • Microchip had a pretty big booth, with a wide array of products.  The new PIC32MZs are pretty impressive, but what I wanted to see was their metal-over-cap button technology.  Microchip has been improving it; this year they showed off metal dome capacitive buttons (my favorite, since they had good tactile feedback) and backlit buttons.
    • Microchip App Note AN1626 [PDF] has lots of interesting information on how to design and backlight metal over cap buttons.
    • The backlit buttons were a demo of Demmel’s metalLight technology.
    • The tactile buttons were a demo of grafos steel’s Click-Inox technology.




  • ST ran a lot of in-booth seminars;  I listened to the mbed presentation for a while (and now want to learn more).  I didn’t spend much time looking at their products since I’m pretty familiar with them.
    • ST was giving out STM32F401 Nucleo boards if you were lucky enough to get a goody bag (I managed to snag the second-to-last bag).  This Nucleo includes the sweet STM32F401 MCU, Arduino headers, and mbed compatibility (SDK (Software Development Kit) and HDK (Hardware Development Kit)).
  • Atmel didn’t have a booth: instead they had their roadshow trailer.  The coolest demo was a 3D printer, powered by Atmel of course.
  • NI had a booth showing off LabView and their hardware, including a motion-and-vision demo featuring Kollmorgen drives and motors.  I spent most of my time there discussing industrial applications with a guy from Xilinx who is interested in industrial applications (such as real time Ethernet) for FPGAs.
  • I took a class from Rhode & Schwarz on oscilloscopes basics, and received a free Digital Stimulus Board for my time.  My big take-away from the class: short, good grounds are critical (long, looping ground wires can be great antennas).  Their oscilloscopes are impressive and fun to play with, but quite a bit more advanced than I need.
  • I stopped by Pico Technology briefly to see what was new.  Pico makes what are probably the highest end USB oscilloscopes.  Some of the newest models support USB 3.0.  Another series has variable resolution (you can trade slower speeds for increased resolution).  Most of them are fairly large.  I asked about USB latency; the salesman said they used some tricks, but noted that they perform a lot of processing in the scope using a FPGA, so the USB connection isn’t as critical.
  • Vision Components was showing off their OEM smart cameras, so I stopped by as always to see what was new.
  • I stopped by Acces I/O and chatted about industrial Ethernet protocols and data acquisition.  Their USB-DA12-8A is one of the more affordable options if you need a precisely timed DAC output.  And they might have some good stuff coming in the Ethernet DAQ arena.
  • I talked briefly with Sealevel Systems; they make a variety of industrial grade computers, serial interfaces, digital I/O, and analog I/O.
  • Trinamic was showing off their stepper and DC motor drive chips, boards, and enclosed drives.  Although they’re not the best fit for my current requirements, they’re worth checking out, and have some low cost models (especially for the chips and boards).  Some models support CANOpen or EtherCAT.
  • Silvertel was showing off a variety of PoE modules, with prototypes up to 200W.  They claim their module pricing is cost-competitive with rolling your own up to medium volumes (say 1000’s or 10,000’s per year).

April 23, 2014   No Comments

Interesting Microcontrollers

As I’ve mentioned before, I like to follow embedded development, but unfortunately don’t have much time to do it, either at work or at home.  There truly is an amazing number of very capable microcontrollers, such as the ST STM32F4, NXP LPC18xx, and Microchip PIC32MZ, that most don’t stand out.  However, I’d like to highlight a couple MCU families that have uncommon features:

  • TI’s Tiva TM4C129x is a typical high end ARM Cortex M4F MCU with FPU, up to 256K SRAM, up to 1M flash, and lots of connectivity and other peripherals.
    • What’s unusual?  It includes an Ethernet PHY on chip (IIRC, the only other ARM MCU with PHY was TI Stellaris LM3S9B models, which are now legacy parts.  Freescale also has some MCUs with Ethernet PHYs, such as the Coldfire MCF5223X).
  • NXP’s LPC4370 is another Cortex M4 MCU, clocked at 204MHz,  with FPU, 264K SRAM, no flash, Cortex M0 co-processor, and lots of peripherals.
    • What’s unique?  An 80M samples/sec 6-channel 12-bit ADC.  Even if the ADC isn’t as good as a dedicated ADC chip, that’s still quite impressive, especially for the price (~$10 in small quantities).
  • Freescale’s Vybrid series features a Cortex A5 at up to 500MHz, optional Cortex M4 co-processor, 1.5M SRAM, no flash, and lots of communications peripherals; a low cost dev board is available.
    • What’s unusual?  The most SRAM in an affordable (VF3xx is <$12 in 100’s) and available chip; double precision FPU is also uncommon.  (Renesas has some MCUs with 1M SRAM, with up to 10M SRAM coming, but they aren’t widely available or affordable).
  • Cypress’ PSoC 5LP is a Cortex M3 MCU with up to 64K SRAM, 256K flash, 2 1M samples/sec ADC, and a 20-bit ADC.
    • What’s unique?  Cypress’ PSoC programmable analog peripherals combined with a powerful ARM core.
  • The XMOS xCORE-XA has a Cortex M3 core, up to 192K SRAM, up to 1M flash, and a $15 dev kit that attaches to a Raspberry Pi.
    • What’s unique?  It also has 7 deterministic XMOS cores, for a total speed of 500 MIPS, which can be used to create peripherals in software.  The concept is very similar to Ubicom’s chips (Ubicom started by making the speed PIC-compatible SX chips, then created a multi-threaded (IIRC) MCU.  They went bankrupt, and IIRC, Qualcomm bought their assets), and a bit similar to the Parallax Propeller (but much faster).  Note: the dev kit uses the xCORE-Analog A8 chip with  8 xCORES, but no Cortex M3.
  • Spansion’s FM series of MCU’s are a broad range of ARM-based MCUs.
    • What’s unique?  All series include parts that can run at 2.7V to 5.5V, which is very unusual for a 32-bit MCU.

Note that the Tiva and FM series aren’t in full production yet.

December 2, 2013   3 Comments

Christmas Kit Fun

Stellaris Eval Kit box

Stellaris Eval Kit box

I now have a TI Stellaris LM3S8962 evaluation kit.  Specs include a 50MHz Cortex M3 core, 64K on chip RAM, 256K on chip flash, 10/100BaseT Ethernet with IEEE-1588 support, CAN, a 128×96 OLED, a virtual serial port (via USB), and JTAG (also via USB).   It’s pretty amazing that a commodity (<$10) MCU is much more powerful than the first personal computers such as the Apple II, Commodore 64, and CP/M systems.  (I’ve always thought it would be interesting to see how CP/M would run on a 50MHz Zilog eZ80, which should be about 200 times faster than a 4MHz Z80).

I like TI’s packaging: they stick everything into the box using two-ring CD-ROM holders.

Unboxing LM3S8962 kit

Unboxing LM3S8962 kit

Below is a picture of the board running an eLua demo program.  eLua is a reduced size version of the Lua scripting language that can run on many MCUs.

eLua on the LM3S8962 kit

eLua on the LM3S8962 kit

January 2, 2010   No Comments