Go Down

Topic: sending remote signals over wire (Read 522 times) previous topic - next topic

vertigon

so i have this rgb led strip thats powered by usb. its got a little control board (see the hopefully attached picture) and is designed for generic 24 key IR remote (literally identical to the one in arduino starter kits), i want to control the leds from an arduino, is it possible to remove the IR from the board and add pin/jumpers, or should i cut the board down and just use the transistors on the end? i know i could just use an IR led to send the remote signals, but i dont have a spare IR reciever to test with, meaning i would need to remove it from the board to put it onto an arduino to grab the signals anyway. id prefer to use its onboard controller (not just the transistors) because its got a common + and each color on its own ground, meaning all the logic for using them is backwards and complicated. thanks for any help, or at least reading this far

Hiddenvision

#1
Jun 16, 2019, 10:40 pm Last Edit: Jun 16, 2019, 10:42 pm by Hiddenvision
IMHO you would be best to just write your own code for driving the Led's .

Much easier than trying to stick to the limits imposed by another design.

Else you could easily write your own IR receiver/transmitter to send the signals as the original unit is expecting them. With that you could monitor the original remote and then simulate the required stuff as per your needs.

But to add, yes, you could replace the receiver on the original board with a bit of wire driven from your second board. You need to make sure that the levels are right, I would guess levels at 1vptp or less, not sure without measuring, they could be 5v but suspect not.

So to conclude, remove the receiver from the original board, use it on the second board you are making then just pass the required signals via wire to the original board that you generate in your Arduino code.

In short. YES.





vertigon

 
IMHO you would be best to just write your own code for driving the Led's .

Much easier than trying to stick to the limits imposed by another design.

Else you could easily write your own IR receiver/transmitter to send the signals as the original unit is expecting them. With that you could monitor the original remote and then simulate the required stuff as per your needs.

But to add, yes, you could replace the receiver on the original board with a bit of wire driven from your second board. You need to make sure that the levels are right, I would guess levels at 1vptp or less, not sure without measuring, they could be 5v but suspect not.

So to conclude, remove the receiver from the original board, use it on the second board you are making then just pass the required signals via wire to the original board that you generate in your Arduino code.

In short. YES.

thats ALMOST what i meant. as far as i know, there arent any arduinos that can power 3 amps worth of led strips, and i really only need them to display one color at a time to indicate the state of a game, maybe flash the winners color. i dont need the IR reciever at all at the end of it. i have already recorded all of the remotes signals, but i dont know enough about how these recievers work to know if i can just match the ground wires and jump the IR data pin to an arduino. assuming the third pin of the IR is +5 supply for the module, i should be able to ignore it, but like i said i dont know how IR recievers work at the metal, i know they have an IC in them of some kind, but i dont know how to tell the arduino to just arbitrarily write a hex code to a specfic pin, or if thats even possible

Hiddenvision

#3
Jul 07, 2019, 03:01 pm Last Edit: Jul 07, 2019, 04:24 pm by Hiddenvision
The Arduino outputs, much like the outputs on the original processor, are capable of driving FET's or Transistors. It is those that do the heavy lifting for the LED current. If the LEDs are wired with a common POSITIVE then you will need three NPN transistors and you simply drive the base pin high to enable.

So grab some NPN transistors and some 1k and 10k or 22k resistors and you will be near set to go.

The quoted resistor values are just rough numbers, you may need to tweak for your design.

Use a 1k between the Arduino pin and the transistor base and
Use a 22k between base and negative.
The 22k resistor acts as a small pull down to hold the transistor in the OFF mode until you fire some volts down the base wire (thru that 1k). digitalwrite(pin,HIGH);

The quoted resistor values are just rough numbers, you may need to tweak for your design.
You will find lots of example NPN transistor diagrams on the google thing.

You can also PWM some Arduino output pins and that should perhaps make the LEDs Dim.
Analoguewrite(pin,value); from memory.


With the IR stuff. You just need to include the IR library, tell it what pin the RX or TX connect to and select the protocol. You may find that you can connect the IR output from the Arduino direct to the original boards IR receive pin (thru a resistor (1k or 10k) perhaps) though you should check the voltage levels are fairly matched and that they rest at the same logic state.
Remember COMMAN GROUNDS.


You could also use the original board as is and connect the original led outputs to 3 of the Arduino inputs. That way you can use the remote to trigger the original board and the Arduino can detect those driving signals and you can in your code respond to them as (if) desired.

If the LEDS Dim then the original board is possibly using PWM to drive the outputs.
If that is the case, it will be harder to detect that on the Arduino, but not impossible.

But unless the original board has some fancy light patterns being generated just rob it for the parts you needs and put the rest aside. Even if it has fancy patterns, just document them and write your own, plus more.


Or you could remove the original processor and simply wire the pads on the board to the needed pins on the Arduino.


That way you have all the hardware done with the IR receiver and the 3 LED output drivers presented on 4/5 wires (6 with power).

1 wire x Neg.
1 wire x IR input,
3 wire x LED outputs,
1 wire x 5v Pos,

Then add some of your own controls,
like a variable pot to adjust brightness perhaps,
an LDR to detect ambient light levels,
a little speaker for making noises (see TONE library),
and a button or two to do something else.!
The Arduinos have EEPROM so you can save or recall settings or modes.

just a footnote.
Don't try and switch on things running at higher voltage with single transistors.
You would use another plan for that, either two transistors, a MOSFET perhaps or a transistor and relay. You are fine as the LED strips are running at 5v, but you may have issues trying to do the same with 12v LEDs for example. Terrible foot note. But thought it worth saying.

Go Up