RIL Drivers for Android 13 EG25-E( EVB USB )

RIL Drivers for Android 13 EG25-E( EVB USB )

Are drivers available for Android 13 for this module yet?
Where can I download the latest Android RIL Driver & Guide?

1 Like

Could you tell me which Chip the Android is?
Could you show the results :slight_smile:

getprop | grep ril

I will send you the ril driver later.

the Quectel RIl driver has been sent already.

I have Rockchip rk3588

OK. Great!
Have you already ported the Linux kernel driver?

I referred to this link.

If you have rk3588 and android13(aosp) like me, is there a guide I can refer to?

Is there a command that can check the normal operation of the module?
I don’t have usim.

No such tools from Quectel to send AT.
If the rild is not running, you could send AT with AT command.
for example,
initialize the ttyUSB2:

stty -F /dev/ttyUSB2 raw -echo

read:
cat /dev/ttyUSB2

write AT:

echo -ne “at+qeng="servingcell"\r\n” > /dev/ttyUSB2

I have another question.
When inserting a library into the Android system
Should I overwrite the libril.so file?
libril.so exists on existing systems.

Yes.
If you would like the IRadio 1.4/1.5/1.6, you have to overwrite the libril.so

Thank you for your help.
I think the operation was not successful.

Please refer to the modified work below.
How do I check if it’s working?

android13 code edit

--------------------- 1. rild.rc

nano hardware/ril/rild/rild.rc

service ril-daemon /vendor/bin/hw/rild -l /vendor/lib64/libquectel-ril.so
    class main
    user root
    group radio cache inet misc audio log readproc wakelock
    capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW

--------------------- 2. manifest.xml

     <hal format="hidl">
         <name>android.hardware.radio</name>
         <transport>hwbinder</transport>
-        <fqname>@1.1::IRadio/slot1</fqname>
-        <fqname>@1.1::IRadio/slot2</fqname>
+        <fqname>@1.4::IRadio/slot1</fqname>
         <fqname>@1.2::ISap/slot1</fqname>
     </hal>
-    <hal format="hidl">
+    <!-- <hal format="hidl">
         <name>android.hardware.radio.deprecated</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
@@ -14,7 +13,7 @@
             <name>IOemHook</name>
             <instance>slot1</instance>
         </interface>
-    </hal>
+    </hal> -->
     <hal format="hidl">
         <name>android.hardware.radio.config</name>
         <transport>hwbinder</transport>

--------------------- 3. device/rockchip/common/BoardConfig.mk

+PRODUCT_PACKAGES += Dialer \
+                    messaging
\ No newline at end of file

--------------------- 4.

device/rockchip/common/overlay/frameworks/base/core/res/res/values/config.xml  
     <!-- This device is not "voice capable"; it's data-only. -->
-    <bool name="config_voice_capable">false</bool>
+    <bool name="config_voice_capable">true</bool>
 
     <!-- This device does not allow sms service. -->
-    <bool name="config_sms_capable">false</bool>
+    <bool name="config_sms_capable">true</bool>
 
     <!-- If this is true, the screen will come on when you unplug usb/power/whatever. -->
     <bool name="config_unplugTurnsOnScreen">true</bool>

--------------------- 5. frameworks/base/telephony/java/android/telephony/CarrierConfigManager.java

         sDefaults.putBoolean(KEY_USE_OTASP_FOR_PROVISIONING_BOOL, false);
         sDefaults.putBoolean(KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL, false);
         sDefaults.putBoolean(KEY_VOICE_PRIVACY_DISABLE_UI_BOOL, false);
-        sDefaults.putBoolean(KEY_WORLD_PHONE_BOOL, false);
+        sDefaults.putBoolean(KEY_WORLD_PHONE_BOOL, true);
         sDefaults.putBoolean(KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL, true);
         sDefaults.putBoolean(KEY_RESTART_RADIO_ON_PDP_FAIL_REGULAR_DEACTIVATION_BOOL, false);
         sDefaults.putIntArray(KEY_RADIO_RESTART_FAILURE_CAUSES_INT_ARRAY, new int[]{});

--------------------- 6. hardware/ril/libril/Android.mk

LOCAL_SHARED_LIBRARIES := \
     librilutils \
     android.hardware.radio@1.0 \
     android.hardware.radio@1.1 \
+	android.hardware.radio@1.2 \
+	android.hardware.radio@1.3 \
+	android.hardware.radio@1.4 \
+	android.hardware.radio@1.5 \
+	android.hardware.radio.config@1.0 \
+	android.hardware.radio.config@1.1 \
+	android.hardware.radio.config@1.2 \
     libhidlbase \
+	libhidltransport \
+	libhwbinder \
+	android.hardware.secure_element@1.0 \
+	android.hardware.secure_element@1.1 \
+	android.hardware.secure_element@1.2 \
 
 LOCAL_STATIC_LIBRARIES := \
     libprotobuf-c-nano-enable_malloc-32bit \

--------------------- 7. .so file push

adb root
adb remount vendor
adb push libril.so /vendor/lib64/
adb push libreference-ril.so /vendor/lib64/libquectel-ril.so

I am not sure. Seems there is no crucial problem.

I have sent you the RIL libs which includes the 1.4/1.5/1.6.
It is recommended to try the IRadio 1.5.

Maybe some shared libs might be needed by the libril.so. You could find it in the logcat log.

image

Thank you for always.
sevice ril-deamon finally works.
However, the version cannot be checked with the getprop gsm.version.ril-impl command.

Please provide the log

logcat -b all

Hello, I am also facing similar issue in Android 11.
I am getting all my ril running but I am not able to see anything on UI.(no signal bar, no mobile network settings)
I know for sure that libril.so needs to be overridden by the libril.so which is provided by quectel.
But when I am doing the following
PRODUCT_COPY_FILES +=
vendor/quectel/em05/ril/libril.so:vendor/lib64/libril.so

I am getting the following error

FAILED:
build/make/core/Makefile:49: error: overriding commands for target `out/target/product/imx8mm/vendor/lib64/libril.so’, previously defined at build/make/core/base_rules.mk:492

It is not letting me override the existing libril.so file.

Can you please help me by telling that how did you overwrite the existing libril.so file

Thanks in advance

Hi Bean.Wang-Q,
Can you also send me the RIL (1.5/1.6) & GNSS (2.1) drivers? I’ve the same Setup (Android 13 @RK3588s)

It means that the with the PRODUCT_COPY_FILES, there is conficts with the hardware/ril/libril. It depends on the source code.

I can send you the RIL libs.

For GNSS you can try the 2.0. Please check the message.

Ok, can you send me the RIL libs (please with libril.so!) and the gnss 2.0 driver?