Notes;
- The HC-06 Tx pin is able to work with 5V but Rx pin not (no tolerance), so a voltage divider should be added between Rx(BT) and Tx(STM).
- The divider can be a resistor and a zener diode divider circuit. And it provides to reduce 5V to 3V3 for RX(BT) pin.
- It is not mandatory to use 1k and 2k2 resistors (in the picture). It can be used 1k-2k2 or 2k-4k or 5k-10k etc. The main idea is getting about 3V3 for RX(BT) pin.
- For the zener diode divider circuit, the R and D values should be calculated to obtain about 3V3. Sample values; R:2k2 resistor and D:3V3 zener diode.
- Also, a schottky diode circuit (in the picture) can be used to seperate 5V and 3V3 from each other to protect RX(BT) pin. Sample values; D: NTE637, BAT54 diodes.
- The schottky diode circuits default working principle: If TX(STM) pin is 0V low level, RX(BT) pin is 0V low level. If TX(STM) pin is 5V high level, RX(BT) pin is 3V3 high level.
- Besides all, the sink-source currents of the STM32 board should be considered while making projects to avoid damaging the board. STM32F407 board sink and source currents: 25mA as defined in the datasheet.