I’m preparing for the next semester at the university starting in September this year. As part of that, I’m currently evaluating the Freescale Kinetis FRDM-KL43Z board:
FRDM-KL25Z, the most popular Freedom Board?
The Freescale FRDM-KL25Z board is used a lot, including in this blog when I first used that board back in September 2012: there are plenty of tutorials available, the board has the best price/performance ratio, and students including myself really love it. Freescale has later on released other FRDM boards with better features, but in my opinion they were simply too expensive and not well supported with examples and tutorials. I have monitored my board distributors on Mouser.com and Farnell/element14, and the number of available boards and the inventory fluktuations let me believe that indeed the FRDM-KL25Z is probably a high runner for them too. The FRDM-KL46Z would have been a good sucessor of the FRDM-KL25Z, but yet again, the price/performance ratio was not matching the KL25Z board: the FRDM-KL46Z was in the >$25 range 😦
Checking recently the price point of the FRDM-KL46Z, I noticed that it was now down to CHF 19, still 50% up to the CHF 12 for a FRDM-KL25Z. But at the same price as the FRDM-KL46Z I saw that there is a FRDM-KL43Z which I had not used yet. So I ordered two boards to explore it.
Package Content
The board comes as the other FRDM boards in a card box with a Quick Reference card, without USB cables and without headers populated:
Freedom Board Comparison
The picture below shows the three boards from left to right: FRDM-KL25Z, FRDM-KL43Z and FRDM-KL46Z:
FRDM-KL25Z | FRDM-KL43Z | FRDM-KL46Z | |
Device | KL25Z128 | KL43Z256 | KL46Z256 |
Part | MKL25Z128VLK4 | MKL43Z256VLH4 | MKL46Z256VLL4 |
Package | LQFP, 80 pin | LQFP, 64pin | LQFP, 100 pin |
ARM | Cortex-M0+ | Cortex-M0+ | Cortex-M0+ |
FLASH | 128 Kbyte | 256 Kbyte | 256 Kbyte |
SRAM | 16 Kbyte | 32 Kbyte | 32 Kbyte |
Max Speed | 48 MHz | 48 MHz | 48 MHz |
Push Button | no | 2 | 2 |
Touch Slider | yes | yes | yes |
LED | RGB | Green, Red | Green, Red |
Accelerometer | MMA8451Q | MMA8451Q | MMA8451Q |
Magnetometer | no | MAG3110 | MAG3110 |
Light Sensor | no | Analog, ALS-PT19-315C/L177/TR8 | Analog, ALS-PT19-315C/L177/TR8 |
Segment LCD | no | 7-Segment, 4 digits | 7-Segment, 4 digits |
OpenSDA | P&E, V1 | P&E, V1 | P&E, V1 |
USB | yes, needs crystal | yes, crystal-less | yes, needs crystal |
ROM Bootloader | no | yes | no |
Processor Expert | full: LDD and SDK | partical: SDK only | full: LDD and SDK |
Price (CHF) | 12 | 19 | 19 |
So the FRDM-KL43Z is very similar to the FRDM-KL46Z, but around 50% more expensive than the FRDM-KL25Z.
💡 Check your local distributor prices, as I have found pricing Freedom boards very inconsistent, depending on distributor or local distributor web store!
Compared to the FRDM-KL25Z the KL43Z has more FLASH, more RAM, Magnetometer, 7-Segment LCD, push buttons and an ambient light sensor, and has a smaller package than the KL25Z (80 pins) and KL46Z (100 pins). Because of the less pins on the package, not all Arduino header pins on the side are connected.
An interesting feature I need to explore is the ROM bootloader present in the KL43Z. On the downside, the KL43Z is not fully supported any more with Processor Expert, making writing and porting applications to the KL43Z much harder or even impossible :-(.
Freescale Kinetis Design Studio Support
The FRDM-KL43Z is listed in Kinetis Design Studio, with Kinetis SDK v1.2 installed:
Processor Expert is only supported in combination with the Kinetis SDK:
So there is no LDD (Logical Device Drivers) support available for the KL43Z. That means that all the existing tutorials using Processor Expert for all the other boards will not work any more, projects cannot be easily ported and I have to start pretty much from scratch.
Summary
The FRDM-KL43Z is a new board, very comparable with the FRDM-KL46Z. On the plus side it comes with a ROM bootloader and crystal-less USB operation. On the downside I would have to rewrite all my existing applications for that new board. It is supported with Kinetis Design Studio (Segger and J-Link). So from that perspective the FRDM-KL46Z is better enabled than the KL43Z. If the price of the FRDM-KL43Z would get closer to the FRDM-KL25Z one, then the FRDM-KL43Z could be the next Freescale Freedom High-Runner board. The bit (potential) plus of the KL43Z in my view is the ROM bootloader, so I would like to explore this in one of my future articles.
Happy Evaluating 🙂
Links
- Freescale Freedom boards: http://www.freescale.com/freedom
- FRDM-KL43Z Board: http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=FRDM-KL43Z
- Freescale Kinetis Design Studio: http://www.freescale.com/kds
- Freescale Kinetis Bootloader: http://www.freescale.com/kboot
Hello Eric
Why not also check out the uTasker FRDM-KL43Z support – http://www.utasker.com/kinetis/FRDM-KL43Z.html
It allows you to simulate the SLCD: http://www.utasker.com/docs/uTasker/uTasker_SLCD.pdf
(There is a video showing it on the older K40: https://www.youtube.com/watch?v=nm2DmZv1rj8) and can be build with KDS, CW, IAR, Keil, Rowley Crossworks, Greenhills, Atollic, CooCox.
Including KBOOT serial and USB, USB-MSD, SD card, Developer’s serial loader.
In the link there is also nRF24L01+ operation with it.
The only thing I find a nuisance with the KL43 is that the I2C is now double-buffered but seems to have a nasty new bug as master because if the debugger is stopped it will continuously send clocks (forever)!
Regards
Mark
LikeLike
Hi Mark,
thanks for the links. I had looked into the uTasker project already (thanks for your great work there!). And thanks for the hint about that I2C silicon bug: I need to keep that one in mind, as it could be really nasty during development :-(.
LikeLike
Hello, a newbie here 🙂
I have a question regarding: “there is no LDD (Logical Device Drivers) support available for the KL43Z”
What limitations does it put? So far I made hello world and a simple UART program and did not encounter any difficulties. What will be hard? Can you give an example?
I just want to say now I want to connect my SSD1306 LCD to KL43Z and I hope I won’t have any problems 🙂
LikeLike
It means that you cannot use Processor Expert without the Kinetis SDK. And it means that you cannot use non-SDK functionality or components with the KL43Z. KL43Z is Kinetis SDK (plus Processor Expert).
Or in other words: if you have a project say created for the Kintis K60 or KL25Z done in the past, and now you want to move that project to the KL43Z, it means that you have pretty much to restart that project from the beginning: you cannot re-use the existing concept and components.
But as (probably) in your case, if you are starting from a blank sheet, of course you won’t see a problem (I hope).
LikeLike
Pingback: Using the Freescale Freedom (FRDM-KL43Z) to Debug other Boards | MCU on Eclipse
Pingback: Playing Tetris with a FRDM-KL43Z Board | MCU on Eclipse
Hi all
I have a problem trying to set up my FRFM-KL43Z Board for a first time, I installed Kinetis Design StudioVersion: 3.2.0 but FRFM-KL43Z is not in the board list, To solve it I’ve download SDK_1.3_FRDM-KL43Z and SDK_2.0_FRDM-KL43Z but I don’t know how to install it. Wen I try to intall the package using “Install new software” on KSD help menu, the system returns an error “SDK_2.0_FRDM-KL43Z”
Thanks for your help.
LikeLike
Hi Alvaro,
‘install new software’ is only needed for the SDK V1.3, see https://cache.nxp.com/files/soft_dev_tools/doc/support_info/KSDK13GSUG.pdf
For the SDK V2.0, you only have to specify the path to the root (manifest file), see https://mcuoneclipse.com/2016/01/29/first-nxp-kinetis-sdk-release-sdk-v2-0-with-on-demand-package-builder/. Use the ‘Browse’ button in https://mcuoneclipse.files.wordpress.com/2016/01/kinetis-sdk-2-x-project-wizard.png?w=584.
I hope this helps,
Erich
LikeLike
Thanks, It works ok with a new project.
How I can define the SDK V2.0, path when I want to work with and imported project?
LikeLike
Hi Alvaro,
the SDK v2.0 projects are using relative paths to the debug/output folder of the project. That’s why you cannot copy an example project outside the SDK dirctory structure easily, it has to be present inside the SDK to find all the SDK files.
LikeLike