The Teensy 4.1 is a real powerhouse of a control board. You can see this from the specs below. This board is well suited to be a control board for a board due to the massive variety and number of ports available.
There are some downsides to this however. The processor consumes a lot more power than the M0 or even M4 chips that are used in the Arduino or Feather boards. You get 5x the processing speed but at 5x the power consumption too.
Another downside vs the SAMD21 and 51 parts is the development tools. This is a different family of chip. PJRC has done a good job of integrating the chip onto the board and providing the the Arduino plug in. I have found that after setting up this board, my sketches fail to compile due to errors in library calls. It seems that the libraries and setup of this board are not compatible with the other boards, so it needs to be setup in it’s own environment. In theory this can be done with Docker (I found references online) but I have not done this yet. I resorted to loading the custom tool chain onto a dedicated machine for just this processor.
I recently dusted this fine board off and connected it to some sensors to get an idea of how it would work. After having to fiddle around with the SD library (which seems to be back level) I did get the unit to capture data and log it to the micro SD card.
Below is an image of the prototype arrangement that I setup.
The board here is connected to the bmp280 and LIS3dh, my standard rocket sensors. I would probably not put this in a nosecone for basic logging as the power consumption and complexity outweigh benefits. But for the Mars Balloon, the high speed processing makes it possible to process data on the probe and send processed data to the satellite, reducing bandwidth requirements.
This board has wiring for Ethernet but needs a special board. Similarly it has a USB port wired that can be used for keyboards etc. It lacks a wireless function, which seems like a liability to me, and also lacks a battery circuit like the feathers. It does have a on board clock that can be run from a 3 volt battery, which is on the list of features to test out.
Posted on 7/2020
This is a fabulous board that has the combination of a fast processor and storage. The big concern for me is the power consumption being pretty high. For the little rocket payloads, this board is overkill but for a UAV for the actual balloon this class of board could be handy. It is supposed to be able to reduce the clock rate but I did not experiment with this feature. You can also expand the RAM and Flash with external chips. You can order the chips online but watch for shipping as some of mine took forever to arrive. Be sure to solder the expansion chips on before the header pins. I put the headers on first, now trying to figure out to solder the expansion chips on.
Here is a photo, very clean and well made board:
The expansion memory chips go on the bottom.
There is a 4.0 board but it lacks the micro SD and also the memory expansion so of less use for me.
You can run some benchmarks from the PJRC folks and see how fast this board (vs other arduino type boards) is which is instructive.
Here are the main features of this compact superboard:
- ARM Cortex-M7 at 600 MHz
- 1024K RAM (512K is tightly coupled)
- 2048K Flash (64K reserved for recovery & EEPROM emulation)
- 2 USB ports, both 480 MBit/sec
- 3 CAN Bus (1 with CAN FD)
- 2 I2S Digital Audio
- 1 S/PDIF Digital Audio
- 1 SDIO (4 bit) native SD
- 3 SPI, all with 16 word FIFO
- 3 I2C, all with 4 byte FIFO
- 7 Serial, all with 4 byte FIFO
- 32 general purpose DMA channels
- 35 PWM pins
- 40 digital pins, all interrrupt capable
- 14 analog pins, 2 ADCs on chip
- Cryptographic Acceleration
- Random Number Generator
- RTC for date/time
- Programmable FlexIO
- Pixel Processing Pipeline
- Peripheral cross triggering
- Power On/Off management
The 4.1 adds the ability to connect ethernet via a cable, 8 Mbyte of flash (expandable!)