I have an application where I need 4 serial ports - 3 will be sending and receiving. The packet size will be up to 255 bytes on these 3 "main" ports. The 4th port will be receive only, and its packet size will be 6 bytes. There is no flow control. The data rate on all ports is 115,200 baud. The 3 main ports will send or receive data packets approximately once per second. Most data will be half-duplex, although occasionally it will be necessary to send and receive simultaneously from a port . The 4th port (the one that handles 6 bytes), will get packets at an approx 50 packets/second rate.

The TEENSY will have to calculate CRCs on all ports, and will have to do a small amount of data manipulation as well.

I was planning to use the hardware serial ports for the 3 main ports, and software serial for the port that has to deal with only 6 bytes. It is important that the 3 main ports be able to not miss any incoming data. The 4th port is less important and can "miss" a packet now and then with no ill effects.

Will a TEENSY 3.2 running 90MHz be able to keep up?

1 Answer 1


Once per second? I don't see any problem, I will try to calculate:

3 ports: send + receive 255 bytes, let's say 270 bytes (with start/stop bits, probably way too much) per message:

3 * 2 (send + receive) * 270 = 1620 bytes 4th port: 50 * 6 bytes = 300 bytes

Total: 1920 bps

The serials can easily keep up with this, so that is not a problem.

90 MHz is 90 million instructions per second. As you can see, handling 1620 bytes is nothing ... it could do many more, a factor of multiple thousands more.

Unless of course you want to do heavily calculations for the received/sent data.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.