# Serial communication between two devices with seperate logic levels

The question is more about the DC-DC converter and baud rate between two separate logic level UART devices.

My master device operates at a 3.3v logic level, while my slave operates at a 1.8v logic level.

My proposed solution to allow communication between the two devices is to pull down the tx line of the master device to ground and get 1.8v from 3.3v using a simple voltage divider. To get my slave tx line back up from 1.8v to 3.3v, a simple boost pmic.

The devices communicate at a baud rate of 921600. Is my solution viable? And if so, what considerations must be made about the specs of the resistors in the voltage divider and the pmic boost converter?

Thank you.

• You will probably get a better answer if you provide part numbers and preferably links to datasheets for the two devices. The electrical characteristics need to be taken into consideration and some devices are tolerant of higher voltages on their inputs. That is also a pretty high baud rate so you should probably specify how far apart they are.
– Tut
Oct 31, 2017 at 19:17
• Spend the \$1~5 and use a logic level converter. Using voltage division may work, but it's not nearly as precise of a method.
– Bort
Oct 31, 2017 at 19:21
• Do I understand that you want to sustain a roughly error-free communications rate of about a million bits per second; (1) converting 3.3 V TX to 1.8 V RX in one direction and; (2) converting 1.8 V TX to 3.3 V RX in the other direction? That's all? Where does the boost PMIC come in, here? Are not these just signals?
– jonk
Oct 31, 2017 at 19:23
• @jonk The boost converter is for the tx line of the 1.8v slave device to get the 1.8v back up to 3.3v for the master device. Oct 31, 2017 at 19:32
• You misunderstood the purpose of a DC-DC converter. It's for power conversion, not for logic level conversion. For the latter, you need a level converter. You can build it your own with one transistor and some resistors per channel, or use a level converter IC which usually offers multiple channels. Oct 31, 2017 at 19:35

"shopping" questions are off-topic, so instead I will explain how to do the search, so you can do it yourself next time.

You need a chip to convert 1.8V to 3.3V levels, presumably CMOS. As explained by Janka in the comments, this is not a DC-DC converter, the proper name is "level shifter" or better "logic level translator".

There are many different designs, the simplest are simply open-collector or open drain transistors, but these require pullup resistors which create a compromise in speed versus idle current. For faster switching you need a low value pullup, which then draws lots of current even when not in use.

Your high bit rate would be better handled with a chip dedicated to voltage translation, which will be low power and high speed.

Go there.

Click the usual suspects: "in stock", packaging "bulk, cut tape, tube" since you don't want a reel of them, then apply filters.

Now you need either one chip with 2 bits, one bit in each direction for your serial port, or 2 chips with one bit each. Problem with the first solution is that most chips with 2 bits will have both in the same direction. Anyway, I will click:

"number of channels" = 2 (presumably one channel is one direction, you need both directions)

"circuits per channel" = 1 to 4 because we don't want a package with too many pins.

This one comes up, in easy to solder SOIC, it has 2x2 bits and you can set the direction independently for both, so you could have 2 extra lines if you want. If you want only one bit try this one.

• Thank you for the guidance, however, can you explain what 2 bits have anything to do with a level converter? Oct 31, 2017 at 20:35
• Well you want to translate one bit (=one signal) in each direction, so better avoid 16-bit chips which will be an unnecessary soldering hassle due to lots of pins. 1 or 2 bits chips would be best. "bits" is synonymous to the number of signals being translated. It is called "bits" because the 8-bit and 16-bit chips are usually attached to 8-16 bit busses for voltage translation. For 1-2 bit chips it would probably be called "lanes" or "channels" or something. Oct 31, 2017 at 20:42
• Got it, that makes more sense now Oct 31, 2017 at 20:44
• digikey.com/product-detail/en/texas-instruments/SN74AUP1T34DCKR/… This looks appropriate for my application. Would a voltage divider to get my 3.3v/1.8v Vcca and Vccb rails have any unintended side affects? Oct 31, 2017 at 21:00
• If you have one 3V3 powered circuit and one 1V8 powered circuit then you already have the power rails, no need to generate them. It is better to power the translator from the actual power rails, because if one is missing, the translator will not output any voltage (it is designed to do so) so it won't send voltage into an unpowered chip, which would be bad. BTW the chip you link processes only 1 signal so you need 2 chips. Oct 31, 2017 at 21:07

At nearly 1 Mbit/s, it's a good idea to use deliberate level converters. They do exactly what you want done. Individual ones come in SOT-23 packages, so are small. You supply the power and connect the logic signal on each side, and the chip does the conversion. These usually have a direction input, but in your case you can tie that to ground since the direction is fixed and known ahead of time.

You can probably get by with a resistor divider when going from high to low voltage, but that will hardly save you much. In fact, it will take more space, and certainly more current. At this speed, you have to think about the effects of capacitive loading on the resistor divider output and scale the resistors accordingly.

To reduce the settling time, you lower the resistances. However, that also increases the current. If this is a battery operated device, then a level converter is almost certainly a win.

For example, let's say the worst case possible loading is 100 pF. A resistor divider with 10 kΩ output impedance, for example, would have a 1 µs rise time. That's too slow to be useful at 1 Mbit/s. I'd want at least 3 time constants in a bit time, with 5 being better. That means the output impedance of the divider should be 2 kΩ or less. That's certainly doable, but a level converter will draw much less power, especially when just being held at the logic high level.

• digikey.com/scripts/DkSearch/… This looks appropriate for my application. Would a voltage divider to get my 3.3v/1.8v Vcca and Vccb rails have any unintended side affects? Oct 31, 2017 at 21:02