Fix one problem with another problem?
What is exactly the problem. The 3.3volt output?
Most relay boards work with negative logic, so there shouldn't be a problem.
Post a link to the relay board you have.
And a diagram of how you have connected it.
Leo..
I have a relay board that has 16 relays.
It operates on a 12v power supply separately from the arduino's power.
I've basically connected it like this:
Power Supply Side:
12v to 12v
12v GND to GND
Digital Input Side:
Arduino (any digital pin, i'll say it's 25), to the first relay (1)
Arduino GND to GND
I could also connect 5v to 5v but that is actually power from the relay board to the Arduino.
I found out that this is dangerous, and on my Arduino UNO it didn't matter if I did/not use it.
Link To Relay:
(I don't know if it's the place I got it from but it looks the same) 16 Channel Relay Module
16-channel relay boards are problematic.
There is no JD-VCC jumper on a 16-channel board, so you can't isolate opto LED from opto transistor.
Optos, but no opto isolation. I wouldn't use them for mains switching.
I don't see how you could use a 3.3volt arduino with this relay board, since the switchpoint of the optos is ~3.8volt.
Leo..
P.S. On the Sainsmart site you can find a diagram for this board.
JCookie20001:
for when my Arduino DUE is connected to my Arduino UNO, for my arduino to turn on a digital pin when it receives an input?
You obviously haven't read what I have asked.
liudr:
Describe your problem with due. What did you try and what result did you get?
When I have wired up my DUE to my relay board, the relays don't "click" and don't change their state. Sometimes the light lights up but not the actual relay.
This works with my UNO though.
I have to use my DUE so that I can run multiple loops at once, (using an official library which I can't remember the name of.)
JCookie20001:
for when my Arduino DUE is connected to my Arduino UNO, for my arduino to turn on a digital pin when it receives an input?
You obviously haven't read what I have asked.
...
You are quoting yourself here. You say "Arduino DUE", then you say "Arduino UNO", then you refer to "my arduino". It's hard to understand what you are asking when you are being imprecise. Try to state your questions more exactly, then folks will have an easier time reading and understanding them.
ChrisTenone:
You obviously haven't read what I have asked.
...
You are quoting yourself here. You say "Arduino DUE", then you say "Arduino UNO", then you refer to "my arduino". It's hard to understand what you are asking when you are being imprecise. Try to state your questions more exactly, then folks will have an easier time reading and understanding them.
Obviously.
When my Arduino DUE is connected to my Arduino UNO, for my ARDUINO UNO to turn on a digital pin when it receives a digital input from my DUE?
JCookie20001:
When my Arduino DUE is connected to my Arduino UNO, for my ARDUINO UNO to turn on a digital pin when it receives a digital input from my DUE?
There are billions of ways to connect an UNO to a Due. How are they connected?
When I have wired up my DUE to my relay board, the relays don't "click" and don't change their state. Sometimes the light lights up but not the actual relay.
This works with my UNO though.
The way the relay driver is designed, the problem isn't the voltage levels of the I/O (Due=3.3V, UNO=5V). The real problem is that the relay board's driver needs 15-25mA for each channel. The Due's outputs can only supply 3-6mA.
You can drive a 16-channel relay board directly with a 3.3volt Arduino, but with the magic smoke if you get it wrong.
Connect the relevant ports to the relay inputs.
Connect relay board 5volt to Arduino 3.3volt pin.
DO NOT JOIN ARDUINO GROUND AND RELAY GROUND.
USE TWO SEPARATE SUPPLIES.
DO NOT JOIN ARDUINO GROUND AND RELAY GROUND.
If you do, you will blow up your Arduino.
Maybe another forum member can verify this before you go ahead.
Leo..
JCookie20001:
But how do I make My UNO to turn on a UNO Digital pin, when it receives a signal from a DUE digital pin?
Well, you would need an input pin (connected to the Due's output) and an output pin on the UNO to send the desired signal. Use digitalRead to check the input status, then use an "if" statement to determine what level to write (digitalWrite) to the output pin. Now you have created an Arduino level converter in code. Check the reference and examples for more info.