Forums - Connecting srsRAN mbms to pixel 7

3 posts / 0 new
Last post
Connecting srsRAN mbms to pixel 7
danielmorganrivers
Join Date: 6 Feb 23
Posts: 2
Posted: Mon, 2023-02-06 21:33

Hello,

I would be very grateful to anyone who could help me work out why I can't seem to transmit data from my software defined radio (bladeRF running srsRAN) transmitting an mbms  gw signal to my Pixel 7 which is running Android 11.

I don't currently have a usim installed, but I don't think I need it, because I would like to run in receive-only mode.

I am currently running: Multicast interface with an address of 172.16.0.1, and initiating a MBMS GW.

The bladeRF enodeB I'm using has:

DL=1970.0 Mhz, UL=1890.0 MHz for cc_idx=0 nof_prb=50
set TX frequency to 1969999998
set RX frequency to 1889999998

The epc reports:
S1 Setup Request - eNB Name: srsenb01, eNB id: 0x19b
S1 Setup Request - MCC:310, MNC:260
S1 Setup Request - TAC 7, B-PLMN 0x132006
S1 Setup Request - Paging DRX v128

I've tried running the following code in an app on my pixel 7, with the android built-in telephony mbms API. When I create the mbms callback, I am receiving the error:

W/MbmsUtils: No MBMS services found, cannot get service info

The code responsible for setting things up is as follows:

        Executor mExecutor = Executors.newSingleThreadExecutor();

        MbmsStreamingSession mSession;
        MbmsStreamingSessionCallback mCallback = null;

        mCallback = new MbmsStreamingSessionCallback() {
            @Override
            public void onStreamingServicesUpdated(List<StreamingServiceInfo> services) {
                // access the services list here
                for (StreamingServiceInfo service : services) {
                    // do something with the StreamingServiceInfo object
                    StreamingServiceInfo firstService = services.get(0);
                    Log.d("MainActivity", "Success");
                }
            }
        };

        mSession = MbmsStreamingSession.create(this, mExecutor, mCallback);

I couldn't find any clear instructio on the required steps to set up the mbms connection on the API documentation, so there's probably something I'm missing with that code.

My manifest for the android app is as follows (some of these are probably unnecessary):

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.ACESS_MBMS" />
    <uses-permission android:name="android.permission.SEND_EMBMS_INTENTS" android:protectionLevel="privileged|signature"/>
    <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
    <uses-feature android:name="android.hardware.telephony" android:required="true"/>
    <application
        android:allowBackup="true"
        android:dataExtractionRules="@xml/data_extraction_rules"
        android:fullBackupContent="@xml/backup_rules"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/Theme.MyApplication"
        tools:targetApi="31">
        <activity
            android:name=".MainActivity"
            android:exported="true"
            android:label="@string/title_activity_main"
            android:theme="@style/Theme.MyApplication.NoActionBar"
            >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

 

I think one issue is the  subscription ID is apparently equal to 1 when I try to access it (because I don't have a usim), and that subscription ID is being used by the MbmsStreamingSession.create() call.

In summary: How do I get the pixel 7 to use the mbms protocols in receive-only mode so I can access the mbms signal without a usim? Do I have to do something special on the srsRAN side to get it to talk to my pixel 7?

As I understand, based on the spec 3GPP TS 23.246 V17.0.0 (2022-03)  (https://www.tech-invite.com/3m23/tinv-3gpp-23-246.html),  I need to:
"camp on a network cell in an eMBMS Broadcast carrier, attempt to receive MBMS service based only on a standardised TMGI value range for Receive Only Mode. The UE shall not attempt to receive MBMS service for TMGIs outside the standardized TMGI range. The UE uses the acquired system information to receive MBMS broadcast"

Thanks so much,

Morgan
 

  • Up0
  • Down0
vikrsing
Join Date: 29 Jan 20
Posts: 16
Posted: Mon, 2023-02-06 23:10

Hi , 

 

AFAIK , Pixel 7 has Tensor chip rather than Qualcomm chip . Can you re-confirm once if ur device has a Qualcomm chip inside?

Thanks

  • Up0
  • Down0
danielmorganrivers
Join Date: 6 Feb 23
Posts: 2
Posted: Tue, 2023-02-07 11:09

Hi vikrsing,

You're right, the pixel 7 has a tensor chip. I didn't realize that when asking the question (couldn't find another online forum dedicated to mbms anywhere anyway). Perhaps you could point me to a more appropriate place to ask the question?

As I understand, the Android telephony mbms software runs the same on the Tensor and the Qualcomm, so hopefully people here could still help me out. Does it seem like I've got everything set up correctly? Is there anything I need to do in particular to ensure I'm camped on a network cell and  am only requesting using a standardized TMGI value?

Thanks,

Morgan

  • Up0
  • Down0
or Register

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries (“Qualcomm”). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.