Teensy 4.0 First Beta Test

Status
Not open for further replies.
Sounds great, Looks like I have lots of stuff to test and play with!

Will there be a new IDE beta release for it?
 
For 1062, I made several speed improvements in the bootloader. The lag from clicking Upload or pressing the button to when uploading actually starts should be much less now.

The restore process is still slow, and always will be because it's using JTAG boundary scan. But the restore is supposed to result in a working LED blink and USB enumeration as RawHID which (hopefully) works with all versions of Windows, and of course Mac & Linux. I did the restore process as my last test with these 4 boards, so when you get them Arduino should detect it as RawHID.

These 1062 boards also have the boot fuses and top flash sector (where the restore image is located) set as read-only. It should now be impossible to brick the board by writing to the fuses. I'll post a program soon so you can give it a try.
 
15 sec Restore time was visible - but not critical as long as it is expected - and that flashing RED LED confirms that there is work in progress. Will be cool have working blink afterwards - and happy Windows :) Good to know that is safe/tested and effective ... unbrickable^2.

Seems IDE will have to update {boards.txt and imxrt.ld} to support build of the old T4_B_52 and the new T4_B_62.

Any chance the speed improved bootloader process will break TyCommander upload? New command language or just more efficient? Have been using that exclusively for some weeks - between the working CmdLine {Editor driven through FrankB's IDE build} compile and multiple SerMon it saves a lot of grief with 3 or 5+ active Teensy's.

I had not observed a lag in upload given compile/upload is about 5 seconds now there isn't time to notice lag.

Will be interesting to see the new Breakout - not sure if this one will have 1::1 pin to header mapping - or if we need a map since I think I broke the one I got for B#1.
 
Will there be a new IDE beta release for it?

Yes. I've uploaded 1.46-beta11 and updated msg #2 with links.

This has updated Teensy Loader and Arduino boards.txt and linker scripts and board ID in teensy_ports, so things should generally work. You'll see both beta #1 (1052) and beta #2 (1062) in the boards menu. I also updated the pictures in Teensy Loader, so it shows in white text which board it's detected. The picture of the chip really is the 1062 also, though I doubt it's readable at that small size.

At this point almost nothing in the core lib is updated. I probably won't be able to do almost anything on the software side for another week, even just merging pull requests. We're getting so very close to the first pre-production run, and I need to focus on making that happen. Once boards are being built, I'll be able to catch up and focus on software.


Any chance the speed improved bootloader process will break TyCommander upload? New command language or just more efficient?

Just more efficient. Most of the speedup is before USB enumeration begins, so unlikely to break stuff.
 
Wow things are moving fast now. See we are going to be real busy for awhile testing and playing with new hardware again.

I am sure I will somehow wind up testing the 15sec reset at some point, seems like if its going to happen it will happen to me :)

Looking forward.
 
Good to know the upload change not likely to break TyComm. I pulled the IDE - I suppose it will update the 1052 bootloader for the same uplaod update?

I've probably felt the need/want for 15 sec RESTORE at least 5-6 times it seems.

Yes, I see the busy T4 specific days of the past ahead again - rather than casual 'fun' with USBHost and Displays. Interesting the post yesterday about USBHost_t36-USB-Mass-Storage-Driver-Experiments
 
Confirmed - installed 1.46b11 on IDE 1.8.9 no problem. Used TeensyLoader for Blink upload and it worked. Captured Verbose and it is still 'Teensy 4-Beta1 (IMXRT1052), version 0.02' and the 15 sec Restore same old 'unknown USB' on Windows - but working happily.

Thought maybe it would allow preview of bootloader change - but that would be unneeded work for and risk to the b1 1052 units. Will give it all a try when 1062 beta arrives - USPS texted me the tracking number :) :: Expected Monday 22nd.

So many parts and pieces !!! ... I see boards has 'teensy4b1.name=Teensy 4-Beta1' and same RAM there and 1062.ld
teensy4b2.name=Teensy 4-Beta2
teensy4b2.upload.maximum_size=1572864
teensy4b2.upload.maximum_data_size=262144

Will there be a way to specify run speed from the IDE? Not seeing 'menu.speed' FrankB's Compile.cmd requires for CmdLine compile it seems with boards.txt required "menu." param passing order. Wondering if that will be an issue when Arduino IDE flips on their CmdLine build?

github.com/Defragster/Tset updated for TeensyDuino Beta 11. For anyone on Windows is using FrankB's Compile.cmd with the TSET mods, boards.txt changed for Beta1 board and Beta2 board added.
 
