teensy 4.0 High Temperature application

Hi all,

I'm developing a product for motorsport use. It is a power distribution module (I've posted about this this project before), It distributes high current 12v power to various loads on the vehicles. Also is controlled via CAN bus and can act as a gate way etc. etc.

Screenshot (17).jpg

I have already made boards using a teensy 4.0 board and tested the product. Works great. But now id like to integrate the extra i/o of the 4.1 and put the 1062 ic and Pauls boot loader chip directly on to the pcb. Will allow me more freedom during routing. I'm pretty much out of room and I now need to add analog and digital inputs, LIN bus etcetera.

But I have concerns about the temp ratings of the general purpose grade I.MX ic's.

I've found a "extended range" version of the ic (MIMXRT1062XVN5B) though it is a little different in a couple ways.. one it is a 13x13 225 BGA package (which is good for me layout wise). Where as the 4.1 uses a 12x12 196BGA. Ill compare the pins after I submit this post.

On digikey in the parametric search it shows internal oscillator where as on the normal teensy 4.1 ic it shows internal/external?

Is there anyone that can help us get an idea if this chip is compatible with the bootloader chip and normal features of the teensy 4.1?

Any help, again would be greatly appreciated. If back end code needs to be changed to make it work I'm willing do to what's needed. Though I would need help with software side. Most of my experience is in hardware design.

Thanks,

Xavier M

PDF for extended version
https://www.nxp.com/docs/en/data-sheet/IMXRT1060XXEC.pdf
 
Did you see the different internal oscillator mentioned in NXP's documentation? I took a quick look (admittedly only a few minutes) and first impression is it looks the same as on Teensy 4.1. Maybe Digikey saw something I didn't? Or maybe it's really the same silicon and the difference on their website is just a mistake?

As for whether it will work with the T4 bootloader chip, the only want to know for sure it to try and find out.

If your main goal is only to have wide temperature range, you might look at this thread.

https://forum.pjrc.com/threads/7079...-on-custom-PCB?p=326347&viewfull=1#post326347

Going with a chip someone else has already verified works would be a lower risk approach.
 
Did you see the different internal oscillator mentioned in NXP's documentation? I took a quick look (admittedly only a few minutes) and first impression is it looks the same as on Teensy 4.1. Maybe Digikey saw something I didn't? Or maybe it's really the same silicon and the difference on their website is just a mistake?

As for whether it will work with the T4 bootloader chip, the only want to know for sure it to try and find out.

If your main goal is only to have wide temperature range, you might look at this thread.

https://forum.pjrc.com/threads/7079...-on-custom-PCB?p=326347&viewfull=1#post326347

Going with a chip someone else has already verified works would be a lower risk approach.

Thanks for the reply Paul.

After looking through these data sheets a bit more...

The Oscillator inputs are the same as far as pin names.

But there is an extra set of pins named "GPIO_SPI_B#_##", and "NVCC_SPI#", those make up 24 extra pads.

Screenshot (57).png

I don't know what "SPI" means in this case. I don't think its extra serial peripherals?.. This data sheet seems to be sort of an intro haha.. I'll look for a more in depth one.

Those are the only differences I see in pin names and numbers. same number of I/O and pin terminology otherwise.

I'll probably make a few prototype boards using this ic if i can figure out what these "SPI" pins are and what to do with them..

I guess ill need to see if the registers are shifted around as well right? For the bootloader and lower level code to work properly?
 
Found a document that explains the differences between 1060 and 1060X. I can't tell if its going to cause any issues though :confused:

The 1060 extended runs at a maximum of 528MHz instead of 600MHz. Which is already an option in the ide.

Also says that the 1060x added another dedicated flexSPI port. But I don't know if this will affect functioning as a teensy yet. Or if its possible to add the ability to use the i/o?

Screenshot (59).jpg

White Paper - https://www.nxp.com/docs/en/application-note/AN13592.pdf
 
Last edited:
As long as the extra SPI hasn't impacted the internal memory map for the peripherals then it shouldn't matter. You won't be able to use it easily but the default state would be for it to do nothing so it not being easily accessible isn't an issue.

