Access to more GPIOs on Teensy4.1

JDC762

Member
Looking at a project that needs 100 dedicated GPIOs to monitor state changes. They would be set as pull-up interrupts, and then a few other GPIOs for control/comms with a host Teensy (code already written and working).
MIMXRT1062DVJ6 datasheet says that the chip has 127 GPIOs (124 tightlycoupled). If I do the development work using the Teensy4.1 for a cut down bench prototype say for 50 GPIOs and say 5 for control/comms, would I be able to use/expose the other GPIOs and use them for the remaining 50 GPIOs needed (total 105)?
Is this possible, and if so, I suspect it will need the GPIO mapping file increased, and will it work with the Teensy libraries expecically if just use the extra GPIOs as basic inputs?
Welcome your thoughts.
 
would I be able to use/expose the other GPIOs and use them for the remaining 50 GPIOs needed (total 105)?

To do this, you would need to create your own PCB design using the T4 bootloader chip.


If I do the development work using the Teensy4.1 for a cut down bench prototype say for 50 GPIOs and say 5 for control/comms

13 of the 55 possible GPIO pins are quite inconvenient to access, so you might want to target use of only 42 for your prototype.

For those last 13, the SD card has 6 and the QSPI memory pads on the bottom have the other 7.

Or maybe Mark's suggestion to use I/O expander chips might be an easier path? Or you might consider mux chips, like shown on the USB MIDI page. Scroll down to "Connecting Many Buttons & Knobs/Sliders"


I suspect it will need the GPIO mapping file increased, and will it work with the Teensy libraries

Yes. On the T4 bootload chip page, scroll down to "BGA Pinout Diagram" and look for the notes about using extra pins. You'll find links to forum conversations where how to do this has been previously discussed. If you get stuck or just have questions about the details, those threads would be the place to ask.

Also see the warning about SD_B1_05. Even though it seems available, do not use that pin!
 
Paul

Thanks for your help it is much appreciated, and helps tremendously.
For the prototype I can use less pins to make it easier to access pins that are easier to get to.
As for using mux or extenders, for my application this would not be fast enough as I am using the 600MHz and the 3-5 clock cycles to get the timing I need anyway. I do not have time to switch to other devices including settle time due to induced capacitance; thanks for the suggestion though.

Top tip on pin NOT to use, I imagine that is a world of hurt finding that out the hard way.

Thanks again. How do I buy you coffee?
 
I'm trying to access a few more pins on the Teensy 4.1 a t present as part of a MIDI controller build. I've soldered wires onto the QSPI memory pads, but it's a dodgy process! Fortunately the only pad I've ripped off the board so far is a duplicate. If anyon knows of a better way to access these pins I'd love to hear it. To access the SD card slot pins I've ordered an SD card extender cable which I'm hoping can be cut and soldered onto a PCB header. The target is 48 usable pins.
 
Back
Top