On Thu, May 7, 2009 at 12:23 PM, Daniel Baeyens <dbaey...@warp.es> wrote:

>
> Hi,
>
> Thanks for the info
>
> -radio already worked perfect :D . Previously I have been using this
> parameter for testing some AT commands, but for data connections, my
> USB dongle can work in two ways. You can send the correct AT commands
> to call and stablish a data connection ("classic" mode) or you can
> send one AT command which launches an internal PPP and shows on the
> system a network interface. For this task I need to have the whole
> device supported on the virtual machine (with kernel drivers compiled
> and so all).
>
> I have been able to set up my connection manually, sending AT commands
> with a small C program, then setting up by hand the network interface,
> DNS and the default route through that device. But my problem has been
> with rild/the rest of the system, because it seems to launch the modem
> emulator instead of using the attached device.
>
> Any hint? :)
>

Yes, have a look at hardware/ril/rild/rild.c and look for a comment that
says "special override when in the emulator"
this is followed by code in a #if 1 ... #endif block that is used to
override the ril settings when the daemon detects
that it is running in the emulator. Just replace the 3#if 1" by "#if 0" to
disable this in your build of the system image.

Also, you may need to modify the content of
system/core/rootdir/etc/init.golfish.rc (and init.goldfish.sh) if you want
to use a PPP device for the data connection.

Hope this helps