Also on the automotive side make sure your power supply can cope with a load dump condition. When you crank the engine you first brown own with the voltage dropping a lot that you need to keep running through and then when the starter shuts off you'll get a spike that can get into the couple of hundred volts. An off the shelf 12v supply without extra protection can very easily go pop when that hits it.
 
Kinda looks like NXP put the RT1064 chip into a package with more pins and brought out the signals which were connected to a separate flash die inside the same RT1064 package. I believe (but have zero actual evidence to back up my belief) that RT1062 and RT1064 are probably the same silicon internally, though they might have different ROM or other customization on the top metal layer.

I'd guess RT1060X has a 50-50 chance of working with the T4 bootloader chip, if you wire up one of the supported Winbond flash chips, and of course do all the other design properly for details like power supply start up sequence. But again, I haven't actually used this chip, so this guesswork comes with a pretty big caveat.

If you don't have an appetite for risk, going with one of the wide temperature range RT1062 chips that @ted confirmed work would be much safer. If you do experiment with RT1060X, I hope you'll share the results.
 
As long as the extra SPI hasn't impacted the internal memory map for the peripherals then it shouldn't matter. You won't be able to use it easily but the default state would be for it to do nothing so it not being easily accessible isn't an issue.

Also on the automotive side make sure your power supply can cope with a load dump condition. When you crank the engine you first brown own with the voltage dropping a lot that you need to keep running through and then when the starter shuts off you'll get a spike that can get into the couple of hundred volts. An off the shelf 12v supply without extra protection can very easily go pop when that hits it.

The bottom right hand corner in the first picture I attached is my power supply circuitry. Made up of a "surge protector" and switching regulator that I've been using for almost 10 years now. All automotive grade and operates at a very low voltage (below 5v). So things still operate normal even while cranking. I've seen it actually protect my devices a few times. It will shut down and reboot once the voltage reduces to an acceptable level. But never seen it happen after cranking.

Little story; After I designed it I had some concerns about voltage ripple and contacted the guys at linear technology where the ic's came from. They invited me to their lab here in AZ to test it and said it was working perfectly! so cool..
 
I started to attach images of the differences I found through out the data sheets but got timed out and lost my post.

Long story short there are really no differences besides that one register for "GPIO10" which is labeled "reserved" on the normal 1060 ic.

All the fuses I scanned through are exactly the same.

There is some added functionality with the extra GPIO and something called a "scan control bus" added in the SVNS block diagram. But when I search for it nothing is found so maybe its a function that the chip automatically takes care of. Or they just left it out of the original 1060 document.

Not gonna lie though. After realizing how much there is to these I am getting a little worried. If I didn't have customers ready to test these for me I would take the risk no problem but as always time is an issue and there's no way to know if this will work..

On top of that I'm sure finding the 105c variant will not be easy.. and the 125c grade chip is in stock everywhere.. ugh.. Just cant win here haha..
 
Paul,

Does the MKL02 ic have a full time job? Or is it only communicating with the i.mx during programming and start up?

It looks like it is controlling some of the power up sequencing? but other than that is it needed for operating the micro during normal use?

Like if I built a circuit that can take over the power up pins and program the ic with a MKL02 externally?

Only reason I ask this is because its so far its one of two IC's I cant find with a automotive grade temp range variant...

Also is the DP83825 the only ethernet phy compatible with the teensy using the same pins?
 
Last edited:
Quick answer: Yes and no, MKL02 has wide temperature rating, and other PHY chips can work.

First, no, if you try to create a programmer with the MKL02 chip, it will not work for programming multiple chips because it assigns a unique serial number. After it pairs with 1 chip, you can't reuse it for more chips.

But otherwise, yes, mostly. Other than participating in the start up sequence and ongoing monitoring for 3.3V brown-out condition, MKL02 isn't essential for your program to run. It does monitor for the request to take control and enter bootloader mode. Future firmware may add other features. But no plans to ever make it a necessary part of the running your code on the main IMXRT chip.

