I’m using my Beaglebone Black to drive a DC motor and read a rotary encoder:
Last night when I rebooted my BBB, it shut down but didn’t reboot: None of the 4 blue LEDs lit, although the blue LED by the 5V power plug did light up when I plugged it in.
This behavior persisted across several plug/unplug cycles of the 5V power adapter. I was afraid I bricked my BBB.
In desperation, I unplugged all the I/O (P8_33,34,35, P9_29,30,31). Then I plugged in the 5V power and it booted!
Any idea why that happened, or how I could fix it in the future without unplugging all my I/O?
See Page 106/107 of:
Thanks Robert. For our viewers at home, the BBB uses pins lcd_data0 thru 15 as “SYSBOOT” pins that configure where the device boots from.
Derek Molloy’s table shows that those correspond to header pins P8_31 thru P8_46 (not necessarily in that order).
My rotary encoder may have been asserting a voltage on some of those pins. Next time I’ll try unplugging it.
Thanks very much!
If you still want to use the same pins, you can create an extra enable pin, after everything boots up into the kernel, use gpio_request and gpio_output to enable to the (EN pin) of power supply of your motor.
In this way you prevent SYSBOOT affected and other voltage flows in, to affect power up sequence.
I’ve worked on a lot of boards over the years, so I have a strong sense for the kinesthetic issues that even custom electronics can have. I’ve had this problem myself (and am still having it from time to time).
My spider sense tells me that the BBB is right at the accepted maximum current draw for a standard USB port AND that it might be further exacerbated by having a lot of peripherals (even independently powered ones) attached to it. I would recommend getting a 5V 1A (a FULL 1.0 Amp) supply (like the small bricks that come with tablets or Kindles) and feeding it through the coaxial connector just to make sure it always has enough juice no matter what the situation. Yeah, it’ll run off of a USB port, but I can tell its a bit of a power hog. Just how it flashes and stuff reminds me of a power-starved board.
Ok, experimented with it some more and came up with a basic protocol for getting it to boot. What you do is you kind of fiddle with the power button and keep plugging and unplugging the USB cable (I’m powering my BBB through the miniusb to my Windows 10 desktop).
**** What you do is you ground yourself every time by touching the metal on the USB or ethernet connector. I’ve come close to frying my board a few times (its cold here and I have nice carpet). You will eventually fry it if you don’t. ***
Then I take a precision screwdriver or insulated probe and I keep depressing the power switch gently with long and short intervals. If it works, the flashing power indicator goes strong on and it starts to boot. If this doesn’t work you disconnect your USB cable and reconnect it. A few cycles of this and it reboots every time.