Cannot enable 2Mb phy mode



  • After AUX_CONNECT_RSP, mcu send LL_PHY_REQ with 1mbps phy. Advertising goes with 2mbps phy. Could you help how to select 2mbps phy? Image with sniffered ble packets is attached. Advertising parameters:

    gap_adv_param_t adv_param = {0};
    adv_param.adv_mode = GAP_ADV_MODE_EXTEND_CONN_UNDIRECT;
    adv_param.adv_addr_type = GAP_ADDR_TYPE_PUBLIC;
    adv_param.phy_mode = GAP_PHY_2MBPS;
    adv_param.adv_chnl_map = GAP_ADV_CHAN_ALL;
    adv_param.adv_filt_policy = GAP_ADV_ALLOW_SCAN_ANY_CON_ANY;
    adv_param.adv_intv_min = 600;
    adv_param.adv_intv_max = 600;
    adv_param.disc_mode = GAP_ADV_DISC_MODE_GEN_DISC;
    adv_param.adv_sid = 0x2;
    

    Also I try to update phy after connect event:

        case GAP_EVT_SLAVE_CONNECT:
        {
            co_printf("Connected\r\n");
    
            connidx = p_event->param.slave_connect.conidx;
    
            gap_conn_phy_update(connidx, GAP_PHY_2MBPS, GAP_PHY_2MBPS);
    
            os_timer_start(&update_param_timer,4000,0);
            ble_fts_on_connected();
            tlakepro_service_on_connected();
            main_task_send_connected_event();
        }
        break;
    

    0_1672170277423_fr801x_1mbps.png



  • @eldarCannot enable 2Mb phy mode 中说:

    gap_conn_phy_update(connidx, GAP_PHY_2MBPS, GAP_PHY_2MBPS);

    like this,gap_conn_phy_update(connidx, GAP_PHY_2MBPS, GAP_PHY_2MBPS);