Kinetis ARM Cortex M4 DIY Board for $5

I love the Freedom boards, like the most recent FRDM-KL46Z for about US$15. But if I think that the ‘Freedom’ board is to big, cost too much and has too much on it, then here is one which is built for only US$5 :-): The MC HCK (pronounced “McHack”):

Basically it is a PCB board which I can build and assemble myself with SMD components (some soldering skills required). It plugs directly into a USB port, but can be powered from batteries too.

💡 With the USB connector, the board can run a bootloader or a DFU updater. I’m only wondering how they managed to get USB without the usual needed external crystal for Freescale USB microcontrollers? According to a comment on Hack-a-Day “it works”, but not sure how reliable’?

It is very versatile, and you can populate it with your own parts as desired: SPI or I2C external memory, LiPo charger, regulators, or even the nRF24L01 I used here.

It is an open source project: The Wiki and blog pages have all the information needed, and sources are on GitHub.

A Freescale Kinetis K20 (ARM-Cortex M4) in QFP48 package can be put on the board. There is no SWD/JTAG header on the board, so you need to pre-program the microprocessor or use an adapter to the SWD pins. The Bus Master or Bus Pirate can be used for this (see this Wiki).

In summary: this is really an interesting low-cost project. With the low-cost, the versatility and the simplicity of this board I can imagine that it will be used for many projects.

Happy HCKing 🙂

11 thoughts on “Kinetis ARM Cortex M4 DIY Board for $5

    • Hi Bill,
      thanks for sharing the pictures! I wish the JS16 would have been that powerful as an ARM M4 today. I used the JS16 in only one project: USB was great, but I would have needed more RAM. The JM60 changed this which I still use in some of my designs.

      Like

      • Yup, the JS16 is nice because it was easier to solder, and it is 5V. But RAM is in short supply. Not really intended for very complex applications. I played with JM60 a bit. But immediately jumped to the MCF51JM128. More elbow room.

        I did another project that used the JS16. It is an OBD-II interface.

        Like

        • Yes, I’m using the MCF51JM128 too, especially as with it I can run USB Host (HID) applications. I have seen the JS16 as well as BDM programming device.

          Like

      • A really nice chip for hobby use is the Microchip PIC32MX250F12B. 32-bit CPU (MIPS based, if I remember correctly), 28-pin skinny DIP package. 128K Flash and 32K RAM. Most I/O pins can be remapped, and 5V tolerant. I played with it some for a project but never got past the breadboard stage. Unfortunately the Microchip MPLAB-X toolchain is horribly buggy, and the PICkit3 (low cost) programmer/debugger pod is *very* slow. Single stepping over a line of source code takes several seconds and forget examine contents of variables unless you have a lot of time on your hands. I got disgusted with the tools and gave up. I decided you only have to solder a chip once, but we spend all day with these software tools.

        Like

        • I think in todays domination of ARM cores, with the right software and tools approach, it is much easier to change the silicon than to change the software architecture. I feel the silicon release cycles get shorter and shorter (with even more revisions), while developing solid firmware gets longer and longer.

          Like

    • I hope I’m not over-doing it today with posts. Here’s another general purpose board I made up in 2011. It uses the MCF51AC256. I dumped the JM128 and went to the AC256 to get more memory but lost on-chip USB. Had to use an external FTDI USB chip as a result. Included SD card socket, external (big) SPI EEPROM chip, and voltage regulator on the bottom side.

      http://www.wrljet.com/micros/MCF51AC256/

      Like

  1. Hi Erich,

    It is an open source project like Arduino? I mean people can make it and sell it without license. And there is a repo of mchck in your github account. So you are also running mchck?

    Like

    • Hi Allan,
      yes, everything is open source. But you need to check the licensing terms. As it is for now it is using a GPLv3 license (and not a LGPL one). This means, if you link software with proprietary code, you need to publish it.

      Like

Leave a reply to Erich Styger Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.