Last edited:
Just as a heads up on CAN-FD

If you are interested in using the CAN-FD connection that Paul broke out there are going to be several challenges. One there really isn't any library available for CAN-FD or CAN on the T4. One is in progress that @tonton81 is developing. But be ware its not a simple issue of fixing the current flexcan library either.

The second challenge will be that there aren't many options for interfacing CAN-FD to other Teensies unless... See this post for how you get CAN-FD on TLC and T3.x: https://forum.pjrc.com/threads/5432...ip-CAN-Teensy-FlexData-Library?highlight=pang
 
Can a SD socket be mounted at all below the board?
if yes, OK.
if not, maybe think about a 1 mm spacing (instead of 1.1 mm microSD spacing) as there are 1mm connectors around (I adapted one for T4 beta by bending the pins).

I'm exploring this suggestion today, since there's really no clean way to solder a SD socket directly to the board. The orientation we had on the beta #1 boards would have required a SD card to hang well into the space were the USB cable plugs in. The orientation on beta #2 doesn't really work either, because the SD card would need to hang into the space where all the bottom side capacitors are soldered.

This is the FFC connector I'm using as a model for the pads.

https://www.digikey.com/product-detail/en/amphenol-icc-fci/HFW8R-1STE1LF/609-1788-1-ND

There is just enough space so end ends of the USB host pads are still accessible when there's no cable plugged in. Of course, plugging in a cable blocks access to those pads. It also requires bending the cable somewhat in about 2 mm of space to miss the USB cable. Not ideal, but probably still more usable than 1.1 mm pitch where there's really no good way to actually mount a SD card directly.
 
Looks like mine should arrive tomorrow as well.

@Paul - let us know if there are things that you wish to test out and/or update soon...

My thoughts are, to:

a) Update the pin table - starting probably in core_pins.h - as there are pin differences between Beta 1 and Beta 2/release version.
I am assuming the pin table as mentioned in posting #3 link to: https://forum.pjrc.com/threads/54711-Teensy-4-0-First-Beta-Test?p=200361&viewfull=1#post200361

a1) Wondering about creating some new IO pins for the SD Port signals as they can be useful for other things like another complete SPI port.
More information: https://forum.pjrc.com/threads/54711-Teensy-4-0-First-Beta-Test?p=200815&viewfull=1#post200815

b) Check/Update all of the Hardware Serial ports: I know I need to change HardwareSerial2.cpp for the different IO pins used (6,7) goes to (7, 8)

c) Test out SPI. Probably try out our ILI9488 and/or ILI9341 drivers we updated for T4 beta 1...
Side Note: on ILI9488, our current stuff for frame buffers that works with B1/T3.6/T3.6), we use an 8 bit frame buffer with color palette to fit in memory. With this version we COULD create a 16 bit frame buffer.

C1) Create additional SPI object(s) - SPI1 for the pins under the chip (Hopefully we have access to all of them on the breakout board). And if a1) SPI2 on those pins.

D) Update and try out my Flex pin support code - Has additional FlexIO controller, plus pin differences, plus...

E) Check out USB Host code to see if things are working... (If not maybe will need Paul to fix)

F) Maybe try out Wire code...

Probably enough to keep me busy for a few days ;)
 
Last edited:
@Paul - let us know if there are things that you wish to test out

My biggest concern for testing is the powerdown circuitry. On the 1052 betas, the 3.3V power was always on. With this new board, the 3.3V regulator can be completely turned off. Power remains applied to the USB regulator, and its output feeds the SNVS regulator (which controls the power management stuff).

I'm a little nervous about this feature from a usability point of view and even considered adding a green power indicator LED to the board. You'll see I put one on the breakout board. Imagine you're a novice user and that green LED isn't present. What "bad" things can you do that are hard (or impossible) to recover?

Unlike the 1052 beta, please don't worry too much about bricking or damaging your board. We'll have plenty more in just a few weeks.
 
My biggest concern for testing is the powerdown circuitry. On the 1052 betas, the 3.3V power was always on. With this new board, the 3.3V regulator can be completely turned off. Power remains applied to the USB regulator, and its output feeds the SNVS regulator (which controls the power management stuff).

I'm a little nervous about this feature from a usability point of view and even considered adding a green power indicator LED to the board. You'll see I put one on the breakout board. Imagine you're a novice user and that green LED isn't present. What "bad" things can you do that are hard (or impossible) to recover?

