Future Teensy features & pinout

Paul,
Thanks your thoughtful reply. It is indeed difficult when so many customers have different “must have” features. When I was writing about the connectors I had not considered the need for blind and buried vias and 8 layer boards, which adds considerable cost. That would imply two SKUs if you want to bring out a large number of signals. One at lower cost, similar to the pinout of the existing Teensy, perhaps with double 0.1” pin rows as @DavidWH1968 has suggested. And another SKU with some kind of high density connector, be it a board to board connector or an edge connector. I guess the question is, do you believe there is sufficient volume potential to make the development of that second board a viable business decision.

You also asked about people’s experience with high density connectors. I’ve been using the Pyboard D for a while now along with a breakout board and a board that has a memory card. Pyboard has two high density connectors, on the bottom of the board. In my old age I am pretty much all thumbs and I have not had any issues with connector seating or damage. But I only cycled them perhaps 20 times.

My point of view is, bring out the few pins required for a JTAG connector and I’d be happy with the existing 4.1 footprint. I really can’t imagine doing any level of complex software development on a multi core machine without it. For anything more involved than that I would likely design my own board using your bootloader chip.
 
My request for a high density board for a future Teensy is specifically because I think a dual core Teensy would allow for much bigger projects.
There will be no other microcontroller on the market that is this fast and I can see many people use it for larger projects.

I think for smaller projects Teensy 4 is plenty of fast enough. A teensy 5 could nicely differentiate by offering not only a faster chip, but also more IO.

Maybe offer one with normal side pins for 40-50 Euro (Teensy 5.0) and one which has high density connectors for 50-60 (Teensy 5.1)
 
On the subject of high-density connectors...


My opinion is really just an echo of the people I know who actually used Edison.

Back when Edison was on the market, I talked with many people about it. Lots of people who liked the concept of Edison but hasn't actually put it to any substantial use loved the high density connector idea. Pretty much everyone I talked with who actually did use Edison hated the reality of the high density connector.
My experiences with Edison back then was mixed.

There were some things I enjoyed, like being able to do wireless updates....

As for the high-density connectors. At first I liked the idea that I could get access to all of the pins. But then I gave up on it, for many reasons. First off was lack of support. But more particular to this, these connectors made it such that I would not make my own boards to use it. Also the project by Trossen Robotics more or less went away from it to go toward RPI, as they gave up on doing their own Edison board as well.

So I then used some adapter boards, and the main Intel Expansion board really had issues! Like GPIO speeds that was really bad... And the alternatives were several others that you would stack. The issue with the stacking of them, is often times the connections might easily come loose. So then you needed to use a bunch of proper sized spacers and screws... So at the time I quickly moved over to RPI3 and then to ODroid boards, like:
https://www.hardkernel.com/shop/odroid-xu4-special-price/


Speaking of Odroid, You had a couple different options for storage, one was SDCards and another was their memory cards. I mention this as I normally went with their memory cards, that looked like:

XU4Linux.jpg
I mention this as they also used similar high density connectors and at times I found that they could be finicky to get them to connect and I had a few times on robot (either the Hexapod or the Humanoid) where with a little vibration, like the robot trying to walk where the chip fell off... The way they told you to handle it was to use double faced tape (which comes on it)...

Again I liked these boards, board but later tried others...
 
I'm not sure how many people typically will put those castellated holes to use if they are there, since the only real benefit comes from using them to surface mount a packaged part. And that might be hard since the new board will likely require some components (decoupling capacitors in particular) on the bottom side of the board, rendering surface mounting impossible unless a space is routed out of the board you will mount to. (The RT1176 is a BGA289 package, if I remember correctly, while the MCU on the PI Pico is a QFN48 or QFP48 package that is significantly easier to route and doesn't necessitate bottom mounted components.)

I'm not opposed to castellations, but I don't see the need for them either since they would be mostly pointless additions due to the need for components on the bottom side of almost all boards that carry higher pin count BGA packages.
 
Personally i think two form factors are a good idea just not the old form factors. having the 4.0 is of course good for very small projects but since people are using them more and more for advanced projects it seems they as well as myself have moved to the 4.1 for more io pins.

I have the 4.1 with the SPI pins facing downward as well as the 5 volt, ground and the other end pins connected to the shift register board below for support. all other pins are facing up so i can use them for other peripherals like display, ethernet, sensors ect. if the new board has the high density io facing downward i can not use them and as such will be useless to me in my scenario.

