Teensy 3.0 - 32 bit ARM Cortex-M4, usable in Arduino and C

User avatar
trax

05 Sep 2012, 21:17

Image
Teensy 3.0 is a small, breadboard-friendly development board designed by Paul Stoffregen and PJRC. Teensy 3.0 will bring a low-cost 32 bit ARM Cortex-M4 platform to hobbyists, students and engineers, using Arduino(R)** or programming directly in C language.

Based on a 32 bit ARM chip, Teensy 3.0 aims to greatly increase the computing capability and peripheral features, but maintain the same easy-to-use platform that has made Teensy 2.0 so successful.

Teensy 3.0 has been in development for well over 1 year. Many prototypes have been built. The photo above is the final prototype.


http://www.kickstarter.com/projects/pau ... me_popular



I have nothing to do with this project.
Would it be a good idea to get those?

Findecanor

06 Sep 2012, 00:06

:shock: I can't think of any keyboard-related project that would need that amount of computing power.
I mean, isn't already the 8-bit Teensy 2.0 actually a bit overpowered for a keyboard controller?

cactux

06 Sep 2012, 01:28

[Account and posts deleted on request]

User avatar
Icarium

06 Sep 2012, 07:15

Findecanor wrote::shock: I can't think of any keyboard-related project that would need that amount of computing power.
I mean, isn't already the 8-bit Teensy 2.0 actually a bit overpowered for a keyboard controller?
Afair it's quite possible to run into memory issues if you try to define to many macros in your Soarer-adapter.

User avatar
RC-1140

06 Sep 2012, 08:18

But there is really no need for a 32bit Processor. I wouldn't be too sure about this thing having much more memory. If you want to have more memory it would be a better choice to use either a bigger ATMega, or to wire up more memory on the remaining pins. But that would require some more coding.

User avatar
Icarium

06 Sep 2012, 08:25

I don't know either but here I have gathered the values:
Teensy2 and Teensy2++
Flash Memory 32256 130048
RAM Memory 2560 8192
EEPROM 1024 4096
Teensy3
128K Flash Memory, 16K RAM, 2K EEPROM

Looks like it has the same amount of flash memory, twice the ram and half the eeprom size compared to a Teensy2++.

I have no idea what that actually means, though.

User avatar
RC-1140

06 Sep 2012, 08:31

Depends. I never tried the macro functionalities of Soarer's converter, so I don't know, whether the Macros are saved in the EEPROM or in the Flash. Also I have very little experience with ARM architectures, but know more about the AVR architecture, but I don't know, if ARMs are as effective as ATMegas in the operations. All processor commands (with few exceptions) are done in exactly one clock cycle. Only some memory operations are slower. This is why I like programming ATMegas in Assembler. But I really don't know how an ARM would compare to an ATMega in these aspects. The ARM is surely better if you need 32bit operations, but you don't need those for keyboards.

cactux

06 Sep 2012, 10:33

[Account and posts deleted on request]

User avatar
Soarer

06 Sep 2012, 14:38

I looks to be an interesting chip, but I'd rather stick with Teensy 2.0 and Teensy++ 2.0 for most keyboard stuff. It's nice to have the choice between those two, with hardly any code/peripherals compatibility to worry about.

My converter keeps macros in EEPROM (where they use 2 bytes per step and a few bytes per macro), and builds an index to them in RAM. Each index entry is 5 bytes. Also, if there are any macros that trigger on key release it has to track key state, which uses another 256 bytes of RAM (once). Layers are expanded from EEPROM (where they use two bytes per remapped key) to a 256 bytes table in RAM per layer.

It doesn't take many 256 byte tables to fill the Teensy 2.0's RAM! Don't forget that a certain amount is already used for variables, stack etc., and in my converter also the base layer remap table and key state tracking etc. Overall there's less than 1K left for config stuff, but that's still enough for most people. And if not, there's the Teensy++ 2.0, which should cope with anything this side of a space cadet :D

One aspect of the new chip that might be useful for some projects is improved interrupt response time. That could open up new applications. Porting V-USB (software USB) to it would be nice, since it is capable of being a USB host on its hardware USB interface. When overclocked to 96MHz, it might even be able to do full-speed USB in software, just!

Anyway, if the price is right, overkill is irrelevant :lol:

User avatar
kps

06 Sep 2012, 16:50

cactux wrote:More power = more expensive board?
The Kickstarter price for the Teensy3 is $22, while the Teensy2++ is $24.

Findecanor

06 Sep 2012, 18:03

RC-1140 wrote:All processor commands (with few exceptions) are done in exactly one clock cycle. Only some memory operations are slower. This is why I like programming ATMegas in Assembler. But I really don't know how an ARM would compare to an ATMega in these aspects.
The ARM architecture's instruction set is 32-bit but compiled C code is known to be quite tight. The core is pipelined, so it can start one instruction per clock cycle but each result is available only after a few cycles.

I think that it is pretty cool, but I don't know what I would use it for. Maybe if I would be building an input device that needed to perform a lot of signal processing.

User avatar
kps

06 Sep 2012, 18:59

Findecanor wrote:The ARM architecture's instruction set is 32-bit ...
However, the Cortex-M can't run the ARM instruction set.

Findecanor

06 Sep 2012, 20:44

You're right, I was wrong. The Cortex-M4 does not run the 32-bit ARM instructions. Most instructions are 16-bit in length, and expand to equivalent 32-bit ARM instructions internally. That can give even higher code density (but is not as fun to code in assembly language as the full ARM instruction set ...)
The Cortex-M4 also has hardware divide and DSP extensions.

User avatar
dorkvader

10 Sep 2012, 07:21

Is that a microUSB port? That's a good reason to get one right there.

User avatar
lowpoly

13 Sep 2012, 20:23

Still no mounting holes. Biggest drawback of the Teensy, IMO.

User avatar
dorkvader

23 Sep 2012, 00:51

I see 35 mounting holes :p

I know what you mean, I'd be happy to use a mounting board shield that just passes through all the connectors, and adds tabs or holes to mount with. As it is, I may end up fabricating one with some plastic or something.

Or maybe I can chisel down a block of delrin and put it into an Apple Ma116 :p

Post Reply

Return to “Workshop”