Unlike the 1052 beta, please don't worry too much about bricking or damaging your board. We'll have plenty more in just a few weeks.
@KurtE read my mine about trying out the ILI9488 library with the new board so that is probably the fist thing I am going to check.

After that I will check the on/off switch and see what will happen in different scenarios. Anything in particular you want me try out when using the switch?

Just a question though - when we cycle the switch we will be a reset, or is the equivalent of a pause.
 
For what it is worth, I have started hacking up a version of Core for Beta 2 board:

I put up the initial changes for Pins 5-8, 30,31, 33
I also made the changes in Serial2 for which pins to use for TX, RX
Plus made Serial8 conditional on being 1052...

Changes up on new branch: https://github.com/KurtE/cores/tree/T4_Beta2_board

Can not test it yet (no board) - but compiles test program for both Beta 1 and Beta 2 boards.

But thought I would post in case anyone wishes to try it out.

Also not sure if anyone would find it useful, but I converted the text tables in earlier postings for the Beta 1 pins and Beta 2 pins into XLS file... Could upload (zip) file if useful.

Note: I have not yet done 1A) above, but may try
 
Also not sure if anyone would find it useful, but I converted the text tables in earlier postings for the Beta 1 pins and Beta 2 pins into XLS file... Could upload (zip) file if useful.

Note: I have not yet done 1A) above, but may try
Sure that would be useful.
 
@KurtE

Just downloaded updated core files. The only I can say right now before company gets here is that for B1 board graphicstest9488 still compiles and runs. It also compiles with no issues for the B2 board. Will test if it works tomorrow, hopefully. :)
 
Note: Still working on it. On the Beta 2 page I have logically added the SD Card pins as Pins...
I have not done that yet in code. Nor finished all of the things these pins can do, like the PWM pins..
Or XBar pins...

Also let me know if I screwed up something...

Edit: I know that some of the SD card pins were wrong, will update when I have working version...

Edit: Updated file fixed the GPIO pins at end, plus incorperated the XBar pins (Thanks @mjs513), plus some other fixes, to where some data got shifted down.
also removed FlexIO 3 definitions from the Beta 1 page as 1052 does not have FlexIO 3 controller.
 

Attachments

  • Teensy4 Pins.zip
    23.8 KB · Views: 131
Last edited:
FYI - I just pushed an update to my more core files that did my a1) from earlier posting. I believe the order of SD pins as given in earlier posting about the positions of the pins on the bottom of board. I went in position order (IO pin SD usage)
34 Data1
35 Data0
GND
36 CLK
3.3v
37 CMD
38 Data3
39 Data2

I also pushed up a new Branch of the SPI library: https://github.com/KurtE/SPI/tree/T4B2_SPI1_SPI2
That for this board creates two more SPI objects SPI1 and SPI2...
SPI pins (10, 11, 12, 13)
SPI1 pins (0, 26, 1, 27)
SPI2 pins (36, 35, 34, 37)

Again it compiles simple ILI9488_t3 app for Beta 1 and Beta 2 (note I have not updated the 9488 library yet to allow SPI1 and SPI2....)

And the app still runs on Beta 1...
 
Quick update, I updated the zip file in posting #2269 with some fixes to IO pin numbers for last two, plus XBar information, plus some other fixes...
 
@KurtE

You going to use the same constructs for IMRTX1062 SPI1 and SPI2 as for the 3.5/3.6. If you are I will do the updates for ILI9488.

BTW> The spreadsheet comes in handy. I have it in a word document now and I am always using it :)
 
KurtE said:
Again it compiles simple ILI9488_t3 app for Beta 1 and Beta 2 (note I have not updated the 9488 library yet to allow SPI1 and SPI2....)
Just pushed change that should add support for SPI1 and SPI2 for IMRTX1062 to the ILI9488_t3 master lib.
 
Just pushed change that should add support for SPI1 and SPI2 for IMRTX1062 to the ILI9488_t3 master lib.

Sounds good. Note: we could also make SPI1/SPI2 on beta 1 as well as these are the same IO pins.... But not sure how much time we will take to test it on B1 boards.

@Paul - Wonder if we need a new thread? This one is labeled First-Beta-Test? Probably does not matter either way
 
KurtE said:
Note: we could also make SPI1/SPI2 on beta 1 as well as these are the same IO pins.... But not sure how much time we will take to test it on B1 boards.
Not that I mind testing but with the 1062 coming next week and 1052 going to be phased out is worth the effort - besides not sure how to get to the underside pins :)
 
Status
Not open for further replies.
Back
Top