Receiving Works; Can't seem to Send (Hardware Issue?) #78
Replies: 8 comments 5 replies
-
You are trying to send a untested signal using untested hardware. Try do separate the problems. I would recommend trying to send a simple, well-known signal (for example a Philips or Sony TV) first, to verify the hardware. Possibly you (temporarily?) take out the transistor -- after all, 40mA makes a more powerful sender than most standard remotes. Please post a diagram or a photo of the sender. Please also post the signal you learned. Note that the used example is mainly intended for testing by developers; it is not otherwise not very useful. |
Beta Was this translation helpful? Give feedback.
-
Use a resistor in series with the LED. Without it, you will basically have a short-circuit when the LED is on, having "interesting" consequences for the reliable operation of the CPU. The learned signal is really bad too. |
Beta Was this translation helpful? Give feedback.
-
If i see correctly, you are using a 36 ohm resistor (orange-blue-black). That gives a current of some (5-2.0)/35 = 0.086 A, chich is more than double of the allowed 40mA. You may have damaged your board already! |
Beta Was this translation helpful? Give feedback.
-
@raisinbread The Arduino board. Each pin can only handle up to 40mA. There is also a limit for all pins together, but I forgot what that was. You should use a transistor to drive the IR LED. |
Beta Was this translation helpful? Give feedback.
-
Thanks for the advice, I will definitely give it a try, but it still confuses me why the receiver doesn't receive any signal at all. I appreciate your time and advice. |
Beta Was this translation helpful? Give feedback.
-
@bengtmartensson In your view, the code is okay then? I should be able to receive and send at the same time? |
Beta Was this translation helpful? Give feedback.
-
@bengtmartensson I made some progress! I looks like
Now I get some data when I press a key on the serial terminal:
So I think I'm actually getting data, but the signal doesn't match what I'm trying to send (and that first timing looks like the maximum value). Curious if you have any ideas. |
Beta Was this translation helpful? Give feedback.
-
I strongly suggest that you solve one problem at a time. Start by getting the example IrReceiverSampler to work. Note that there is also a small probability that you have damaged the board by "sending" with no/too small resistor.
This is noise. |
Beta Was this translation helpful? Give feedback.
-
Could use a little help here. I'm using a TSOP4856 receiver, and a TSAL6100 IR emitter/LED.
https://www.vishay.com/docs/82489/tsop322.pdf
https://www.vishay.com/docs/81009/tsal6100.pdf
Using the IrReceiverSampler_SenderPwm example, I can record signals that are transmitted from remote controls in my home. So I feel like that part of the setup works.
However, I can't seem to send a signal (that is in turned recorded as received). I'm driving the LED using a transistor so I can use a bit more current from an Arduino Uno 5V power output pin (rather than the limited current on the digital output pin). When I trigger a send in my code, I can use the camera on my phone to verify that the LED is firing - and it is. I've also changed the
send()
call to use a different frequency (56000U
) to make sure it works with my receiver.I also see the "Sending a signal from PROGMEM!" messages in the serial console.
I'm a little stumped - I can see the LED in a device remote from my camera, and I can see the LED in my circuit blinking in my camera, but my code never registers the data from my sender circuit. Any tips or things I should track down first?
Beta Was this translation helpful? Give feedback.
All reactions