Thank you to KF5OBS to agree to republish his review from the FRDM-KL25Z available on his blog here
Freescale’s new low-cost development platform FRDM-KL25Z featuring Freescale Semiconductor’s ARM Cortex
-M0+ processor-based high performance, low-power Kinetis L series 32-bit MCUs has launched last Tuesday.
Let’s check it out.
The FRDM-KL25Z “Freedom” development platform is an extremely inexpensive development board with a Kinetis KL2 Family 32-bit ARMCortexTM-M0+ MCU [1]. The Kinetis L-Series MCUs promise true 32-bit performance at the price and power consumption of an 8- or 16-bit MCU.
Freescale and I tried to travel in time and present this review before the official launch last Tuesday. However, it turns out that the snail mail is not yet compatible with time travel. But the board is finally here, so let’s do it!
My Freescale FRDM-KL25Z Freedom Development Platform pre-production review sample has arrived
Please note that I am using a pre-production board for this review and the actual production board may slightly differ from this one.
Overview and Tech Specs
Before we jump right into the review, let’s have a look at the key features of the Freedom (FRDM-KL25Z) development kit. The board comes with a KL25Z128VLK4 MCU. The KL25Z128VLK4 is a Kinetis KL2 Family 32-bit ARMCortexTM-M0+ MCU with quite a bit horsepower for such a small board. Here are the tech specs for the development board:
- KL25Z128VLK4, Freescale’s ARM Cortex-M0+ based Kinetis L-Series MCU with:
- 128 KB Flash
- 16 KB SRAM
- 64 B Cache
- Maximum CPU Frequency: 48 MHz
- Real Time Clock (RTC)
- Watchdog
- 4 Channel DMA
- 12-bit DAC
- Analog Comparator (6 inputs)
- USB full-speed controller
- Low Power UART
- 2 x UART
- Capacitive Touch Sensor (16 Channels)
- 66 GPIOs
- 23 GPIOs with Interrupt
- OpenSDA–sophisticated USB debug interface
- Tri-color LED
- Capacitive touch “slider”
- Freescale MMA8451QR1MMA8451QR1 accelerometer
- Flexible power supply options
- Power from either on-board USB connector
- Coin cell battery holder (optional population option)
- 5V-9V Vin from optional IO header
- 5V provided to optional IO header
- 3.3V to or from optional IO header
- Reset button
- Expansion IO form factor accepts peripherals designed for Arduino
-compatible hardware
The FRDM-KL25Z evaluation board can be pre-ordered from Newark and is advertised for an incredibly low price of just $12.95 [2]. The microcontroller itself is available for $ 3.85 [3]per piece from the same distributor. I personally hope that Expansion IO for Arduino-compatible hardware will convince some Arduino / AVR-fans that the jump to a 32-bit ARM architecture is not at all out of their league.
Unboxing
My board came in a pre-production packaging and is therefore not representative for the production units. However, here are a few pictures:
My pre-production Freescale FRDM-KL25Z Freedom Development Platform featuring the ARM Cortex-M0+ based Kinetis L-Series MCU KL25Z128VLK4 has arrived.
Trying it on for size: Freescale FRDM-KL25Z Freedom Development Platform
The board is really compact. A little bit larger than a credit card, maybe. On the left side are the two USB Mini-B type connectors. The top one is connected to the MCU and the bottom one is used to flash the MCU and for the OpenSDA, a sophisticated USB debug interface. The expansion header seen here on the top and the bottom of the picture is not installed on the currently shipping development boards.
Bottom view of the Freedom FRDM-KL25Z
Just like the expansion IO header, the CR2032 battery holder in the top right corner is not installed in the KL25Z version currently shipped by the distributors. I heard several people complain about this but I only partially agree. If you really need the battery holder and the IO header, go ahead and order the parts together with the board from your manufacturer. You will have to solder them in yourself but it should only take a minute.
Software Installation
Before we can connect our hardware, we need to download and install the >Windows USB Driver OpenSDA Support< from P&E Micro Systems v11_120720 or later. The software is available for free and without an annoying registration form [4].
Windows USB Driver OpenSDA Support Dialog
Next, there’s a bunch of files on the element 14 server that will be needed sooner or later. I recommend downloading all the files and extracting them to a known location. The files are available from [5] after registration and log-in.
FRDM-KL25Z (freedom) related Downloads from the element 14 page
The >WINDOWS DEVICE DRIVERS.zip (1.7 MB)< contains the Windows drivers that Windows might ask for when the board is connected to the PC for the first time.
When the board is connected to the PC for the first time (2nd USB connector, bottom left), the “Windows Driver Installation” dialog will pop up and attempt to install 4 devices. A USB Composite Device, a USB Mass Storage Device and a Freescale MSD USB Device (which should all install automatically) and an OpenSDA – CDC Serial Port(requires driver). The installation of the OpenSDA – CDC Serial Port will require a driver from the >WINDOWS DEVICE DRIVERS.zip (1.7 MB)< file. Just tell Windows the location of the extracted files and let the PC pick the right file(s). The driver for theOpenSDA – CDC Serial Port is also available on the board itself.
The Driver Software Installation dialog that pops up when the development board is connected to the PC for the first time
Programming the Microcontroller
The Freescale FRDM-KL25Z development board comes pre-programmed with a very nifty OpenSDA MSD Flash Programmer application. This piece of software is simply awesome. When the board is being connected to the PC using the OpenSDA USB port, the device will act like an external USB drive. The drive will identify itself as “FRDM-KL25Z”.
The mass storage device flash programming interface identifies itself as FRDM-KL25Z thumb drive
In order to transfer a program to the MCU, all one needs to do is copy the corresponding S-record file (.s19 or .srec) “FRDM-KL25Z” drive. That is all! No special software, no hidden secrets, nothing.
Thanks to the the mass storage device flash programming interface, flashing the FRDM-KL25Z is as simple as copying a file to a thumb drive.
Example Programs
The files mentioned in the software section contain numerous different demo programs. To try them, simply copy the .srec file of the demo program onto the FRDM-KL25Z board as described above.
Here’s a short YouTube clip I shot using the demo programs >changy_rgb.srec< and>accellero_i2c_rgb.srec<: