Hi,

On Thu, May 7, 2009 at 1:37 PM, David Turner <di...@android.com> wrote:
> 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.

Ok, checking the code, I've seen that this part I had it already with
"#if 0". I have done a couple of tests, and I've seen that rild is
correctly getting the /dev/tty device. If I send AT commands with my
tool, and then I "kill <rild_pid>", I see distinct strings on "logcat
-b radio", so rild is working... Thanks for the tip :)

But my real problem is still there... When the UI starts, I'm seeing
fake info (it says that I'm in roaming and data connected with Edge).
This is simply not possible (using a SIM card from my own country,
which doesn't support EDGE anywhere :P).

Maybe my problem is with the "/dev/socket/rild" and
"/dev/socket/rild-debug"?. Doing a "ls -l /dev/socket/", rild is a
socket, with 660 permissions for root:radio, and rild-debug is a
socket with 660 permissions for radio:system (as it is specified on
init.rc)

What part of android tries to use them, and what does it do when
something doesn't work?

> 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.

Nice :) But I would like to connect with the USB dongle configuring up
the network device. In case this would be impossible, then I'll try
with ppp. Thanks for pointing this other bit

> Hope this helps
Not really, but I'm pretty close ;)

Thanks and kind regards,

>>
>> 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
>>
>>
>
>
> >
>



-- 
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