I have noticed that if more than one pin is set to output-HIGH, the most
recent pin output request provides 3.3v out while the others are sacraficed
(1.5v, .5v, etc). I am using the Adafruit_BBIO.GPIO library to control the
pins. I am building a "climate control" system, and using the BBB and a
DHT22 temperature/humidity sensor to operate relays to supply 120vAC to
components (lights, heater, water pump).
I have: a door switch SPDT(P9_11) for safety override, a DPDT(P8_10 and
P8_12) for automatic and manual operation, and a 3-24vDC/0-240vAC relay for
suppling power to a lamp.
The P8_12 and P9_11 always have power. If the door switch is
activated(P9_11) it activates the relay and bypasses the DPDT switch. If
the DPDT switch is set to "manual"(P8_12) the relay is activated. Otherwise
if the temperature from the DHT22 is above or below a set limit, and the
DPDT switch is in "automatic"(P8_10), the relay is activated accordingly.
Pseudo code:
import libraries
# Set pins P8_12 and P9_11 to output 3.3v
GPIO.output(P8_12,HIGH)
GPIO.output(P9_11,HIGH)
while 1:
read temperature
# Decide to turn P8_10 on/off based on temperature
if temp<28:
GPIO.output(P8_10,HIGH)
else:
GPIO.output(P8_10,LOW)
# Loop indefinately
Here is the problem:
If I run a test program with only the door switch the light turn on/off as
expected. If I execute the above code the DPDT switch and auto/manual
control works as expected however the door switch will not supply enough
power to activate the relay. When the above code is running and P8_10 turn
on, or if the DPDT switch is set to manual(P8_12) the voltage across the
door switch(P9_11) drops to ~1.5v and is less than the required 3v to
activate the relay.
Question:
Can the BBB supply 3.3v out for more than one pin simultaneously, or will i
need to add an amplifier circuit to each output?
I can attach full code and schematic if it would be helpful. In the end
there will be 8 relays, of which up to 5 will be activated simultaneously.
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.