Interfacing a 3.3V RS-232 directly in Teensy 4.1

nitrojam

Member
I know that most of the time RS-232 has a voltage > 3.3v but I do have a device that has a RS232 "like" interface which has a maximum 3.3V output (Vcc).

As a consequence, would it be possible to interact with it from Serial1 pins for example ?
1715096666054.png


Thanks !
 
While RS-232 has higher voltage, on the Teensy 4.0/4.1/micromod (and on the legacy Teensy 3.0,3.6, and LC), the voltage on the TX and RX pins must be 3.3 volts. If you use higher voltage, you risk burning out the Teensy. Only on the legacy Teensy 3.1, 3.2, and 3.5 can you feed it 5 volts. Even on the legacy Teensies that can accept 5 volts, they cannot accept 12 volts.

Thus if you want to hook up a serial device that uses 5 volts, you need to drop the voltage on the incoming data (RX), and possibly boost the voltage on the output (TX).
 
Indeed, the rs 232 voltage here is Vcc and Vcc is 3.3v.

I also measure / check it on the oscilloscope and it is indeed between 0v and 3.3V so it is safe for the teensy.

The question is : can the teensy decode the RS232 protocol in order for me to communicate with the device ?
 
Last edited:
ECHOBOTH is a very old sketch. If it were brought up to date and inline with current Teensyduino, then yes there no reason why it should not work.
 
Indeed, the rs 232 voltage here is Vcc and Vcc is 3.3v.

I also measure / check it on the oscilloscope and it is indeed between 0v and 3.3V so it is safe for the teensy.

The question is : can the teensy decode the RS232 protocol in order for me to communicate with the device ?

Other than the voltage the RS232 protocol is the same the standard uart protocol only with the bits inverted.
So Serial1.begin(57600,SERIAL_8N1_RXINV_TXINV); should configure serial port 1 to be compatible with the signals you are getting.
 
Back
Top