[Android] Data usage cannot work with 3G mobile connection

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

[Android] Data usage cannot work with 3G mobile connection

Jump to solution
2,620 Views
charleshuang
Senior Contributor II

Hi,

We are porting our 3G modules on our i.MX6 product. It can connect network & browse websites, but we find the data usage does not work.

In Settings -> Data usage, the measurement always shows 0.00 Byte used.

Because we do not have the support 3G modules for Freescale demo board, could you help to double confirm if this feature is available on BSP Android jb4.2.2_1.0.0-ga?

    HUAWEI EM770W modem

    Infineon Amazon 1 modem

    ZTE FM210 modem

Furthermore, I doubt this issue may be caused by netfilter. From logs, we gets lots of xt_quota errors that make BandwidthController failed to send iptable commands.

Additionally, Jelly Bean 4.2 should be based on Linux kernel 3.4.0, but Freescale BSP is based on kernel 3.0.35.

I'm not sure if this difference will cause such problems.

[dmesg]

<3>xt_quota.3: illegal name

[logcat]

01-24 11:00:24.655 D/ConnectivityService( 2488): ConnectivityChange for mobile: CONNECTED/CONNECTED

01-24 11:00:24.665 E/ConnectivityService( 2488): no dns provided for mobile - using 8.8.8.8

01-24 11:00:24.675 E/ConnectivityService( 2488): exception setting default dns interface: java.lang.IllegalArgumentException: command '86 resolver setifdns /dev/ttyUSB2' failed with '500 86 Wrong number of arguments to resolver setifdns'

01-24 11:00:24.735 E/BandwidthController( 2200): runIptablesCmd(): failed /system/bin/iptables -I costly_/dev/ttyUSB2 -m quota2 ! --quota 9223372036854775807 --name /dev/ttyUSB2 --jump REJECT --reject-with icmp-net-prohibited res=256

01-24 11:00:24.735 E/BandwidthController( 2200): runIptablesCmd(): failed /system/bin/ip6tables -I costly_/dev/ttyUSB2 -m quota2 ! --quota 9223372036854775807 --name /dev/ttyUSB2 --jump REJECT --reject-with icmp6-adm-prohibited res=256

01-24 11:00:24.735 E/BandwidthController( 2200): Failed set quota rule

01-24 11:00:24.735 E/BandwidthController( 2200): No such iface /dev/ttyUSB2 to delete

01-24 11:00:24.735 F/NetworkPolicy( 2488): problem setting interface quota

01-24 11:00:24.735 F/NetworkPolicy( 2488): java.lang.IllegalStateException: command '87 bandwidth setiquota /dev/ttyUSB2 9223372036854775807' failed with '400 87 Bandwidth command failed'

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at com.android.server.NetworkManagementService.setInterfaceQuota(NetworkManagementService.java:1156)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at com.android.server.net.NetworkPolicyManagerService.setInterfaceQuota(NetworkPolicyManagerService.java:1964)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at com.android.server.net.NetworkPolicyManagerService.updateNetworkRulesLocked(NetworkPolicyManagerService.java:1071)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at com.android.server.net.NetworkPolicyManagerService.access$1300(NetworkPolicyManagerService.java:171)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at com.android.server.net.NetworkPolicyManagerService$12.onReceive(NetworkPolicyManagerService.java:905)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:758)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at android.os.Handler.handleCallback(Handler.java:725)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at android.os.Handler.dispatchMessage(Handler.java:92)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at android.os.Looper.loop(Looper.java:137)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at android.os.HandlerThread.run(HandlerThread.java:60)

01-24 11:00:24.735 F/NetworkPolicy( 2488): Caused by: com.android.server.NativeDaemonConnector$NativeDaemonFailureException: command '87 bandwidth setiquota /dev/ttyUSB2 9223372036854775807' failed with '400 87 Bandwidth command failed'

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at com.android.server.NativeDaemonConnector.execute(NativeDaemonConnector.java:349)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at com.android.server.NativeDaemonConnector.executeForList(NativeDaemonConnector.java:286)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at com.android.server.NativeDaemonConnector.execute(NativeDaemonConnector.java:252)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      at com.android.server.NetworkManagementService.setInterfaceQuota(NetworkManagementService.java:1153)

01-24 11:00:24.735 F/NetworkPolicy( 2488):      ... 9 more