> Kind regards,
>
> On Thu, May 7, 2009 at 12:02 PM, David Turner <di...@android.com> wrote:
> >
> >
> > On Wed, May 6, 2009 at 11:00 AM, Daniel Baeyens <
> daniel.baey...@gmail.com>
> > wrote:
> >>
> >> Hi Nimit (and all the list),
> >>
> >> How did you solve this problem?
> >>
> >> I think now I'm facing a similar problem. I'm trying to test a 3G USB
> >> dongle with Android. For this:
> >>
> >> - I've needed to discard Android emulator because it doesn't allow to
> >> attach USB devices with -qemu -usb -usbdevice parameters (anyone knows
> >> if this has changed?)
> >
> > no, this didn't change, but did you try the -radio <device> option to
> > connect the modem emulation
> > directly to your dongle ? Assuming <device> points to a device file
> > corresponding to an AT command
> > channel (this won't help for the real data communication though which
> will
> > still happen with BSD sockets)
> >
> >>
> >> - Using a x86 image for eeepc, I have not been able to use qemu,
> >> because the framebuffer didn't start correctly (and I would have the
> >> same problem as the next point)
> >> - Using a x86 image for eeepc, I have tried to use it on Sun
> >> Virtualbox. With this one, the image started correctly, Android showed
> >> up and I have been able to check that my serial devices are on /dev/
> >> and the kernel seems to be working ok, but...
> >>
> >> Now, rild is correctly configured on init.rc and the system properties
> >> should be correctly set. The sockets appear on the /dev/socket/ dir,
> >> but Android always launches the Modem Emulator (instead of using the
> >> USB dongle), fakes the modem and says that I'm on roaming and data
> >> connected. If I restart the whole android (killing system-services or
> >> killing zygote), it launches the Modem emulator. If I kill just rild,
> >> I see some activity on the USB icon of VirtualBox, but Android does
> >> not switch from the emulator to rild... and if I restart android
> >> again, rild is again not used...
> >>
> >> I can't understand what's happening as I think I have no more things
> >> to test... Is it familiar this problem to you?
> >>
> >> Thank you very much, kind regards,
> >>
> >> On 9 ene, 11:00, "Nimit Manglick" <nimitandr...@gmail.com> wrote:
> >> > Yes the message comes from the dialer client only from
> >> >
> >> >
> >> >
> frameworks/base/telephony/java/com/android/internal/telephony/gsm/RIL.java
> >> > file.
> >> >
> >> > To my surprise the rild socket also gets created because the contents
> of
> >> > /dev/sockets are :-
> >> >
> >> > # ls -l
> >> > srw------- system   system            2000-01-01 00:00 installd
> >> > srw-rw---- bluetooth bluetooth          2000-01-01 00:00 dbus
> >> > srw-rw-rw- root     root              2000-01-01 00:00 zygote
> >> > *srw-rw---- root     radio             2000-01-01 00:00 rild*
> >> > srw-rw---- radio    system            2000-01-01 00:00 rild-debug
> >> > srw-rw---- root     mount             2000-01-01 00:00 mountd
> >> > srw-rw-rw- root     root              2000-01-01 00:00
> property_service
> >> >
> >> > and ls -l /dev/ttyS0 are :-
> >> >
> >> > crw------- root     root       4,  64 2000-01-01 00:00 ttyS0
> >> >
> >> > I am trying to change teh permissions from the init.rc script for
> ttyS0
> >> > as
> >> >
> >> > chmod 777 /dev/ttyS0  but its not reflecting
> >> >
> >> > Also my init.rc contains the folowing for rild daemon :-
> >> >
> >> >  chmod 777 /dev/ttyS0
> >> > service ril-daemon /system/bin/rild -l /system/lib/libreference-ril.so
> >> > -- -d
> >> > /dev/ttyS0
> >> >     socket rild stream 660 root radio
> >> >     socket rild-debug stream 660 radio system
> >> >     user root
> >> >     group radio cache inet misc
> >> >
> >> > Any pointers will be much helpful. As i am in total soup now.
> >> >
> >> > Thanks & Regards
> >> > Nimit
> >> >
> >> > On Fri, Jan 9, 2009 at 12:44 PM, Nimit Manglick
> >> > <nimitandr...@gmail.com>wrote:
> >> >
> >> > > Yes the message comes from the dialer client only from
> >> >
> >> > >
> >> > >
> frameworks/base/telephony/java/com/android/internal/telephony/gsm/RIL.java
> >> > > file.
> >> >
> >> > > To my surprise the rild socket also gets created because the
> contents
> >> > > of
> >> > > /dev/sockets are :-
> >> >
> >> > > # ls -l
> >> > > srw------- system   system            2000-01-01 00:00 installd
> >> > > srw-rw---- bluetooth bluetooth          2000-01-01 00:00 dbus
> >> > > srw-rw-rw- root     root              2000-01-01 00:00 zygote
> >> > > *srw-rw---- root     radio             2000-01-01 00:00 rild*
> >> > > srw-rw---- radio    system            2000-01-01 00:00 rild-debug
> >> > > srw-rw---- root     mount             2000-01-01 00:00 mountd
> >> > > srw-rw-rw- root     root              2000-01-01 00:00
> >> > > property_service
> >> >
> >> > > and ls -l /dev/ttyS0 are :-
> >> >
> >> > > crw------- root     root       4,  64 2000-01-01 00:00 ttyS0
> >> >
> >> > > I am trying to change teh permissions from the init.rc script for
> >> > > ttyS0 as
> >> >
> >> > > chmod 777 /dev/ttyS0  but its not reflecting
> >> >
> >> > > Also my init.rc contains the folowing for rild daemon :-
> >> >
> >> > >  chmod 777 /dev/ttyS0
> >> > > service ril-daemon /system/bin/rild -l
> /system/lib/libreference-ril.so
> >> > > --
> >> > > -d /dev/ttyS0
> >> > >     socket rild stream 660 root radio
> >> > >     socket rild-debug stream 660 radio system
> >> > >     user root
> >> > >     group radio cache inet misc
> >> >
> >> > > Any pointers will be much helpful. As i am in total soup now.
> >> >
> >> > > Thanks & Regards
> >> > > Nimit
> >> >
> >> > > On Fri, Jan 9, 2009 at 11:23 AM, Nimit Manglick
> >> > > <nimitandr...@gmail.com>wrote:
> >> >
> >> > >> Hi,
> >> >
> >> > >> I am getting the following error :-
> >> >
> >> > >> Couldn't find 'rild' socket; retrying after timeout
> >> >
> >> > >> So I think the rild daemon is not able to open the socket for its
> >> > >> clients
> >> > >> like dialer.
> >> >
> >> > >> Hence when i click on the dialer app it crashes throwing me the
> error
> >> >
> >> > >> "Not registered on Network"
> >> >
> >> > >> So please give me some pointers so that i can proceed further.
> >> >
> >> > >> And the complete radio log is :-
> >> > >> # logcat -b radio
> >> > >> I/RIL     (  666): Nimit log 1 in reference ril Ril_init function
> >> > >> I/RIL     (  666): Opening tty device /dev/ttyS0
> >> > >> D/RIL     (  666): Nimit Log 2 serial port name in reference ril
> >> > >> Ril_init
> >> > >> function is /dev/ttyS0
> >> > >> I/RIL     (  666): Nimit Log 2 serial port name in reference ril
> >> > >> Ril_init
> >> > >> function is /dev/ttyS0
> >> > >> E/RILC    (  666): Nimit log 1 inside libril inside Ril_register
> >> > >> function
> >> > >> E/RILC    (  666): Nimit log 2 inside libril inside Ril_register
> >> > >> function
> >> > >> before opening teh socket
> >> > >> E/RILC    (  666): Failed to get socket 'rild-debug' errno:0
> >> > >> W/GSM     (  688): Can't open /system/etc/voicemail-conf.xml
> >> > >> D/RILJ    (  688): [0000]> GET_CURRENT_CALLS
> >> > >> D/GSM     (  688): Poll ServiceState done:  oldSS=[1 home null null
> >> > >> null ]
> >> > >> newSS=[1 home null null null ] oldGprs=1 newGprs=n
> >> > >> D/RILJ    (  688): [0000]< GET_CURRENT_CALLS error:
> >> > >> com.android.internal.telephony.gsm.CommandException:
> >> > >> RADIO_NOT_AVAILABLE
> >> > >> D/GSM     (  688): [DataConnectionTracker] Radio is off and clean
> up
> >> > >> all
> >> > >> connection
> >> > >> D/GSM     (  688): [DataConnectionTracker] Clean up connection due
> to
> >> > >> radioTurnedOff
> >> > >> D/GSM     (  688): [DataConnection] Stop poll NetStat
> >> > >> D/GSM     (  688): [DataConnection] Stop poll NetStat
> >> > >> D/GSM     (  688): [DataConnectionTracker] ***trySetupData due to
> >> > >> roamingOff
> >> > >> D/GSM     (  688): [DataConnectionTracker] trySetupData: Not ready
> >> > >> for
> >> > >> data:  dataState=IDLE gprsState=1 sim=false UMTS=false
> >> > >> D/GSM     (  688): [GsmSimCard] Broadcasting intent
> >> > >> SIM_STATE_CHANGED_ACTION NOT_READY reason null
> >> > >> I/RILJ    (  688): Couldn't find 'rild' socket; retrying after
> >> > >> timeout
> >> > >> D/RILJ    (  688): WAKE_LOCK_TIMEOUT  mReqPending=0 mRequestList=0
> >> > >> I/RILJ    (  688): Couldn't find 'rild' socket; retrying after
> >> > >> timeout
> >> > >> I/RILJ    (  688): Couldn't find 'rild' socket; retrying after
> >> > >> timeout
> >> > >> I/RILJ    (  688): Couldn't find 'rild' socket; retrying after
> >> > >> timeout
> >> > >> I/RILJ    (  688): Couldn't find 'rild' socket; retrying after
> >> > >> timeout
> >> > >> I/RILJ    (  688): Couldn't find 'rild' socket; retrying after
> >> > >> timeout
> >> > >> I/RILJ    (  688): Couldn't find 'rild' socket; retrying after
> >> > >> timeout
> >> > >> E/RILJ    (  688): Couldn't find 'rild' socket after 8 times,
> >> > >> continuing
> >> > >> to retry silently
> >> >
> >> > >> Thanks & Regards
> >> > >> Nimit
> >> >
> >> >
> >>
> >>
> >
> >
> > >
> >
>
>
>
> --
> Daniel Baeyens
> Warp Networks S.L. - http://www.warp.es
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
unsubscribe: android-porting+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-porting
-~----------~----~----~----~------~----~------~--~---

Reply via email to