having said that i would like to see the new release as the 4.1 formfactor BB friendly and also a larger form factor with the high density io pins facing upward not downward so all the io's can be utilized with either a breakout board or at the bare minimum a high density connector and one detailed pinout card.

my present project uses the Teensy 4.1 and 8 shift registers to switch the connections to three high side transistor boards (60 connections) that are connected to an active inductor controller. i will have the peripherals connected to a monitor, sensors ect for a constant update on the stationary generator i am working on. in the future it will switch two sets of 64 bit buffers opposite from each other controlling another set of 60 connections..

i too an drooling over the possibilities of the 1070 series which will take my present project to an unbelievable next level.

thanks everyone for your contributions and Paul for your dedication to advancement not just another Arduino.

PS. of course i could just invert the board.

Regards,
Marathonman
 
Last edited:
Wherever this finally leads it would be great if all of the pins on one of the new boards are on identical centers. It is at present very difficult to mount the Teensy 4.1 with pluggable M-F headers due to the 0.050"/1.27mm spacing of the ethernet pins. You can get 0.050" M & F headers but they're expensive, difficult to source, and they are not the same finished height as 0.1" headers.

And, lest I fail to mention it at every opportunity... JTAG, please.
 
Wherever this finally leads it would be great if all of the pins on one of the new boards are on identical centers. It is at present very difficult to mount the Teensy 4.1 with pluggable M-F headers due to the 0.050"/1.27mm spacing of the ethernet pins. You can get 0.050" M & F headers but they're expensive, difficult to source, and they are not the same finished height as 0.1" headers.

And, lest I fail to mention it at every opportunity... JTAG, please.

The ethernet header has 2mm spacing. Doesn't change your points though.
 
To sum up a few posts :)
- The teensy should'nt be larger than now, but have all pads. Then, 2mm spacing is too small, but high density connectors are really needed. It really needs JTAG, all pins for display, camera, DRAM, and other high speed memory. Everything of that. But all accessible without extra board.

*joke*

I bet some beer that it will have max double rows, all 12 serials and a few flexio. no debugging (was on wishlist since Teensy 3.0, so why should it come now?) maybe (unlikely) a display connector. this, perhaps, hd.
Just lets wait.

PJRC can't make a board for a few people with some special needs. It will be general usable, so we can expect the max possible for the then choosen form factor.
Perhaps, later, a second or even third version.
 
"no debugging (was on wishlist since Teensy 3.0, so why should it come now?) "

so true - and a pity - I would not expect JTAG to be added.
It seems, Paul dies not like it :)


I admire these boards for the the performance and the many peripherals and connectors and the size of RAM and flash.
But the more complex the software can get,
the more we need a HW-debugger.
 
Add Bluetooth BLE on board? A microSD card reader on board?

Also, a straight C SDK with Makefiles. In addition make an easy to use C library for all the peripherals such as GPIO, I2C, SPI, UART, I2S, interrupt handling, sleep modes, filesystem, Bluetooth etc. Something akin to the RP Pico SDK.

Best of all would be a real-debugging option through USB (this would obviously disable the USB interface). And to top it off integration with PlatformIO in Visual Studio Code (VSC).
 
Last edited:
A "straight C SDK" is definitely not the direction PJRC will go. But I do want to move to using makefiles.

I have no comments on breakpoint debug at this time....
 
"no debugging (was on wishlist since Teensy 3.0, so why should it come now?) "

so true - and a pity - I would not expect JTAG to be added.
It seems, Paul dies not like it :)


I admire these boards for the the performance and the many peripherals and connectors and the size of RAM and flash.
But the more complex the software can get,
the more we need a HW-debugger.
A 1GHz CPU & GPU without JTAG is severely limited in its application. There are some things that simply can't be debugged without it.

One opinion previously posted on this forum is that JTAG was left out out over concern that it would expose the bootloader code, and open up the Teensy to reverse engineering piracy. None of us want to see that. But I suspect that is not the cause. Paul sells bootloader chips unmounted as a kind service to those who want to build their own boards. If all you needed was a JTAG interface to access their contents, some overseas chop shop would have done it already.
 
Yup.
The bootloader acts as "debugger".
However the reason is not important. A jumper that disables the chip would do it.
But it is not the right thread here for this topic.
 
Add Bluetooth BLE on board? A microSD card reader on board?

Also, a straight C SDK with Makefiles. In addition make an easy to use C library for all the peripherals such as GPIO, I2C, SPI, UART, I2S, interrupt handling, sleep modes, filesystem, Bluetooth etc. Something akin to the RP Pico SDK.

