Converting serial signal (12V-5V) and reading it using Arduino
For the 12V->5V direction a simple 2-resistor voltage divider (e.g. 7kOhm + 5kOhm) will probably be perfectly fine.

Usually you can't just assume that the +5V source can actually sink any amount of current.

Plus, normal diodes are relatively low bandwidth so that your signals may become more or less distorted even for only a few kBit/s. Schottky diodes mitigate this issue.

Another simple solution could be like this (use Schottky if possible):







simulate this circuit &ndash; Schematic created using CircuitLab