ZeBarnabe
ZeBarnabe

Reputation: 13

How to send message from RSU to RSU (Veins, OMNeT++, SUMO)

How do I send messages from one RSU to another? I'm using version 5.2 of Veins with the default example, I just added one more RSU (one very close to the other). I can send messages from vehicles to vehicles, from vehicles to RSU, and from RSU to vehicles using the sendDown() or sendDelayedDown() methods. However, when I try to send a message from one RSU to another, it simply does not work, as the destination RSU does not receive the message.

What should I do in my project to make it work? Or what is the correct method for sending messages between RSUs?

Thank you.

Upvotes: 0

Views: 127

Answers (1)

dnat
dnat

Reputation: 103

You must be forgetting to use the populateWSM() method: populateWSM(wsm, ADDRESS);

In the initialize method you can put it like this:

void MyRSUClass::initialize(int stage) {
    DemoBaseApplLayer::initialize(stage);
    if (stage == 1) {
        TraCIDemo11pMessage* wsm = new TraCIDemo11pMessage*();
        populateWSM(wsm, OTHER_RSU_ADDRESS); // <------- here**
        wsm->setSenderAddress(myId);
        wsm->setDemoData("Message from RSU");
        sendDown(wsm);
        // OR, if you have problems with sendDown() method
        // use send() ou sendDelayed() methods:
        //// send(wsm, "lowerLayerOut");
        //// sendDelayed(wsm, 2, "lowerLayerOut");
    }
}

Upvotes: 0

Related Questions