Suggest next Teensy with Cortex M7

Status
Not open for further replies.

LuisHS

Well-known member
.

I suggest next Teensy with a Cortex M7. Now I'm working with Atmel SAM S70, 300Mhz, 1Mb flash, and its really fantastic, cheaper than Kinetis MK66, practically half price. Also soon ST will release STM32H7, 400 Mhz, the top or Cortex Mx. Kinetis are the most expensive ARM microcontrollers, cheaper ST or Atmel.

I think better do not work with Arduino. For S70, Atmel Studio. And for ST, SW4STM32 with Cubemx, is perfect.

And finally I suggest add access to Debug with SWD.
 
Last edited:
There's a lot of work invested in the Teensyduino code base that is specific to Kinetis chips. There's also the "magic boot button" that lets us use the full chip, because the secondary chip takes care of bootloading. Thus, I think it would be quite hard for PJRC to switch to another product line, be it Microchip (owns Atmel now) or ST or whatever.

Secondarily, I'm not sure what the quest for high performance is going for. At some point, just stick a Raspberry Pi Zero W on there; it has HDMI output with a GPU and networking and USB built-in, and it lets you write as much fancy code as you want, running at gigahertz speeds. And it's low cost, too. And if you want to go up from there, there's the Raspberry Pi 3, and all the me-too boards, and even the UP! boards.

I think Teensy has a great niche in small boards, with "enough" power, "enough" I/O and robustness, and a high quality software stack. Yes, I'd love to see Teensyduino for Visual Studio Code, because I, too, don't like the Arduino IDE. But it looks like it actually wouldn't be hard to write a separate script package that would use the Teensyduino code chain for VS Code, or any other IDE you can run command line tools from. (Which is all of them.)

Honestly, the most annoying thing about Teensy is that 3.6 isn't 5V tolerant. While the world is 3.3V (and even 2.5V down to 1.2V!) these days, there are tons of existing standards and peripherals that still use 5V. (I imagine the TTL people going from 12V to 5V felt much the same way ...)
 
Yeah, which is why I chose the T3.5 as an upgrade from my mega2560, because I had alot of 5V I2C devices and 5V expanders, not to mention, the sparkfun canbus shields are 5V devices for the SPI bus.

At that point, T3.6 wasnt an option, but the flexibility of 5V tolerancy is always a plus

That and, because of the multiple busses, we can use one bus for 5V devices, and another for 3.3V devices (SPI/I2C) which gives more flexibility

I am currently using the T3.5 to drive a NEX4100 WDT line high in order to take Warp snapshots in the bsp as the unit is 3.3v. Uart6 is running to the TX/RX of the radio as well for adb console, and when done with the bsp i return the gpio back to an INPUT to deassert the radio which restores reboot functionality in the console.

My Mega never had the resources to do all of this, but without T 3.5, this wouldnt be possible, at least with my setup :)
 
Last edited:
Ok, maybe it's time to drop a hint about future Teensy.... (hope everyone is sitting down)

This chip is very likely to become the core of Teensy 4.0 sometime in 2018.

http://www.nxp.com/products/microco...x-rt-series-crossover-processor:IMX-RT-SERIES

Yes, you're reading that right, a 600 MHz Cortex-M7 is coming! :)

Like all semiconductor marketing, some of it needs to be taken with a grain of salt. The "interfaces for" various wireless protocols appear to be only Serial, SPI, I2C which we already have. As far as I know, there won't be any actual wireless built into this new chip. Every semiconductor company is under extreme pressure to call anything "Internet Of Things", so be skeptical on that stuff.

Their prediction of October this year should also be viewed with extreme skepticism. Historically they've been many months late on almost all other new chips, and even at "release" they've usually taken time before parts actually became available at even moderate volume (more than just a few samples). For comparison, it was just over 1 year from when the K66 was announced to when we were able to finally release Teensy 3.6. This new chip is a major step for NXP, so if anything I'd expect the delay to be even longer.

