Electronic – Connecting the Beaglebone Black to the KK Mini flight controller

3.3v5vbeaglebone blackdc/dc convertergpio

The flight controller needs to be sent 4 PWM signals at greater than or equal to 5 volts. Since the Beaglebone Black(BBB) GPIOs can supply only 3.3V I needed to change the signal from a 3.3 volt one to a 5 volt one. In order to do this I looked up online and mostly everywhere I have found this circuit for logic converter from 3.3V to 5V.

logic converter

But when I connected the low side to my Beaglebone GPIO's and the other side to the flight controller and then switch on the BBB it doesn't boot up. I have already fried one BBB. When i measure the low side without connecting to the BBB I find that the voltage is around 2 volts. I think this is the problem because in multiple places in the BBB System Reference Manual it is given that no voltage should be applied to any of the input pins before the BBB properly boots up. Could this be the problem?

If so then how can i go about rectifying it? For the time being I am using optocouplers to isolate the BBB from the high side.

So, to sum it all I want to know :

  1. How do you make sure that no voltage comes back into the BBB when its an output pin?
  2. And since no voltage can be applied to the BBB before the system boots how can i disable devices that are connected to the BBB and going to send in data to the BBB not send any signals till the BBB boots up?

This will be really helpful for my project as I cannot manually disconnect/connect wires every single time the BBB is starting up.

Thanks,
Roy

Best Answer

The first thing to note is that if you are utilizing the 5V & 3.3V power supplies on the Beagle Bone Black, I would suspect that you should be alright with using this configuration.

The reason why is best explained in the answer here: How to prevent applying power to I/O pins before BBB ready?

To quote:

If the sensor is supplied from the same voltage source as the microcontroller, generally there is no problem. It's not a matter of the board being "ready" so much as never applying voltage to an input that exceeds Vdd of the microcontroller. The actual specification is: -0.5V to IO supply voltage + 0.3 V

If you are not using the power supplies from the beaglebone, I would suggest doing so.

If you are using the power supplies from the beaglebone, I would suggest additional troubleshooting.

Some ideas for additional troubleshooting:

  • Attempt the configuration with removing the +5V and 10k resistor. You should expect the output to follow the input. This will tell you if the +5V PSU is causing the issue.
  • Attempt to use the configuration without the high side connected to the flight controller.