The battle between Teensy 3 vs MBED Freescale Freedom - who will win?

Status
Not open for further replies.
I hear you, Paul. I too have been involved with product releases ranging from the successful (helping Sub Zero build the Wolf manufacturing facility in Madison, WI and transitioning multiple product lines from drawing board to pilot production) to the not so successful (co-developing the first US outdoor gas water heater, exceeding every performance measure, costing far less than projected, etc) only to watch the client struggle on how to and eventually fail to sell the thing in appreciable quantities. There is pride in the process of creation and commercial success validates the time and energy one had invested in a given project.

That said, the Arduino project is in many ways its own worst enemy. As best as I can tell (and the analogy of the three blindfolded wise men describing an elephant to the king comes to mind here), the Arduino management team continues to largely isolate itself from the community instead of leveraging it. Management presence in the forums tends to be sparse to non-existent, as is feedback to the community when people have asked openly why, for example, your fixes to malloc.c were never implemented fully. Similarly, basic libraries continue to be buggy and people generally have better luck following their noses to experts like yourself, fatlib, gammon, etc. to find libraries that work.

So while I totally understand your point of view, Massimo and the rest of the team would do well to focus on fixing long-standing bugs in standard libraries. For example, that Strings are an official library but totally unstable is simply unacceptable. Similarly, they would have done well to follow your lead re: the ARM platform and focus on smaller chips before tackling a 100+ pin TQFP monster that was shoehorned into a Mega form factor and for whom many core hardware functionalities (such as external RAM) have been disabled by a (IMO) bungled hardware design.

For me, the 100+ pin Due platform should have been a clean sheet, new beginning - i.e. no compatibility by design with pre-existing shields to limit issues with voltage mismatches, etc. Such a clean break allows designers the freedom to create a core PCB that allows users to access all pins on the chip and take advantage of the many possibilities that such powerful chips offer. Board designs, hardware requirements, etc. have evolved - why shoehorn a current processor into an old Arduino form factor unless absolutely necessary?

I love your design because it is so compact that it is easy to breadboard, yet very powerful and embeddable. And stacking up the capabilities of the Due vs. the Teensy makes it very apparent that while the Due has some interesting features, that the Teensy runs virtual circles around it in most respects. For the price point of a due one could daisy chain multiple Teensies for the same or superior performance. My posts may have been too blunt in their assessments of the Due for Massimos taste, but I stand by those comments and he would do well to reflect on such comparisons instead of accusing me of trying to market a rivals product.

Your development of the Teensy 3.0 may very well have forced the hand of the Arduino team to release their own version of an ARM processor-based unit sooner than they were ready to. I hope the Arduino team rethinks their ARM strategy and also releases a smaller 32-bit board at a UNO price point instead of going for the largest processor that one could fit on a Mega.
 
When I made my decission towards the teensy 3.0 it was something emotionaly,... seeing the humans behind, of course the attention kickstarter brought helped me finding the way to teensy, the tiny teensy form factor a webpage which seems created by humans and not a script, the performance promises... it just seemd for me as a beginner the best choice! I like it a lot and im courious what Paul brings up in the future! :)
 
Hello
I can say that I am fairly "close" with Freescale and there is much discussion that Teensy being arduino compatible is a significant factor.
My exposure to teensy actually came from a Freescale Engineer during a training we recently attended. In comparison the Freedom board is a good board, but challenging native software support out of the box. Many have been given out and purchased, but I've only observed sucess at professional engineering companies. Processor expert and their free compiler is not particlarly friendly for noobies (yet). mBed is only a first step in Freescale trying to make this board more accessible.. I think you have a reasonable window of opportunity with Teensy.

I would like to recommend:
1) make an "arduino form factor" carrier board for Teensy.. no electronics, just form factor adaptions
2) make a KL version of teensy if you can, and quickly. You have a window of opportunity here.
 
I am using Teensy because of the big feature list, in a small size, at a good price. For my current project I need at least 7 PWM outputs, the ability to run off a single 3.7V Li-Po battery and it has to fit into a 1"-1.25" diameter tube. The Teensy family fits the bill perfectly. My application uses few computing resources during normal operation, so with the Teensy 3 there is more than enough left for me to look at adding PWM audio as well.
 
make a KL version of teensy if you can, and quickly. You have a window of opportunity here.