We're going to call this one 4.0 because it's not directly compatible. For starters, the analog features will be less than we have now. It almost certainly will not be 5V tolerant. Pretty much no new chips are anymore, especially ones using process nodes capable of these speeds. It also doesn't have flash memory built in, so we'll be using a QSPI flash chip, like the Espressif ESP chips do.

It does have some absolutely incredible features. The 512K of internal RAM can be used in Cortex-M7 fast TCM mode. If you compare with ST and Atmel, only a small amount can be fast TCM, and their's are only 300-400 MHz, not 600 MHz. NXP's new chip also has a 2G GPU, likely very similar to the fairly basic ones in their iMX6 chips (color space conversion, alpha blending, bitblit, bilinear scaling). We'll get two 480 Mbit/sec USB ports. There's no official word on the FPU yet, but odds are almost certain it'll have both single and double precision.

Anything more I might know than what's on that web page of course would be under a NDA until the chip is fully released.

Exciting as this is, please understand it's very likely a long way off. But at least we can see what the future is bringing. :)
 
hey the NEX4100 I have, can I cross flash it with that code? LOL
it contains an i.MX6

pjrc, turning headunits to arduino systems :)
 
Competition for the Raspberry? Better start buying me some level shifters :) Looks like they are even playing on offering a Low-cost evaluation kit compatible with Arduino™ hardware shields.
 
Who is the intended customer for that Teensy? I have a hard time filling up the CPU of the 3.5, although I'm out of I/O (again!) Developing applications that use all that power is significant work.

Also, if less analog, and 3V only, and external flash, and 600 MHz is important to me, I can get it today in a Raspberry Pi Zero W, cheaper than a Teensy. Then I can use all that power to run Python or something instead of C, and be back at 8 bit AVR speeds...

Seriously, who needs that product? For CPU there's other faster options; MCUs are all about the available I/O. I'd rather have more, smarter, easier to use DMA and multiple quadrature counters and MOAR PINS and perhaps protected memory. (I understand Paul has to work with the chips available; this is as much a lament about the industry as input to next Teensy.)
 
i try not to use the teensy pins unless for 3.3v devices, I push the rest on the external 5V mcp23s17s spi bus @ 8mhz
 
Who is the intended customer for that Teensy? I have a hard time filling up the CPU of the 3.5, although I'm out of I/O (again!) Developing applications that use all that power is significant work.
I would love this and I'm sure paul and others would make sure it's very well supported. I like how the promotional material specifically say for guitar pedals, very cool. Also its low power for battery operation applications.
 
Ok, maybe it's time to drop a hint about future Teensy.... (hope everyone is sitting down)
Yes, you're reading that right, a 600 MHz Cortex-M7 is coming! :)

Awesome. It will be great for audio or video processing, robotics and way more. 512KB RAM are not too much fo this type of usage, so it would be good if an interface for additional external memory (RAM) is available on the 4.0
With it's speed and memorysize, "official" availability of an RTOS (with Arduino-compability) / simple multitasking would be on my wishlist.

I don't really need wlan,ethernet or bluetooth. But I think, an additional little chip for wlan (or, even better, a usb-"driver" for existing wlan-sticks) can help to sell some more 4.0 (or 3.6???)...
 
Last edited:
Who is the intended customer for that Teensy? I have a hard time filling up the CPU of the 3.5, although I'm out of I/O (again!) Developing applications that use all that power is significant work.

Well, doing some ultrasonic (fs>300kHz) multichannel floating point digital filtering, T3.6 becomes a little bit slow.
and RPI eats a lot of power
 
It will be great for audio or video processing, robotics and way more

My point is that there are already well supported, affordable, high-performance CPUs with lots of processing power available today for these use cases.

Two years ago, I slaved a Teensy 3.2 to a Raspberry Pi 2 for a robot, and it was great!
This year, I'm slaving a 3.5 to a Jetson TX2, and we'll see how that goes.

T3.6 becomes a little bit slow.
and RPI eats a lot of power

