diff --git a/openair2/LAYER2/MAC/eNB_scheduler.c b/openair2/LAYER2/MAC/eNB_scheduler.c index 3f9a622fcdf297d982b54c25042291041a0a6ec2..f75227b4c7dd4cb92e2eaa6118d14aad8a58b436 100644 --- a/openair2/LAYER2/MAC/eNB_scheduler.c +++ b/openair2/LAYER2/MAC/eNB_scheduler.c @@ -1107,7 +1107,7 @@ int schedule_MBMS(unsigned char Mod_id,u32 frame, u8 subframe) { break; } - // 1st: Check the MBSFN subframes + // 1st: Check the MBSFN subframes from SIB2 info (SF allocation pattern 0, max 8 patterns exist) if (frame % mbsfn_period == eNB_mac_inst[Mod_id].mbsfn_SubframeConfig[0]->radioframeAllocationOffset){ // MBSFN frame if (eNB_mac_inst[Mod_id].mbsfn_SubframeConfig[0]->subframeAllocation.present == MBSFN_SubframeConfig__subframeAllocation_PR_oneFrame){// one-frame format diff --git a/openair2/RRC/LITE/MESSAGES/asn1_msg.c b/openair2/RRC/LITE/MESSAGES/asn1_msg.c index 763208b31d5181c00b97f9f966c036583a5a568a..e21df15a88a5077cb9cd5476f2e5ebcdba8e39e5 100644 --- a/openair2/RRC/LITE/MESSAGES/asn1_msg.c +++ b/openair2/RRC/LITE/MESSAGES/asn1_msg.c @@ -831,10 +831,10 @@ uint8_t do_SIB23(uint8_t Mod_id, MBSFN_Area2->mcch_Config_r9.sf_AllocInfo_r9.size= 1; MBSFN_Area2->mcch_Config_r9.sf_AllocInfo_r9.bits_unused= 2; if (frame_parms->frame_type == TDD) {//TDD: SF7 - MBSFN_Area1->mcch_Config_r9.sf_AllocInfo_r9.buf[0]=0x08<<2; + MBSFN_Area2->mcch_Config_r9.sf_AllocInfo_r9.buf[0]=0x08<<2; } else { - MBSFN_Area1->mcch_Config_r9.sf_AllocInfo_r9.buf[0]=0x04<<2; // FDD: SF6 + MBSFN_Area2->mcch_Config_r9.sf_AllocInfo_r9.buf[0]=0x04<<2; // FDD: SF6 } MBSFN_Area2->mcch_Config_r9.signallingMCS_r9= MBSFN_AreaInfo_r9__mcch_Config_r9__signallingMCS_r9_n2; @@ -1503,7 +1503,7 @@ uint8_t do_MBSFNAreaConfig(LTE_DL_FRAME_PARMS *frame_parms, mbsfn_SubframeConfig1= CALLOC(1,sizeof(*mbsfn_SubframeConfig1)); memset((void*)mbsfn_SubframeConfig1,0,sizeof(*mbsfn_SubframeConfig1)); - + // mbsfn_SubframeConfig1->radioframeAllocationPeriod= MBSFN_SubframeConfig__radioframeAllocationPeriod_n4; mbsfn_SubframeConfig1->radioframeAllocationOffset= 1; mbsfn_SubframeConfig1->subframeAllocation.present= MBSFN_SubframeConfig__subframeAllocation_PR_oneFrame; diff --git a/targets/SIMU/EXAMPLES/OSD/WEBXML/template_34.xml b/targets/SIMU/EXAMPLES/OSD/WEBXML/template_34.xml new file mode 100644 index 0000000000000000000000000000000000000000..2018130d9320e7941ba50b5c5a485bd617abfc1a --- /dev/null +++ b/targets/SIMU/EXAMPLES/OSD/WEBXML/template_34.xml @@ -0,0 +1,53 @@ +<OAI_EMULATION> + + <TOPOLOGY_CONFIG> + <AREA> + <X_m>500</X_m> + <Y_m>500</Y_m> + </AREA> + <MOBILITY> + <UE_MOBILITY> + <UE_INITIAL_DISTRIBUTION>random</UE_INITIAL_DISTRIBUTION> + <RANDOM_UE_DISTRIBUTION> + <NUMBER_OF_NODES>1</NUMBER_OF_NODES> + </RANDOM_UE_DISTRIBUTION> + <UE_MOBILITY_TYPE>RWP</UE_MOBILITY_TYPE> + <UE_MOVING_DYNAMICS> + <MIN_SPEED_mps>5</MIN_SPEED_mps> + <MAX_SPEED_mps>5</MAX_SPEED_mps> + <MIN_SLEEP_ms>0.1</MIN_SLEEP_ms> + <MAX_SLEEP_ms>5.0</MAX_SLEEP_ms> + <MIN_JOURNEY_TIME_ms>0.1</MIN_JOURNEY_TIME_ms> + <MAX_JOURNEY_TIME_ms>10</MAX_JOURNEY_TIME_ms> + </UE_MOVING_DYNAMICS> + </UE_MOBILITY> + <eNB_MOBILITY> + <eNB_INITIAL_DISTRIBUTION>random</eNB_INITIAL_DISTRIBUTION> + <RANDOM_eNB_DISTRIBUTION> + <NUMBER_OF_CELLS>1</NUMBER_OF_CELLS> + </RANDOM_eNB_DISTRIBUTION> + + <eNB_MOBILITY_TYPE>STATIC</eNB_MOBILITY_TYPE> + </eNB_MOBILITY> + </MOBILITY> + </TOPOLOGY_CONFIG> + + + <EMULATION_CONFIG> + <EMULATION_TIME_ms>10000</EMULATION_TIME_ms> <!--set to infinity--> + <PERFORMANCE_METRICS> + <THROUGHPUT>1</THROUGHPUT> + <LATENCY>enable</LATENCY> + <OWD_RADIO_ACCESS>enable</OWD_RADIO_ACCESS> + </PERFORMANCE_METRICS> + <LOG> <!-- set the global log level --> + <LEVEL>info</LEVEL> + <VERBOSITY>medium</VERBOSITY> <!-- low, medium, high, full --> + <INTERVAL>1</INTERVAL> + </LOG> + <SEED_VALUE>0</SEED_VALUE> <!-- value 0 means randomly generated by OAI --> + + </EMULATION_CONFIG> + + <PROFILE>eMBMS_1</PROFILE> +</OAI_EMULATION>