Thanks much for the pointers, we are certainly missing some of the setprop's. I will try those. However, we are using Donut (1.6) and I wonder if they will work there.
More detail: I've not been able to see my way clear to setting up the data call via the RIL. I think I could spawn ppp (via system(pppd ...) ??) and connect it to the second CMUX channel when REQUEST_SETUP_DATA_CALL happened, but I would still need to tell Android to use that channel, not the original command connection, and I can't see how to do that. So what I did was run pppd (with scripts and chat to dial the "ISP" and using the alternate mux channel on /dev/pts/0) outside of the RIL from the console. This works, the connection is established, and I do a setprop net.dns1 manually. (I believe the scripts are doing a "defaultroute" when pppd starts, the equivalent of route add default gw xx.xx.xx.xx dev ppp0 I do not need to run route explicitly). At this point I can ping www.google.com, but any attempt to start the web browser from Android touchscreen just hangs or gives an error. Thanks again for the help. Mike On May 10, 3:58 am, Uhrenfeldt Henrik <[email protected]> wrote: > Hi ms12, > > We created a setup where a 3G mobile broadband dongle works as telephony > backend for Android Eclaire (without voice calls of course). It sounds > similar to what you guys are doing. > > I believe that implementing an ip-up script in /system/etc/ppp will make > things work: > > /system/etc/ppp/ip-up should contain something like this: > > /system/bin/setprop "net.interfaces.defaultroute" "gprs" > /system/bin/setprop "net.gprs.dns1" "$DNS1" > /system/bin/setprop "net.gprs.dns2" "$DNS2" > /system/bin/setprop "net.gprs.local-ip" "$IPLOCAL" > /system/bin/setprop "net.gprs.remote-ip" "$IPREMOTE" > /system/bin/setprop "net.gprs.gw" "$IPREMOTE" > > This script will run every time PPP sets up a connection and provide Android > with the correct gateway, dns, etc. To check that it actually ran, I added > the following: > > /system/bin/log -t pppd "IP-UP TRACE for gprs" > /system/bin/log -t pppd "DNS1 $DNS1" > /system/bin/log -t pppd "DNS2 $DNS2" > /system/bin/log -t pppd "local-ip $IPLOCAL" > /system/bin/log -t pppd "remote-ip $IPREMOTE" > /system/bin/log -t pppd "gw $IPREMOTE" > > ..which will throw useful information into logcat output. > > You can also make a /system/etc/ip-down script to change things back the way > they were (if you have multiple ways of connecting to the internet). > > But how do you initiate the PPP connection? Via Android RIL or just via init? > I am unsure of whether Android will understand that it has a GPRS packet data > connection without proper handling in the RIL (I don't know if setting the > above properties is sufficient)... > > You should be aware that in later Android releases you need some security > hacks to allow the RIL to spawn the PPP process (which must run as root), and > you need some tweaky plumbing to ensure proper interaction between RIL & PPP > during handling of RIL_REQUEST_SETUP_DATA_CALL... > > Let me know how you get along with this. > > - Henrik > > -----Original Message----- > From: [email protected] > [mailto:[email protected]] On Behalf Of Daniel Baeyens > Sent: 10. maj 2010 10:23 > To: [email protected] > > Cc: android-porting > Subject: Re: [android-porting] Data connection via cell modem (GPRS) > > Hi, > > On Mon, May 10, 2010 at 4:53 AM, ms12 <[email protected]> wrote: > > We are trying to implement a demo of a mobile industrial sensor via > > android. One of the goals of the demonstration is to send data to a > > web site. The cell modem is working for SMS messages via the > > reference RIL just fine. We would like to use GPRS to allow somewhat > > more data. We currently have the gsm0710muxd working, with one > > channel connected to the RIL, the other connected via chat/pppd such > > that ping works from the Linux console. What we can't seem to figure > > out is how to get Android to use the default route that is set up via > > pppd. Can anybody give me some pointers on what needs to be done to > > get Android to use the connection? Thanks much in advance. > > Which is the full command you are using for setting the route? > > Can you explain a little bit more your process? > > KR > -- > Daniel Baeyens > Warp Networks S.L. -http://www.warp.es > > -- > unsubscribe: [email protected] > website:http://groups.google.com/group/android-porting > > -- > unsubscribe: [email protected] > website:http://groups.google.com/group/android-porting -- unsubscribe: [email protected] website: http://groups.google.com/group/android-porting
