I tried to use the VeinsInetCar module as an rsu by changing the mobility to stationary mobility
# VeinsInetMobility
*.node[*].mobility.typename = "VeinsInetMobility"
*.wifirsu.mobility.typename = "StationaryMobility"
I used the VeinsInetSampleApplication for the vehicles and changed it for the rsu a little bit. Created a new VeinsInetApplicationBase and removed the traci and mobility parts.
void VeinsInetApplicationBase::handleStartOperation(LifecycleOperation* operation)
{
mobility = veins::VeinsInetMobilityAccess().get(getParentModule());
traci = mobility->getCommandInterface();
traciVehicle = mobility->getVehicleCommandInterface();
L3AddressResolver().tryResolve("224.0.0.1", destAddress);
ASSERT(!destAddress.isUnspecified());
Then removed traci related variables and replaced it with dummy variables in veinsInetSampleApplication for the RSU. Now when i try to run the simulation it causes this error.
check_and_cast(): Cannot cast (inet::physicallayer::Ieee80211ScalarTransmission*) to type 'const inet::physicallayer::DimensionalTransmission *' -- in module (inet::physicallayer::Ieee80211Radio) Scenario.node[0].wlan[0].radio
This runtime error causes in the middle of the simulation. What cause this error ?