Thanks for your help.

Best regards,

Daniel

Labels (2)
1 Solution
1,157 Views
JayTu
NXP Employee
NXP Employee

We verified the functionality of 3G(TX/RX) on our platform. This issue is not related to Freescale BSP/driver from current discussion. If you need help on further tracing OS/APP level, our Marketing should have 3rd parties good at this for you

View solution in original post

0 Kudos
10 Replies
1,157 Views
danielhung
Contributor III

Hi Yixing,

No. The issue is not fixed yet.

@ Jay,

As your suggestion, I try to run iptables directly on console, but it still fails.

Here is the error messages.

[Send the commands as what BandwidthController do]

130|root@android:/ # iptables -I costly_/dev/ttyUSB2 -m quota2 ! --quota 9223372036854775807 --name /dev/ttyUSB2 --jump REJECT --reject-with icmp-net-prohibited res=256

Bad argument `res=256'

Try `iptables -h' or 'iptables --help' for more information.

[Send commands without res=256]

130|root@android:/ # iptables -I costly_/dev/ttyUSB2 -m quota2 ! --quota 9223372036854775807 --name /dev/ttyUSB2 --jump REJECT --reject-with icmp-net-prohibited
xt_quota.3: illegal name

iptables: Invalid argument. Run `dmesg' for more information.

Best regards,

Daniel

0 Kudos
1,157 Views
YixingKong
Senior Contributor IV

Daniel

Please keep communicating with our engineer and respond promptly.

Regards,

Yixing

0 Kudos
1,157 Views
danielhung
Contributor III

Hi Yixing & Jay,

We prefer to know if this issue can be also observed on FSL demo board, rather than dig out the problem.

So, could you try to verify this issue on demo board with Android jb4.2.2_1.0.0-ga BSP?

Maybe you don't have 3G modem in Taiwan, but I think you may have internal request channel to do this.

Thanks,

Daniel

0 Kudos
1,157 Views
YixingKong
Senior Contributor IV

Daniel

We have not got your response yet and will close the discussion in 3 days. If you still need help, please feel free to reply with an update to this discussion.

Thanks,

Yixing

0 Kudos
1,157 Views
danielhung
Contributor III

Hi Jay & Yixing,

Based on the result on Freescale board, I think this issue may be caused by 3rd party.

You can close this discussion.

Thanks for help!

Best regards,

Daniel

0 Kudos
1,157 Views
YixingKong
Senior Contributor IV

Daniel

As Jay mentioned the issue is not on Freescale board, you may try to dig the root cause on your HW. Please communicate with Jay for any further questions/issues, otherwise, we would like to close the discussion in 3 days.

Thanks,

Yixing

0 Kudos
1,158 Views
JayTu
NXP Employee
NXP Employee

We verified the functionality of 3G(TX/RX) on our platform. This issue is not related to Freescale BSP/driver from current discussion. If you need help on further tracing OS/APP level, our Marketing should have 3rd parties good at this for you

0 Kudos
1,157 Views
JayTu
NXP Employee
NXP Employee

Hi Daniel,

The purpose to run iptables directly is to dig further the problem. I didn't mean the solution is to run iptables.

You can check why it got the error. From the error message, looks like the parameter is wrong.

0 Kudos
1,157 Views
YixingKong
Senior Contributor IV

Charles

Has your issuegot resolved? If yes, we will close the DI in 3 days, otherwise please reply with an update.

Thanks,

Yixing

0 Kudos
1,157 Views
JayTu
NXP Employee
NXP Employee

It looks like iptables didn't execute successfully,

01-24 11:00:24.735 E/BandwidthController( 2200): runIptablesCmd(): failed /system/bin/iptables -I costly_/dev/ttyUSB2 -m quota2 ! --quota 9223372036854775807 --name /dev/ttyUSB2 --jump REJECT --reject-with icmp-net-prohibited res=256

01-24 11:00:24.735 E/BandwidthController( 2200): runIptablesCmd(): failed /system/bin/ip6tables -I costly_/dev/ttyUSB2 -m quota2 ! --quota 9223372036854775807 --name /dev/ttyUSB2 --jump REJECT --reject-with icmp6-adm-prohibited res=256

Suggest to run iptables directly on console and look into. We need more exactly clue to help check it if it is FSL platform issue and we don't have 3G modem in Taiwan.