My project uses four different modems (one 3v3 LVTTL(?) and three 5v TTL) for AT communication.
Each modem has a UART interface (TTL compatible).
For my application, i chose the CP2108 to communicate with those four modems using one USB connexion.
In the modem's datasheet, the operating voltages of the UART are not indicated. Just "TTL compatible".
I chose to add a level converter to protect the input of the cp2108 which can only accept 3v3.
I took the reference txb0108 to do the convertion. I supplied a voltage of 3V3 for side A and 5v for side B. for the 3V3 modem i change the voltage of side B to 3v3 instead of 5v for the other modem. In the datasheet of the txb0108, it's ok for having the same voltage on both side of the level converter (A and B).
When I look at the oscilloscope, I observe the level conversion correctly and i can communicate with the modems.
but I still having a problems to communicate with one modem (5v).
For side A, the voltage does not drop enough to get a logic '0'.
I've add a pull down resistor of 6k8 on the pin and it's seems working. but for me it's not a proper solution because in the documentation of the level converter the suggested pull down resistance must be greater than 50k.
I tried with a 100k but without success.
I have read few articles about using the txs0108e instead of the texb0108 level converter and some people get apparently better results.
I do not know if this will solve my problem.
I also read some stuff about push-pull and open drain for the UART. i don't know wich technology is the best for my application.
Is the TXB0108 finally a good reference for my application ?
What would be the best schematic to handle communication with my CP2108 and 5v uart modem (other solution exist)?
Here is more information about the 5v modems. I will only use the RX / TX pins.
Input TTL compatible: VI Hi min +2V VI Lo max +0.8V VI max +5.5V
I found this reference to do the conversion:
What do you think about it?