IMP003 5 V tolerant UART?

A customer wants to connect an IMP003 breakout board to an Arduino UNO (can’t understand why) via UART. Is the RX/TX (any of them) 5 V tolerant or do I need to add a logic level converter to the board (or use an external one)? Mot STM32 pins are 5V tolerant, just wondering if that is the case here. I would expect to connect RX and TX and GND between the two devices. Will this work?

There are some 3.3v Arduinos if that’s an option or a logic level converter would work. If the comms is only UNO -> IMP then a resister divider would also work. The datasheet shows the max IO voltage as 3.6volts without any exceptions for UART operation so I’d stick to the datasheet especially if there’s a customer involved.

Make sure Tx and Rx are crossed over with resisters in between.

So:

  • On the way in (arduino TX to imp RX) you need to limit the voltage. You don’t need to use a level converter IC if you want to keep cost down - a 3.6v zener diode and 1k series resistor works fine (1k connected to TX, other end of 1k connected to 3.6v zener clamp and imp pin, bottom of zener grounded)

  • On the way out (imp TX to arduino RX) you don’t need anything. The ATMEGA chips, when running from 5v, have a minimum logic 1 input voltage of 3.0v, so the imp’s 3.3v output is compatible.

Even only 2 resistor to divide the tx from arduino is enough

Yeah, I chose 1 K + 2 K voltage divider; haven’t tried it yet though but should work just fine.