Is there a reason you're not using a TXU0202 (
Mouser,
DigiKey) or even two 74LVC1T45's in SOT-26 (
LCSC,
Mouser) dead-bugged (soldered directly to wires and covered with heatshrink)?
I keep telling microcontroller users to stock up on unidirectional level shifters (TXU0202 for UART, TXU0204 for UART+RTS/CTS, TXU0304 for SPI) and an occasional 74LVC1T45, because they have so often saved my
bacon microcontroller. They're trivial to use, and can handle higher speeds than needed (200 Mbaud between 3.3V and 5V). One usually adds 0.1µF = 100nF ceramic capacitors near the chip, between VCC and GND (one on each side), for stability, but that's it. (They are supply bypass capacitors: ensure stable VCC even when the chip is switching and draws current.) I recommend against using bidirectional level shifters, because they often have this funky glitch at the low level when it erroneously changes directions for a very short duration, and
sometimes it causes problems or communication errors. For I2C, I prefer TI ISO1640/42/43 (3€ to 4€ at Mouser) which is an isolating translator but wired just like the others (one 0.1µF cap between each VCC and GND pair), because I2C voltage level translators have too specific requirements about the voltage levels used for me to use comfortably.
(TXU0n0m are fixed-direction, but 74LVC1T45, 74LVC2T45, and 74LVC8T245 have a separate direction pin for all 1/2/8 data lines, which can be very useful when interfacing to say parallel buses like those on some ILI9341 etc. display modules. In my 74LVC1T45 UART translator board, the direction pins are fixed. And you can obviously use TXU0304 for UART also, just tie the two unused inputs to GND, and leave their corresponding outputs unconnected.)
Again, I'm just a hobbyist myself, not a professional! I do have a scientific background, so I do tend to read the datasheets very carefully, that's all.
If bumbledork-me can do this, everyone else can too!
To make things easier, I've created a few Public Domain break-out boards at EasyEDA so anyone can (modify and) order them from JLCPCB and others:
two 74LVC1T45W6-7 for UART (0.4" × 0.4" or 10mm × 10mm board),
TXU0202 for UART (0.4" × 0.4" or 10mm × 10mm board),
TXU0304 for SPI (0.6" × 0.65" or 15mm × 17mm board), and even an
ISO6721 UART (RX+TX) isolator (0.7" × 0.85" or 18mm × 22mm) for when you need both isolation and level shifting. The components cost way under 1 USD per board, except for the ISO6721 which costs under 1.5€ at Mouser. You are absolutely free to use them and create your own derivatives in EasyEDA, even to sell if you want.