Beaglebone keeps shutting down when trying to drive a motor

Help, I’m struggling to drive a simple ESC and brushless motor combination with the Beaglebone. I’ve already spent 1/2 a day figuring out the right arming sequence (caused by a ± 0.01 ms error in timing).

But once I arm the ESC, the Beaglebone shuts off immediately. Most of the time, it shuts off right when it starts spinning up. Sometimes it even shuts off on one of the beeps the motor makes indicating the ESC is arming.

Here’s my setup:
Revolver Stubby motor

850W PSU =====12V===== ESC ===3.3V=== BeagleBone

The PSU is an Antec 850 high current gamer. I’ve disabled over-current, over-voltage, and under-voltage protection on it, so the power draw can be alot (enough to make the lights flicker when the motor starts).

The BeagleBone is powered by USB and should be buffered against surges caused by the motor PSU.
What could be the problem?

Well, I’ve overcome the problem. I was using a GPIO as GND to the ESC. This was convenient since those pins are next to each other. Once I used true GND, then the problem went away.

But why would using a GPIO as a GND cause a shutdown? I know it will restrict the amount of current sinked due to having to flow through an extra FET.

It all depends on what the ESC current is. The current spec for GPIO
is not a suggestion, but an absolute maximum value; if you exceed it,
all bets are off (reset is actually a polite thing to do---permanent
pin buffer damage can also happen, as well as wider damage to the
chip).