Best of all would be a real-debugging option through USB (this would obviously disable the USB interface). And to top it off integration with PlatformIO in Visual Studio Code (VSC).

Bluetooth is not built into the iMX RT1176, therefore it would mean added hardware on the board. Probably best to let those who need it add it themselves via a daughter board.

MicroSD / SD reader is part of the hardware in the 1176, and will therefore most likely be on the board, just like the Teensy 4.1.

A straight C SDK is available now from NXP. It has all the peripheral support in it, along with drivers, and is available for GCC.

The JTAG interface would be nice, but the addition of a separate JTAG header is not truly needed since (I believe) it is mapped onto GPIO pins. Those pins can just be brought out to header pins for GPIO, and those of us that want to can use them for JTAG.

The display output pins don't even NEED to go to a separate connector (although that would be nice). They can go to the regular development header (hopefully on consecutive pins) as long as the trace lengths are matched.
 
Last edited:
Some thoughts regarding the new RT1176 board:

One of the nice things about the Teensy boot-loader is that @PaulStoffregen has only included essential startup code and some lightweight debugging capability (to wit: USBASP). The functionality of the CPU is otherwise untouched and (seems to be) fully unlocked so our code can do ANYTHING it wants.

The idea (I think) behind the Teensy boards is to give us access to high end MCU's at a reasonable price. The tradeoff is that, unlike the development boards from NXP (they include multiple RAM types, multiple flash memory types, connectors for everything) if we want something like Bluetooth, SDRAM, accelerometer(s), etc., we can add them (and their associated cost) after we get the board. (Still hoping for at least one 16-bit SDRAM footprint, though.) And we don't have to pay for a ton of devices (many of which are redundant) that we won't be using, and can each add to the complexity of starting the MCU running. Further, if we find that access to a device (like the display controller on the T4 & T4.1) is not available we can just go to another board like the ones from NXP that has it available OR make our own workaround, like many have done. This seems to have been a very successful approach. But Paul S. adds another level of joy to our development by making the boot flash chips available so we can design our own board around the MCU to get our ideal development board up and going quickly.

Over-design to accommodate everyone has been the death knell of many a development board. When there are too many features the price goes up and the audience goes elsewhere for a product. The same happens with boards that use non-standard connections, don't support the more common IDE (ie: Arduino), or require the purchase of other products to use it properly (ie: JTAG debugger. I know they are cheap, but the entry level cost then goes from, say, $50 for a board to $75+++ for a board with a debugger.)

If what we get is ANY board based on the RT1176 with a pin-out structure similar to the T4 or T4.1 (perhaps with a couple extra rows of pins, please!) I know I will be thrilled. This is, after all, supposed to be a MAINSTREAM development board.

@PaulStoffregen: Thanks for all the hard work. Love your products!
 
The JTAG interface would be nice, but the addition of a separate JTAG header is not truly needed since (I believe) it is mapped onto GPIO pins. Those pins can just be brought out to header pins for GPIO, and those of us that want to can use them for JTAG.
Yes, JTAG pins are regular I/O pins as with most modern MCUs. Unfortunately those pin have not been brought out from under the BGA on any of the previous 3.x / 4.x boards. The location of the pins does not matter as long as they are accessible.
 
If there's any way to integrate an FPGA that would be neat. Other Arduino units like the MKR Vidor 4000 do this.
Another cool thing about the Vidor 4000 is it has a PCI-E edge connector, so you can use the thing as a PC add-in card.
Both features together would enable a sweet Teensy-based sound card with on-board processing...if only it had the DACs!
 
PJRC can't make a board for a few people with some special needs. It will be general usable, so we can expect the max possible for the then choosen form factor.

I honestly think that there is a bigger market for a new board with more IO compared to another teensy in same form factor with "just" a speed upgrade. The current teensy lineup already offers a wide range of small form factor boards including a 600Mhz microcontroller which is still faster than any other microcontroller.

People that are looking for an even faster processor and are willing to work with dual core are very likely working on larger projects. And for larger projects there is actually not much on the market.
 
A "straight C SDK" is definitely not the direction PJRC will go. But I do want to move to using makefiles.

I have no comments on breakpoint debug at this time....
While PlatformIO usually generates its makefiles automatically, custom builds with Arduino or other code on PlatformIO can be managed with script files https://docs.platformio.org/en/latest/projectconf/advanced_scripting.html or via the project configuration file.

If the JTAG pins are accessible, you can also do breakpoint debug very simply with Arduino or other code on PlatformIO.
 
Back
Top