ARM-BMW, The Open Hardware Cortex-M0 Development Board

[Vsergeev] tipped us about a neat Cortex-M0 based development board with a total BoM cost under $15. It’s called the ARM Bare Metal Widget (ARM-BMW), focuses on battery power, non-volatile storage and debuggability.

The chosen micro-controller is the 50MHz NXP LPC1114DH28 which provides the user with 32kB of Flash, 8kB of SRAM, a 6 channel ADC and I2C/SPI/UART interfaces among others. The ARM-BMW contains a 2Mbyte SPI flash, an I2C I/O expander, several headers for expansion/debug purposes, 4 LEDs, 2 buttons, 2 DIP switches and finally a JTAG/SWD header for flashing and debugging. As you can see in the picture above you may either populate your own HC49UP crystal or use the internal 12MHz RC oscillator.

The platform can be powered using either a USB cable or a LiPo battery. As you can guess it also includes a much-needed battery charger (the MCP73831T) and a switched capacitor DC/DC converter to supply 3.3V. You may find all the files on the hardware or software repositories.


  1. on a side note, I’m not seeing what prevents the battery from reaching 2.1V in this setup…

  2. janostman says:

    Wrong choice.
    With NXP, the LPC-8xx is better.

    Small footprint, huge power with it’s single cycle 32bit multiply.
    No external components and built in UART bootloader in ROM.

    The are rugged but I got caught by my friend Ray and fell for the Cypress PSoC-4
    That is the same ARM Cortex M0+ as the NXP but with a mini 192 macrocell PGA/CPLD onboard.

    WAYS better.

    And single chip design.

  3. lpc says:

    How about the DIP LPC1114? No need for a board at all. It comes with a built-in serial bootloader.

  4. F says:

    I do love little boards like this, but google is right, ARM is going to be marginalized until the IO is standardized. Everyone uses different serial ports, GPIO pins, etc. for everything. Heck, ST can’t even use the same pins for USB control on their own boards, and they have control over everything. You need to carry around gobs of #defines for even a trivial hello world program. If you are shopping around and comparing performance on different chips, it’s a screaming nightmare to build your code for all your targets.

    Some of you might remember the enormous amount of effort compaq made, to ensure their systems were compatible with the IBM-PC in every conceivable manner. There was a strong point to what they did and we can all be thankful that they did it. Compaq would not have succeeded if they had not insisted on 100% compatibility and asked software vendors to make custom builds for their system.

  5. tekkieneet says:

    Highly recommend getting hold of a SWD debugger one way or the other. e.g. cheap eval with onboard debugger can double as a programmer for the same chip manufacturer.
    Once you used it, you don’t want to go back to UART debugging. For bare metal programming 32-bit chip with complicated registers setup, it is almost essential.

    • for SWD newbies like me:
      Serial Wire Debug (SWD) is a ARM-only JTAG-like interface with only two pins. It’s cheap, fast, and can provide access to any number of devices through a single connection. Best, it gives “real-time access to system memory without halting the processor or requiring any target resident code”
      Thanks tekkieneet!

  6. Rollyn01 says:

    I wonder if you can replace the uC with a cpld. I know it would probably increase the cost but it would be interesting to have a development board of the same size with programmable logic.

  7. jpnorair says:

    This is nice and all, but the STM32 Nucleo boards exist, so what’s the point?

  8. Jac Goudsmit says:

    On a different side note, I’m so glad that picture has a quarter in front of it. That way, the 5 billion people in the world who have no idea how big a quarter is, can estimate its size, based on the standard 2.54mm distance on the pin header, or based on the size of the standard mini-B USB connector.

    • DigiGram says:

      I base my perception of the size of a quarter solely on this picture! Since I have mini-B USB connectors, I can determine the size of a quarter and use that for all of the Adafruit photos where they put everything behind quarters as well. It’s like me putting my PCB’s behind a R5 for comparison… Just an idea (maybe I will start doing that)

    • Les-M says:

      It’s a quarter, is it? Thanks. I still have no idea how big that is. I thought someone had just left some loose change lying around. I wouldn’t rely on looking at headers these days either – I see too many boards with 2mm, 0.05″ as well as the older 0.1″ (but I haven’t seen 0.156″ for quite a while). As for the USB connector – I can’t tell from the photo whether it’s mini or micro. I much prefer the simple inclusion of a short length of a ruler, ideally with both metric and imperial scales. Then we all know what is meant.

    • Nigel says:

      It was going to be either a quarter or a bitcoin, and at least people looking at the photo can’t steal the quarter…

    • Sheldon says:

      Unfortunately I don’t think you can even do that as I’d have thought that there is not enough to remove of the lens distortion to actually use it as a scale. I’d suggest working it from the ‘splaying out’ of the standard header pins but I can’t tell what the vertical displacement is.

      Thinking some more, if it wasn’t for the marginal shadows, it’d be possible to think that the board could be significantly further away and so extrapolate that quarters must be teeny-tiny in comparison.

  9. Bogdan says:

    This board has a way too high BOM cost. Why use a small processor with I/O expander? those expanders are expensive compared to upgrading the CPU.

    • chango says:

      If we’re playing that game, Freescale MK22DX256VLF5. Cortex-M4 50MHz, 256K flash/ 32k RAM, 29 GPIOs, USB FS device, USB and UART ROM bootloader, on-chip oscillator and LDO, $3.40 in qty100 at Mouser.

  10. Dan says:

    Perfect to pair with the ESP8266 mentioned recently,

    That would give you a complete WiFi enabled, 32 bit “thing” for $20. May need to look at power issues with that WiFi module though.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Get every new post delivered to your Inbox.

Join 96,562 other followers