If you think the Pi 3 draws too much power (because: quad 64-bit cores and a GPU!) then you can use the Pi Zero W today. It's a single core, it runs at 1 GHz, it has 512 MB of RAM, it has HDMI out and dual USB and camera input and 3.3V I/O, and it doesn't draw particularly much power, and it's price competitive with the Teensy (even at Amazon scalper prices.) If the difference between Pi W and Teensy 3.6 power draw matters to you, but you need the DSP power, you might not find anything that suits you at all other than some custom DSP board :)

The Teensy is great because of all the hard work Paul does with the software environment, and because of the robust interface to all kinds of low-level peripherals.
Trying to grow that into a "home computer on a chip" moves away from what it's currently great at and competes with a vast variety of incumbents.
Paul is one guy, with some additional help from the community, as far as I know. Look at how long after 3.5 release we are still looking for USB updates and Ethernet to get started.
Adding more peripherals (GPU, anyone?) will just add to the backlog of features to add support for, for incrementally less gain to the majority of Teensy customers.

I've seen companies I care about develop the wrong product and waste their resources before, which is why I'm being vocal about this, as a customer who appreciate the work and care about the value they deliver. If I were running a company like PJRC, I would look very hard at what the majority of customers are actually doing, and then look at what options exist for the extensions customers want, and then move in the direction where the market isn't already full of well supported options.
My guess is that more software support for actual products would land better and differentiate better than walking the "a desktop computer on a chip" path. Also, frankly, the software has a lot more value for the future than the hardware designs, because software is reasonably easy to port forward. Companies get acquired for their great software tooling/product all the time, so there's clear value there.
 
Ok, maybe it's time to drop a hint about future Teensy.... (hope everyone is sitting down)

This chip is very likely to become the core of Teensy 4.0 sometime in 2018.

Cool.

http://www.nxp.com/products/microco...x-rt-series-crossover-processor:IMX-RT-SERIES

Yes, you're reading that right, a 600 MHz Cortex-M7 is coming! :)

Like all semiconductor marketing, some of it needs to be taken with a grain of salt. The "interfaces for" various wireless protocols appear to be only Serial, SPI, I2C which we already have. As far as I know, there won't be any actual wireless built into this new chip. Every semiconductor company is under extreme pressure to call anything "Internet Of Things", so be skeptical on that stuff.

Yeah, but I have to imagine that the ESP32's and ESP8266's are weighing heavily on everybody's design. But I know that it takes a long time to go from specifications to silicon that works. Right now, at least 1/3 of my time at work is spent in meetings with the hardware folk to come up with specifications that software wants/needs for the next processor. And part of my time is spent hoping the next silicon for the newly announced processor to show up so we can start tuning the compiler.

Their prediction of October this year should also be viewed with extreme skepticism. Historically they've been many months late on almost all other new chips, and even at "release" they've usually taken time before parts actually became available at even moderate volume (more than just a few samples). For comparison, it was just over 1 year from when the K66 was announced to when we were able to finally release Teensy 3.6. This new chip is a major step for NXP, so if anything I'd expect the delay to be even longer.

We're going to call this one 4.0 because it's not directly compatible. For starters, the analog features will be less than we have now. It almost certainly will not be 5V tolerant. Pretty much no new chips are anymore, especially ones using process nodes capable of these speeds. It also doesn't have flash memory built in, so we'll be using a QSPI flash chip, like the Espressif ESP chips do.

It does have some absolutely incredible features. The 512K of internal RAM can be used in Cortex-M7 fast TCM mode. If you compare with ST and Atmel, only a small amount can be fast TCM, and their's are only 300-400 MHz, not 600 MHz. NXP's new chip also has a 2G GPU, likely very similar to the fairly basic ones in their iMX6 chips (color space conversion, alpha blending, bitblit, bilinear scaling). We'll get two 480 Mbit/sec USB ports. There's no official word on the FPU yet, but odds are almost certain it'll have both single and double precision.

Well the marketing blurb does say optional single and double precision. Of course like all marketing blurbs it is subject to changes, and it depends on what the FPU costs whether it makes it into the final Teensy product(s). I know how much things can change, and over the years, I have times where I spent a year in one job and several months in this this job adding a feature that isn't in the final hardware.