NXP rates the MKL02 chip for -40 to +105 ℃. Look at "Operating Characteristics" near the bottom of the first page, or "Thermal operating requirements" on page 17.

https://www.nxp.com/docs/en/data-sheet/KL02P32M48SF0.pdf

Almost any PHY chip with RMII can work, if you configure it for 50 MHz external clock. Some chips have features like generating the clock from a crystal oscillator, which might also be able to work if you were to rewrite the low-level ethernet code (this was tested on Teensy 3.6). But the code as published creates the 50 MHz clock, so you need the PHY to have its RMII clock as an input, which virtually all RMII PHY chips do support. Most of them can have this basic config done with resistors connected to certain pins. If you configure over MDIO, you may need to write a small amount of startup code to put another PHY chip into this mode, if it defaults to clock output.

If you use a PHY which lacks the RXER signal, you can just wire that pin on the IMXRT chip to always indicate error free reception from the PHY. The MAC layer will still detect errors using the ethernet frame's CRC.
 
Almost any PHY chip with RMII can work, if you configure it for 50 MHz external clock. Some chips have features like generating the clock from a crystal oscillator, which might also be able to work if you were to rewrite the low-level ethernet code (this was tested on Teensy 3.6). But the code as published creates the 50 MHz clock, so you need the PHY to have its RMII clock as an input, which virtually all RMII PHY chips do support. Most of them can have this basic config done with resistors connected to certain pins. If you configure over MDIO, you may need to write a small amount of startup code to put another PHY chip into this mode, if it defaults to clock output.

If you use a PHY which lacks the RXER signal, you can just wire that pin on the IMXRT chip to always indicate error free reception from the PHY. The MAC layer will still detect errors using the ethernet frame's CRC.

Thank you for the reply Paul, always appreciated! This is one of the "automotive" ethernet PHY's I found that's in stock.

https://www.ti.com/lit/ds/symlink/dp83tc814s-q1.pdf?HQS=dis-mous-null-mousermode-dsf-pf-null-wwe&ts=1690799375085&ref_url=https%253A%252F%252Fwww.mouser.com%252F

I'll probably go with this one. It mentions RMII compatibility, 50Mhz input clock, and has the RXER pin.

I don't quite know what would require me to have to modify the library though?

BTW - I'm going to take your advice and make my first prototype using a minimum of 105*C rated parts (IMX RT, Flash and whatever else is not easily found with 125*C rating right now). As long as it can survive in direct sunlight in the interior of a vehicle ill be happy for version one. I'll create a high temp version at some point with the higher temp ratings to handle under hood temperatures. Once I have time to verify the MIMXRT1062XVN5B. Almost every part on a teensy can be replaced with a 125C* variant minus the MKL02.
 
Did you read the "Thermal operating requirements" on page 17. Mentions both 105 and 125. Maybe good enough?

Likewise with the IMXRT chips, pay close attention to the specs. Some are the die temperature inside the chip. Unless you clock very slow, you'll almost certainly have a temperature rise relative to ambient, and how much depends greatly on how well you thermally couple the IMXRT chip to the outside air. This is almost certain to be the weak link, rather than the MKL02.
 
Thank you for the reply Paul, always appreciated! This is one of the "automotive" ethernet PHY's I found that's in stock.

https://www.ti.com/lit/ds/symlink/d...75085&ref_url=https%3A%2F%2Fwww.mouser.com%2F

I'll probably go with this one. It mentions RMII compatibility, 50Mhz input clock, and has the RXER pin.

I don't quite know what would require me to have to modify the library though?

BTW - I'm going to take your advice and make my first prototype using a minimum of 105*C rated parts (IMX RT, Flash and whatever else is not easily found with 125*C rating right now). As long as it can survive in direct sunlight in the interior of a vehicle ill be happy for version one. I'll create a high temp version at some point with the higher temp ratings to handle under hood temperatures. Once I have time to verify the MIMXRT1062XVN5B. Almost every part on a teensy can be replaced with a 125C* variant minus the MKL02.
Any updates on MIMXRT1062XVN5B ?
 
Back
Top