Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 5 of 5

Thread: Another Teensy 3 ARM Competitor - CooCox Cookie

  1. #1
    Senior Member
    Join Date
    Nov 2012
    Posts
    412

    Another Teensy 3 ARM Competitor - CooCox Cookie

    Another Teensy 3 ARM Competitor - CooCox Cookie

    http://www.coocox.org/Cookie.html

    Cookie is an open-source Arduino-compatible ARM prototyping platform based
    on 32-bit ARM Cortex M0/3/4 MCUs plus hardware and software building blocks.
    Cookie expands the concepts of Arduino into 32-bit ARM Cortex MCUs.

    One spec caught our eyes is this ... programming language C language.
    Without the additional capability of C++, then making reusable libraries would be very problematic.

    We bought this deficiency up to the CooCox moderators and they said it was not needed?
    Guess they will learn the hard way. The Arduino and the Teensy designers were very wise in
    choosing the proper programming languages which includes C++.

  2. #2
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    20,171
    I wonder how they can claim "Fully compatible with Arduino, hundreds of Shields can be reused" ?

  3. #3
    Senior Member
    Join Date
    Jan 2013
    Posts
    120
    I guess if they don't support C++ I won't have to worry about porting FastSPI_LED2 to it (I make extensive use of template expansion/instantiation as an optimization technique).

  4. #4
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    20,171
    I would be very surprised if any Nuvoton-based design gains much acceptance in the maker/arduino/hobbyist world. Working with the Mini54 was a nightmare. Their datasheets have scant info. Everything is in broken English. Some stuff just wasn't documented at all and I had to figure it out by reverse engineering. I encountered a few bugs in the chip. The tools are Windows only. Some of the chip programming info, like how to do a full chip erase, is confidential. There's no well documented serial programming interface like everyone is used to with AVR, PIC, etc.

    I've talked with a couple people who've used Nuvton ARM chips in commercial projects. They hated it too. They used the parts because they're very cheap. Rumor has it Nuvoton's pricing is incredibly low for 100K to 1M+ pieces (something I'll never find out from Teensy.....)

    I used the Mini54 chip because it was one of only 2 possible chips with enough memory that would physically fit. Nearly all the other chips on the market (as of 18 months ago) only go down to a 5x5 mm QFN package, which can't possibly fit in the limited space on Teensy 3.0. Even the 4x4 mm Mini54 was quite difficult to fit, but the other option was a chip-scale BGA that would have requires a special/expensive PCB process, rather than just ordinary 4-layer.

    If I were restarting Teensy 3.0 today, I would go with one of the newer Cortex-M0+ chips, probably from NXP or maybe one of the new Freescale ones (which now come in even smaller packages, but they didn't 18 months ago). They're much better documented. The ARM M0+ core is also greatly improved. The M0 performance is really on par with Atmel AVR, because instructions stall on bus access. Sadly, all those newer chips were not even announced when I started Teensy 3.0, and they're just now starting to appear at distributors. They would have made things much easier.

    Normally I try not to rant like this about particular chips and especially competitive dev boards. But Nuvoton's part indeed was a nightmare. I've spent many, many long frustrating all-nighters with that chip! It really makes me appreciate how nicely documented chips the "normal" chips from Atmel, Microchip, Freescale, TI, & NXP are.
    Last edited by PaulStoffregen; 04-20-2013 at 11:56 PM.

  5. #5
    Senior Member
    Join Date
    Jan 2013
    Posts
    120
    Hear hear for documented chips - and thank you for using a well documented chip in the main portion of the teensy - I basically permanently have that datasheet open while I'm working on refining/tuning/expanding the library - and it's pretty fantastic to be able to just go to the docs than guessing/reversing how things work from other code!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •