Open Vorms opened 1 year ago
Can I suggest disabling collection of IR messages when you transmit via RF? Maybe the RF library you are using uses the same hardware timer. See documentation: https://crankyoldgit.github.io/IRremoteESP8266/doxygen/html/classIRrecv.html#a8fe4d26ef1f863db1db9994fed5fc209
e.g.
IRrecv irrecv(RecvPin, // GPIO Pin to use
CaptureBufferSize, // Size of the capture buffer
Timeout, // How long to wait before we give up on a signal
false, // Wait for a .resume() call before we start capturing again
TimerNumber); // Which hardware timer should we use?
void setup() {
irrecv.enableIRIn(); // Start up the IR receiver.
}
void loop() {
// Check if an IR message has been received.
if (irrecv.decode(&results)) { // We have captured something.
// The capture has stopped at this point.
// Do your RF thing.
// then
// Resume capturing IR messages. It was not restarted until after we did the RF
// message.
irrecv.resume();
}
yield();
}
Or see the DumbIRRepeater.ino example code.
Hello, Many thanks for your reply. It's exactly what I do . I resume after sending the rf message. I try to add delay before and and after rf send but it doesn't solve the issue. Regards Thierry
Le lun. 24 juill. 2023, 22 h 07, David Conran @.***> a écrit :
Can I suggest disabling collection of IR messages when you transmit via RF? Maybe the RF library you are using uses the same hardware timer. See documentation https://crankyoldgit.github.io/IRremoteESP8266/doxygen/html/classIRrecv.html#a8fe4d26ef1f863db1db9994fed5fc209:
e.g.
IRrecv irrecv(RecvPin, // GPIO Pin to use CaptureBufferSize, // Size of the capture buffer Timeout, // How long to wait before we give up on a signal false, // Wait for a .resume() call before we start capturing again TimerNumber); // Which hardware timer should we use? void setup() { irrecv.enableIRIn(); // Start up the IR receiver. } void loop() { // Check if an IR message has been received. if (irrecv.decode(&results)) { // We have captured something. // The capture has stopped at this point. // Do your RF thing. // then // Resume capturing IR messages. It was not restarted until after we did the RF // message. irrecv.resume(); } yield(); }
Or see the DumbIRRepeater.ino https://github.com/crankyoldgit/IRremoteESP8266/blob/master/examples/DumbIRRepeater/DumbIRRepeater.ino example code.
— Reply to this email directly, view it on GitHub https://github.com/crankyoldgit/IRremoteESP8266/issues/2013#issuecomment-1648864897, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA6QD4IKOBEAWWUJERQTWLLXR4S7DANCNFSM6AAAAAA2WLL6EI . You are receiving this because you authored the thread.Message ID: @.***>
Do you have a minimum viaable example of your code that you can share that produces the issue/errors/etc?
I use an esp32. When I receive an infrared message I have to transmit an rf message, the corresponding node send a message to the node just receiving the infrared message and this not has to send an other message and so on.
I have a lot of crash (timer interrupt) I dont understand what'happend and how to solve it.