I would hope that some of the variants Teensy uses will have double precision, though for many things, single precision is enough. But if it does support double, hopefully we can eliminate using -fsingle-precision-constant. I know you were in between a rock and a hard place in turning that on, but it would be nice not to have to use it.

Anything more I might know than what's on that web page of course would be under a NDA until the chip is fully released.

Exciting as this is, please understand it's very likely a long way off. But at least we can see what the future is bringing. :)

It will be interesting to see if you go with a wildly different pin layout or numbering for Teensy 4.0 as opposed to 3.x. You've done an excellent job in maintaining the majority of pin compatibility between the LC, 3.0, 3.1, 3.2, 3.5, and 3.6. But I can imagine it is growing creaky to keep this compatibility.

If possible, I would suggest having VUSB, AREF, and VBAT on the main rows of pins rather than inside and on the back. Reset and program also, but those are more special purpose, and they can live as interior pins. But if not, that is also fine.

It would also be useful to incorporate an on/off mechanical switch to the Teensy (or at least a trace that can be cut, and 2 pins that are next to each other and a normal 0.1" switch can be inserted). Again, if you can't do it, that will be fine.
 
then you can use the Pi Zero W today. It's a single core, it runs at 1 GHz, it has 512 MB of RAM, it has HDMI out and dual USB and camera input and 3.3V I/O, and it doesn't draw particularly much power, and it's price competitive with the Teensy (even at Amazon scalper prices.) If the difference between Pi W and Teensy 3.6 power draw matters to you, but you need the DSP power, you might not find anything that suits you at all other than some custom DSP board :)

I may partially agree, as in the end it is important if the functionality is increased. I like the 3 x I2S interfaces of the i.MX RT1050, but if Paul does not give access to all of them due to reduced form factor ...; if the next model has no DSP ... ; etc; then I may not need a 600 MHz processor, which is most likely not a low power MCU.

Also, I would like to see the functionality of the T3.5/6 fully used and tested (USB host mode, Ethernet...) before I'm interested in a new processor

Otherwise, I'm still using custom TI DSP boards, but they are expensive, and do not have the SW support, teensy enjoys.
 
The other question is how much breadboard compatibility is worth?
With more and more peripherals/pins, the breadboard form factor is becoming somewhat challenging.

Perhaps holes along the outer side for the "important" peripherals, and then a high-density connector on the bottom, would work?
There are a bunch of mezzanine connectors that are good. Anything down to 0.5 mm pitch high-density strips/sockets.
I don't think going 0.5 mm (or even 0.8 mm) is necessary, though; a two-row 1.27 mm pitch connector would probably provide plenty of pins.
Ideally, that connector would duplicate the signals that are available at 2.54 mm pitch on the outside, so that a carrier board could just "plug in" the Teensy and get everything.
And there'd be lots of N/C pins in version 1 so that there's space to grow.

Given the constraints of these connectors, the Teensy would have to be sold with the connector built-in, which would add cost and add height, though.
I think that would be OK, but I'm sure there are others for whom that would be a problem.

Another option would be a board edge "finger" connector (such as PCI express connectors) Obviously not with PCI Express signals, but the connectors are cheap and plentiful and building the PCB with a V score side is low height and low cost. People could probably solder direct to the fingers, too, for that ultra prototype feeling :)
It would probably have to extend across the breadboard interface space, though.
 
Ha! Densities are creeping down to 0.35mm. Which seems like total overkill. However, I'd love to see a Teensy with something like the Molex SlimStack breaking out all the signals on the bottom:
http://www.molex.com/molex/products/datasheet.jsp?part=active/0547220804_PCB_RECEPTACLES.xml
It adds $3.50 to BOM though... but at least it's not $10 like the Samtecs :)

Also, the idea being that female connector on the Teensy and male on whatever breakout board we want to build, makes for less likelihood of shorting out the Teensy.

