Ethernet shield, virtualwire and interrupts

Hi guys,

I'm working on a project whose ultimate goal is to send messages to Pachube in response to events originated from my house.
More specifically, I'm trying to emulate a "classical" PIR-based alarm system, where a PIR sensor is used to detect movements inside a given room; the "presence event" is sent over a 433 MHz link (made up with these tx+rx: ​Váš parťák ve světě tvoření | HWKitchen.cz) implemented using Virtuawire library. The receiver side is composed by an arduino, the Ethernet shield and the 433 MHz receiver.

The issue is that when I use the Virtualwire library at the receiver side, which is needed to receive the data over a generic digital arduino pin, the Ethernet shield doesn't work properly.

I guess that this issue may be caused by the interrupts used by both Virtualwire and Ethernet libraries, which can conflict...

Can this be the reason? Did someone have experience on using the Ethernet shield with other hardware that uses interrupts?

Thank you in advance,
Alessandro

PS: Happy new year! :slight_smile:

Which pins are you using for the VirtualWire interface? The defaults are 11 and 12 for the rx and tx pins. These are part of the SPI interface used by the Ethernet shield to talk to the Arduino.

To avoid using the same ones used by the ethernet shield, I connected rx to digital pins such as D8 and D2; the RF reception is fine, but the ethernet transmission is still missing.

Does the ethernet shield work on its own? Without the radio connected and without WirtualWire included? That is, are you solving the right problem?

I'm not saying that you are not. I'm just asking for clarification.

Sorry for the long delay :slight_smile:
Anyway, yes, the ethernet shield works perfectly. At the moment I solved this issue by employing another arduino, whose task is just to receive from the RF interface and, then, send an alarm message over the serial line. However, I hope I can simplify this, because I do not want to use two boards...

Alessandro

Please help me I am also facing same problem:

more details are shared in the below link (along with code):
http://forum.arduino.cc/index.php?topic=461526.0