This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

STM32 - NRF52832: power supply over RX/TX pins?

Hi,

I have connected STM32 with nrf52832 using STM:TX -> NRF:RX and STM:RX -> NRF:TX.

The communication works fine when i initialize UART on both devices.

The issue that i have is that if i turn off the NRF board (plug the battery out) and have STM awake and UART initialized the NRF board is UP and running.

Is it possible that the NRF board is power supplied over RX/TX pins?

Thanks

Parents
  • Yes, it's called phantom power and is caused by internal schottky protection diodes being forward biased and conducting power from the powered part to the unpowered part. This affects both parts depending on which is powered and which is unpowered. The solution is to either use level translators (buffers which can tolerate this such as the SN74LV1T34), buffers which have only a schottky diode to Gnd (such as 4050), a shared power rail or if none of these fit in your design a simple series resistor in both Rx and Tx, value as high as possible which allows the chosen baud rate to still work given distributed and lead capacitance.

    The problem with simple series resistors is that either device may be in sleep mode consuming less than 1uA; to drop the 3 volt supply (ie the Tx or Rx pin) to below (say) 1 volt to ensure a reset on the phantom-powered part requires a minimum value of 2MOhm. Such a resistor with (say) 5pF pin and board capacitance has a CR risetime of 10uSecs, more if the Tx and Rx leads are long. Clearly the Tx and Rx will not work unless the baud rate is now limited, perhaps to a max significantly less than 115kbaud which has a cycle of 10uSecs. If you are only using 9600 baud then just stuff in a couple of MOhms in each of the Rx and Tx lines and all should be well until you find a part with a sleep current of only 100nA .. the buffer is the best and safest option.

Reply
  • Yes, it's called phantom power and is caused by internal schottky protection diodes being forward biased and conducting power from the powered part to the unpowered part. This affects both parts depending on which is powered and which is unpowered. The solution is to either use level translators (buffers which can tolerate this such as the SN74LV1T34), buffers which have only a schottky diode to Gnd (such as 4050), a shared power rail or if none of these fit in your design a simple series resistor in both Rx and Tx, value as high as possible which allows the chosen baud rate to still work given distributed and lead capacitance.

    The problem with simple series resistors is that either device may be in sleep mode consuming less than 1uA; to drop the 3 volt supply (ie the Tx or Rx pin) to below (say) 1 volt to ensure a reset on the phantom-powered part requires a minimum value of 2MOhm. Such a resistor with (say) 5pF pin and board capacitance has a CR risetime of 10uSecs, more if the Tx and Rx leads are long. Clearly the Tx and Rx will not work unless the baud rate is now limited, perhaps to a max significantly less than 115kbaud which has a cycle of 10uSecs. If you are only using 9600 baud then just stuff in a couple of MOhms in each of the Rx and Tx lines and all should be well until you find a part with a sleep current of only 100nA .. the buffer is the best and safest option.

Children
No Data
Related