Gerald: I am super impressed that you would offer your valuable time to help with not much in return than thanks.
Background: I’m developing a complicated prototype and I am new to embedded systems. I was fairly frustrated that I could not “just hook things up” and have them at least not destroy the BBB while testing. I am beginning to understand that, like any device, more capability comes with more complexity and vulnerabilities. I still see the BBB as an amazing opportunity for inventors overall and realize that I need to learn more to use it properly.
I cannot point to one circuit that caused the damage to the BBBs because I am trying different arrangements to integrate multiple devices. However, if you could answer some basic questions on design strategy, that could help.
Here’s what I need to accomplish:
I need to power 4 accessories: (1) a small stepper motor through the Pololu DRV8834 driver board. It consumes about 200 – 300 mA at 5 volts, (2) an IC chip via pulse wave modulation – it requires about 620mA at 1.55V, (3) a small DC motor which consumes about 40 mA at 3V (either by PWM and a relay or straight from a 3.3 V source) and (4) a small cooling fan – consumes about 120 mA at 5 V.
I need to control turning all these on and off by a clock function.
I need to read a GVS digital sensor: consumes less than 10 mA at 5 V.
I need to read a GVS analog input: 5V input, output < 1 volt.
I need to read DC voltages (analog): (1) on a pin on the DRV8834 driver board (0-1 volt range), (2) on a sensor with special input requirements – it needs both (+) 5 volts AND (-) 5 volts inputs to power it. The (-) voltage is derived from (+) 5 V using this inverter ICL7660A, which I have found to be about 91% efficient at converting DC (+) to DC(-) for this application. Sensor output max about 1.2 volts.
Finally, I need to add and read a real time clock (RTC) such as the Chronodot (Adafruit) – requires I2C bus SDA, and SCL, as well as GND and (+) 5V.
What do you think of these strategies:
(1) Use the BBB-GVS board (http://beagleboard.org/project/BBB-GVS/). This board appears to provide a layer of protection from the sensor voltage inputs and power outputs for the BBB. The problem is they may not be a reliable supplier and I cannot tell if this board will accomplish all these tasks.
(2) Use the BBB only for logic and supply all the power from an independent (probably 5V cell phone charger power pack) source with voltage regulator, using PWM and relays to regulate the voltages lower than 5 V and relays to control intermittent power needs. Would this be safer for the BBB i.e. not using power directly off the BBB while trying to read sensor output at the same time? It seems dangerous to me tying all the grounds together (analog, digital and power) that would be required to get both power out of the BBB and signal into it.
(3) Power the BBB via a 3.7 volt backup battery through TP5 and TP8 to prevent abrupt cessation of power should a system failure occur. Seems like it would be possible to write code to give the “sudo shutdown –h now” command when the power went down. This would allow the PMIC time to do an orderly shutdown.
I suspect that the sensors may be putting voltages on the BBB pins before they are powered up as part of the problem, but I am not sure how to prevent this. Is there a way to power up the sensors after the BBB has properly booted and to shut them down before the PMIC does its shutdown sequence? Any other external wiring or devices that could help safeguard the BBB? Any advice you can offer on any of this or other ways to protect the BBB would be appreciated.