Newbie Problem! Get Started with NRF24L01+
-
Do you have a standalone relay, or a arduino relay board, like this picture?
http://www.mysensors.org/relay/relayModule.pngThe board contains a transistor. Some boards also have a 'hi-low' switch, if yours have it, you may try to play with it.
The arduino output is max of 40ma and will eventually burn or not operate correctly if connected directly to a relay. You must have a transistor in between.
Make sure you relay board contains at least this circuit: http://www.electroschematics.com/8975/arduino-control-relay/
-
Do you have a standalone relay, or a arduino relay board, like this picture?
http://www.mysensors.org/relay/relayModule.pngThe board contains a transistor. Some boards also have a 'hi-low' switch, if yours have it, you may try to play with it.
The arduino output is max of 40ma and will eventually burn or not operate correctly if connected directly to a relay. You must have a transistor in between.
Make sure you relay board contains at least this circuit: http://www.electroschematics.com/8975/arduino-control-relay/
@rvendrame My relay is more like this http://www.elecdesignworks.com/images/stories/virtuemart/product/img_62112.jpg
Thank you for your reference.
It has a transistor. I hope it's ok to use. I have tested it by following an instructable. -
Do you have a standalone relay, or a arduino relay board, like this picture?
http://www.mysensors.org/relay/relayModule.pngThe board contains a transistor. Some boards also have a 'hi-low' switch, if yours have it, you may try to play with it.
The arduino output is max of 40ma and will eventually burn or not operate correctly if connected directly to a relay. You must have a transistor in between.
Make sure you relay board contains at least this circuit: http://www.electroschematics.com/8975/arduino-control-relay/
@rvendrame You know what. I'm really thankful for you help and I'm really sorry for dragging you with me. I can turn the light on now. I just have to print "2;1;1;1;2;0;" instead of "2;1;1;1;2;1".
I will check if I will encounter any problem because of my relay module.
Again, thank you so much for your help. And I'm really sorry. -
Just swap the 0 & 1 here:
#define RELAY_ON 1 // GPIO value to write to turn on attached relay #define RELAY_OFF 0 // GPIO value to write to turn off attached relayand it will obey as you expect. Some relays boards have inverted input (Zero/GND is ON and VCC is OFF) ;-)
I'm glad it worked.
-
Is there a way to receive only the last state of the sensors/actuators in the serial?
instead of:
0;0;3;0;9;read: 2-2-0 s=1,c=1,t=2,pt=2,l=2:1 0;0;3;0;9;send: 0-0-2-2 s=1,c=1,t=2,pt=2,l=2,st=ok:1 2;1;1;0;2;1it only print the "2;1;1;0;2;1" on the serial
-
I placed if statement in serial function inside MyGateway.cpp
where 0 is the gateway addressvoid MyGateway::serial(MyMessage &msg) { if (msg.sender != 0); serial(PSTR("%d;%d;%d;%d;%d;%s\n"),msg.sender, msg.sensor, mGetCommand(msg), mGetAck(msg), msg.type, msg.getString(convBuf)); }Still it doesnt work.
Heres the format:
msg.sender = GATEWAY_ADDRESS; msg.destination = destination; msg.sensor = sensor; msg.type = type; mSetCommand(msg,command); mSetRequestAck(msg,ack?1:0); mSetAck(msg,false); if (command == C_STREAM) msg.set(bvalue, blen); else msg.set(value); -
if (msg.sender != 0); serial(PSTR("%d;%d;%d;%d;%d;%s\n"),msg.sender, msg.sensor, mGetCommand(msg), mGetAck(msg), msg.type, msg.getString(convBuf));
Note the ; after the 0) which should not belong there..
-
turn off DEBUG in MyConfig.h (by commenting it out) before comping you gateway sketch to get rid of debug messages.
@hek Thank you! I will try it as soon as I go home. Can you tell me what is the expected output from the gateway if I use static id 2 for a relayActuator that I turned on?
will it be just "2;1;1;0;2;1" or will "2;255;x;x;x;x" appear? only the read/send data is hidden