Another thing that might be good would be 5V level translators for the "important" I/Os -- one I2C, one SPI, and one UART, perhaps?
 
Another thing that might be good would be 5V level translators for the "important" I/Os -- one I2C, one SPI, and one UART, perhaps?

Nope, i don't think so. 5V is outdated technology from last century.
But some small addon-boards with specialized level-translators might be useful for some users (not me).
 
Last edited:
My point is that there are already well supported, affordable, high-performance CPUs with lots of processing power available today for these use cases.
Can they run Arduino-code ? Most are Linux, and having an OS is a no-go for different reasons.
I want predictable IO performace/Interrupt latency and, most important, can't wait dozens of seconds for booting....
They use CPUs, not MCUs (!?)
 
Last edited:
But if it does support double, hopefully we can eliminate using -fsingle-precision-constant.

Yes, -fsingle-precision-constant absolutely will be going away for any future chips with double precision FPU.

The other question is how much breadboard compatibility is worth?

Solderless breadboard compatibility is essential, but not for every signal. Like Teensy 3.2, 3.5, 3.6 only about 20-40 signals will come to breadboard friendly pins. I'm considering a variety of ideas for how to make the rest available, but honestly, not very concerned about that part at this extremely early stage.

Like every other conversation about future Teensy, I'm sure there will be plenty of talk about form factors, connectors, pin spacing, and so on. Feel free to discuss. I am listening. But don't for one second imagine I'm going to abandon breadboard compatibility for a high density connector like Intel did with Edison.

Also, I would like to see the functionality of the T3.5/6 fully used and tested (USB host mode, Ethernet...) before I'm interested in a new processor

Me too. I've got to admit, EHCI turned out to be really tough. These are taking time, but I'm *not* going the easy route so many others have in the Arduino world with simple one-thing-at-a-time design. I hope in the end this extra effort will end up being worthwhile.
 
600Mhz is interesting, but likely a more complex project that will take advantage of all that computational power. I'd also be concerned about noise on ADC at that MHz.

I see the value, but my preference is for a small, low-power platform that has BLE and i2c/SPI/ADC. That's pretty much on the opposite spectrum of this chip.
Would be nice to have a product on both those spectrums though.
 
Hopefully it nicely handles both spectrums.

I found with the T3.6, that the extra memory is nice for a logical frame buffer for the ili9341, so maybe this one will be able to do a reasonably larger version.

If my memory is correct from when I browsed through the documents, I think it has something like 8 UArts, + 4 SPI and 4 I2C, so should be good that way. It will also be interesting to see if they keep with the same MUX setup for the pins, so there are specific pins for this functionality or will they be more flexible on which pins do what.

Sign me up :lol:
 
The CPU speed and double precision hardware floating point unit has got me excited. I'd love to port some applications that I'm currently running on embedded Linux systems to a hard real-time system like this.

Is there any planned EOL for the Teensy 3.2, 3.5, 3.6 or LC once the 4.x series is released? I'm assuming MKL04 chips will be available for integrating Teensy 4.x into custom PCB's? Keep up the fantastic work! I love developing in the Teensy ecosystem; it's extremely well supported, has excellent performance across the product line, and is super easy to make libraries compatible across the whole range of devices.
 
I have the feeling PJRC is moving more and more to the audio/graphics/props market since the release of the prop shield (and some time before that). I take it this the main driver behind Teensy sales nowadays? My main uses have always been industrial, scientific and educational. While I applaud the continuous innovation in the PJRC product portfolio (not an easily accomplished feat for such a small team!), the improvements in the 3.5, 3.6 and now the potential 4.0 seem to be primarily focused on the props applications.

For my uses, I would love to see more RAM and flash and more inter-connectivity options while keeping a small form factor and low price point. Granted the 3.6 (and even 3.2) got pretty much everything covered for me now (although more RAM would always be nice), but I would love to see the onboard Ethernet en SDIO interface working reliably before development attention shifts to the 4.0. I have however no doubt this will be the case :) .
 
Status
Not open for further replies.
Back
Top