and make Teensy 3 xxx the same as the Freescale Freedom?
Just stirring the pot :mad:
 
Last edited:
The performance in a small package was a big draw for me. The change in form factor was not an issue in regards to not fitting shields for me. Working with other arduino boards the shields confused me more than anything because they were designed for so many boards, as a newbie you had to hope to come across documentation or forum threads that would explain if it would work well or not, or what you had to do differently. Everything has been easier to get up & running on the teensy with remarkable performance. I'd like to see a teensy 3 w/ a ribbon cable for outputs on a flexible PCB. Something like this but smaller and better: http://hackaday.com/2010/06/29/fpc-arduino/
 
I'd like to see a teensy 3 w/ a ribbon cable for outputs on a flexible PCB

something like this which is connectorized ... attached PDF :cool:
 

Attachments

  • Mini_Pics_R3.pdf
    805.3 KB · Views: 484
Excellent implementation. A great illustration of how you can take advantage of the tiny form factor and yet not lose any of the inputs.
 
There was not enough room to pick up the GPIO on the bottom or back of the Teensy 3.:(

Is said exact that MANY times while trying to fit those 14 pads on the back side and route all the traces and place vias. It was incredibly difficult, but eventually I got every trace routed, and without placing any traces on layer2 (which is a ground plane).

Still, those extra signals were chosen to be the least often needed. The ones on the outside edges have all the nice peripheral features.
 
I consider the design of the teensy 3 to be amazing. Such a large chip compared you the size of the board is an amazing achievement. IIRC, the the reason these pads came into existence in the first place was that the lower-pin count chip that Paul wanted to use did not materialize and rather than ignore pins as the Arduino team has (not all pins are broken out on the due processor!!!) he put in the sweat equity to make those pins / pads accessible for the enthusiasts.

A big tip of the hat to you!
 
make a KL version of teensy if you can, and quickly. You have a window of opportunity here.

I like to point out by switching the Teensy 3 K20 to the KL verison (low power) will reduce the output drive current in half. :(
 
From the mbed website:

All mbed-enabled hardware is supported by the mbed.org developer website, including a lightweight Online Compiler and developer tools taht work on Windows, Linux or Mac OS X.

Also included is a C/C++ SDK for productive high-level programming of peripherals. Combined with the wealth of libraries and code examples being published by the mbed community, the platform provides a productive environment for getting things done.

Is that C/C++ SDK something that was added very recently? I admit, I've never used an online dev environment, it can't be as absurd as my gut reaction says it is.
 
Is that C/C++ SDK something that was added very recently?

No. Its MBED's generic keywords and libraries just like the Arduino keywords (functions) and libraries.

I've never used an online dev environment, it can't be as absurd as my gut reaction says it is.

Its for rapid hardware and software development but its only for "on-line" use only. There are ways to export to an off-line compiler but it will cost you for an non generic compiler AND keep in mind that, with any C/C++ compiler, compiler optimization separates the expensive compilers from the inferior compilers.
 
Last edited:
Not everything Important is given in the Specs.

Teensy 3.0
Supported by Paul: YES

MBED:
Supported by Paul: NO (but he would probably help you if you asked)

My money is on Teensy 3.0...and anxiously awaiting 3.0++

Exactly, Paul never misses a beat.
 
Its for rapid hardware and software development but its only for "on-line" use only. There are ways to export to an off-line compiler but it will cost you for an non generic compiler AND keep in mind that, with any C/C++ compiler, compiler optimization separates the expensive compilers from the inferior compilers.
Ummm, just because a compiler is freely available (i.e. GCC), doesn't mean that it is inferior. Maybe it is, maybe it isn't. You have to do the benchmarking yourself. In the 25+ years that I've worked on GCC, I've had many examples where GCC produced better/faster code than the commercial compilers, and many other examples where it doesn't (and obviously I try to fix those places where I can).

What a lot of the expensive embedded environments buy you is support in case something goes wrong, better debuggers than using blinky lights or print statements, an IDE if you are into that sort of thing, libraries tuned to a given chip, etc.
:cool:
 
Hey now. The more blinky lights, the better. IMHO. :rolleyes:
However, if your blinky lights cause your Teensy to go over its power limit because you have 20 lights on all drawing power at the same time, it might not be as good.

I'm old enough that I started programming on cards, and I'm used to debug with print statements (or blinky lights), but I've seen some programmers that are lost without a full GUI debugger.
 
Ummm, just because a compiler is freely available (i.e. GCC), doesn't mean that it is inferior. Maybe it is, maybe it isn't. You have to do the benchmarking yourself.

The MBED on-line compiler must be one highly optimized compiler because others who ported to another off-line compiler did not get a good as results (RAM/Flash usage) as the on-line compiler.

There lies another problem. Switching from the on-line to off-line, the functions and libraries will not work 100% because they were constructed with the "special" MBED on-line compiler. JMHO
 
The MBED on-line compiler must be one highly optimized compiler because others who ported to another off-line compiler did not get a good as results (RAM/Flash usage) as the on-line compiler.

There lies another problem. Switching from the on-line to off-line, the functions and libraries will not work 100% because they were constructed with the "special" MBED on-line compiler. JMHO
Or the people doing the setup of the off-line compiler didn't properly tune the compiler and libraries, which is the value add that presumably the mbed team did. Tuning libraries and compiler options for a chip does involve a lot of work. Just putting on -O and hoping for the best usually does not give the best results. A lot of the value add that Paul does is such tuning of the libraries.
 
But I would avoid an on-line compiler at all costs for the simple reason that it has the same critical failure point as DRM'd games that require a online connection to function. The minute the company shuts down the server, your 'investment' is toast. Thanks but no thanks, I want the compiler to sit on my machine so I can continue to tweak / change / edit my programs as needed. There is no way I would let someone else dictate under what circumstances I get to program my little embedded controller.
 
Since I started this thread or topic then its only fair to report my "unbias" opinion using the
real MBED Freescale Freedom FRDM-KL25Z hardware and MBED's on-line software.

The other day USPS delivered Mouser's $13 (USD) Freescale Freedom FRDM-KL25Z to my doorstep. I also
bought the custom made BUD enclosure for the Freescale Freedom. The reset has to be
pressed on every download and getting to this tact switch you really had to open
this enclosure up every time? (BUD Industries should have known better with this very poor design)
They got me for $9. (USD)

Please note: BUD's enclosure does contain an external slot for the tact reset but it is so inconvenient to use
due to the fact the tac switch is at a right angle and is recessed.

OK, I have to say that MBED's on-line firmware or user application USB uploading "drag and drop" is very slick and easy to use.

There were several "pre-made" test example programs made for the on-board 3-axis accelerometer, RGB LED
and the capacitive touch sensor. Importing these test programs and uploading them all worked without
a hitch.

Ok, turning on/off LEDs is great but I need to do more than that. I inspected the MBED Web tab section
"Handbook" which contains MBED's official "sanctioned" libraries. Next up, RTOS library for the Freedom.
I imported their "thread" example and tried to compile and a slew of errors showed up.
These compiler errors have to be a mistake :confused: ... The Freescale Freedom KL25Z is being showcased by MBED!
Maybe the RTOS was made for MBED's other two microcontrollers but not the KL25Z?
In any case, MBED's RTOS is needed for proper operation of MBED's numerous other networking libraries.!
This hiccup kills any application I needed to use for the Freescale Freedom. Maybe in a year or so it
would be ready for prime time! Software that works is the key and Paul S is "superman"

Score: PJRC 1 MBED 0 :D
 
Last edited:
Customer Support

There is an MBED map that shows all the developers in the world. Very impressive.
http://mbed.org/map/

Just maybe I could get an answer to my simple question on MBED's showcase KL25z Freescale Freedom?
I figure by asking a very simple question it would be answered quickly?

My simple yes/no question to the MBED users, owners and "many" developers is this ...

"Does (MBED) RTOS works on the Freescale Freedom KL25Z?" Posted 3/22/13

This question appears 3 places on MBED's Website and there was no response for 2 days and
so far the only response was an user who also needed to know the answer to the same question!

http://mbed.org/handbook/mbed-FRDM-KL25Z-Examples
http://mbed.org/questions/
http://mbed.org/forum/mbed/topic/4345/

On this forum board most simple Teensy 3 questions are answered in a timely fashion.
Unless Paul "S" came in contact with "Kryptonite", most (easy) questions are answered.
Heck, even the "spammers" will answer my questions on this forum board!

Customer Support
Score: PJRC 2 MBED 0 :D


Update ... I got a response

It appears that support isn't quite there yet. A few things I notice: <---------<<<< Imagine that ... vaporware

In mbed-rtos:

RTX_Conf_CM.c -- Needs to be updated to define OS_TASKCNT, OS_CLOCK, and OS_SCHEDULERSTKSIZE for the KL25Z
RTX_CM_lib.h -- Needs to be updated to define INITIAL_SP for the KL25Z
rt_CMSIS.c -- Needs to be updated to support Cortex M0+ (not just Cortex M0) and include "core_cm0plus.h"
The rtx directory has target specific sub-directories too, maybe something needs to be added there for the KL25Z
In mbed:

KL25Z library needs to be compiled with a define for the Coretex M0+ (not Cortex M0)
Not really related to the RTOS, but uARM isn't there for the KL25Z yet


update ...
It is truly amazing, that after 4 days posting a very simple question on The MBED's "forum board", that it has not been answered. We believe the reason why it hasn't been answered is this ... If someone paid, let us say, $150 for concert tickets, and your sitting next to a couple at a concert and you found out that they only paid $50 then we beleive you would be very distraught.

So, if you paid Tiffany's prices for a $64 MBED microcontroller and the same vendor (MBED) turns around and sells a Freescale Freedom clone for $13 you would also feel betrayed and distraught. Seeing any question about the Freescale Freedom LP25Z clone on the forum board will not put you in any good mood to answer any questions for a newbee for this cheaper MBED clone. Fortunately, for MBED users, MBED went one step further by bringing to market a cripple MBED clone. Fortunately, for us, we did not waste a lot of money ($13) bench testing it.

BTW ... Does anyone want to buy a Freescale Freedom LP25Z board with a custom made enclosure?

If not, it will go on our junk micro collector's shelf gathering dust along with The STM ARM "Maple", Parallax Basic Stamp(s), Parallax Propeller, Open Picus WiFi, Olmiex PIC Duinomite-Mega, MMBasic PIC32 MaxiMite, "Open" Pinguino, SolderCore, MSP430 LaunchPad, JeeLab's AVR JeeNode, Chipkit PIC Uno32, Basic Micro Atom24, GHI ARM FEZ Panda & Domino, Parallax Javelin Stamp, Parallax SX Microcontroller, STM ARM XDuino and ET-ARM Stamp.
 
Last edited:
Value for the money or "bang for the buck"

MBED's first microcontroller ARM Stamp NXP LPC1768 M3 sells at Tiffany's prices at $64 ($USD) (Digikey)
Now they reduced their Tiffany price down to $49 ($USD) The ARM competition must is heating up?

MBED then decided, out of desperation or fierce competition, to produce a "lower cost" MO low power version NXP LPC11U4 and the price is $59 ($USD) (Digikey)

MBED then decided to "low ball" everyone by introducing the at cost or loss leader or "bait and switch" Freescale Freedom at $13 ($USD)
In my opinion (above), its a crippled software ARM board that needs more development.

Now days, you can buy a 32 bit Arduino Due board for $50 ($USD) BUT ...
for $19 ($USD) from www.PJRC.com you can obtain a 32 bit ARM Stamp, Arduino software compatible, Teensy 3 with software that works!



Value for the money
Score: PJRC 3 MBED 0
And the hands down, clear cut winner by 10 lengths is ... www.PJRC.com
:cool:
 
Last edited:
I want to thank all of you who have contributed your opinions and experiences on the various options, especially now that the FRDM-K20D50M is available. The Freedom board with the same MCU as the Teensy 3 costs the same but has lots of neat peripheral hardware included (touch sensor, accelerometer, etc.) that would be fun to play with, but the 1980's environment for most ARM dev tools makes me cringe. I've been using Linux exclusively as my computing and dev platform since 2000, and I certainly don't have $5k to spend on an IDE that's basically Eclipse CDT with ARM gcc and a few chip databases! I'm not the biggest fan of the Arduino IDE for anything especially complicated, but control of my dev tools is an absolute must-have, and being able to build T3 programs in it gives me that assurance; I'm placing an order for a T3 tonight!

Does anyone have any experience using Eclipse or other development tools with the T3? The open-source embedded plugins for Eclipse seem to have died, and virtually everything I've done with it has been Java development, but it seems like it should be feasible to get a C++ build working.
 
Status
Not open for further replies.
Back
Top