Telephony stack not running in x86 emulator
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ofono (Ubuntu) |
Fix Released
|
Medium
|
Tony Espy | ||
ofono (Ubuntu RTM) |
Incomplete
|
Undecided
|
Unassigned | ||
urfkill (Ubuntu) |
Fix Released
|
Medium
|
Tony Espy | ||
urfkill (Ubuntu RTM) |
Incomplete
|
Undecided
|
Unassigned |
Bug Description
The x86 emulator is supposed to be a valuable tool for testing, app development and more. But cellular telephony functionality is not available by default.
Test steps:
- Create an Ubuntu Touch x86 emulator (using 'ubuntu-emulator create --arch=i386')
- Try any cellular telephony functionality, such as
- send an SMS from UI
- receive an SMS via 'adb emu sms send 12345 Hello'
- change network strength via 'adb emu gsm signal 31'
- It's all unavailable because oFono is not running and not online.
In the real device, oFono is started by upstart, and then set to 'online' state by urfkill.
In the emulator, ofono must be started manually ('start ofono'), urfkill cannot be started at all, but oFono can be set online via '/usr/share/
Version info:
root@ubuntu-
current build number: 120
device name: generic_x86
channel: ubuntu-
last update: 2014-07-08 03:32:25
version version: 120
version ubuntu: 20140708
version device: 20140625
Changed in ofono (Ubuntu): | |
importance: | High → Medium |
Changed in urfkill (Ubuntu): | |
importance: | High → Medium |
The oFono part seems to be caused by bad startup dependencies. On my machine, the oFono daemon startup happens just a few seconds before the RIL daemon startup, while oFono expects RIL to be up'n'running first.
grep ofono /var/log/syslog:
Jul 8 07:22:21 ubuntu-phablet ofonod[653]: oFono version 1.12
Jul 8 07:22:21 ubuntu-phablet ofonod[653]: RILDEV detected modem type ril, 1 SIM slot(s)
Jul 8 07:22:21 ubuntu-phablet ofonod[653]: create_ril: can't connect to RILD: Connection refused (111)
Jul 8 07:22:21 ubuntu-phablet ofonod[653]: Exiting...
< ... repeats ca. 10 times ... >
Jul 8 07:22:22 ubuntu-phablet ofonod[709]: oFono version 1.12
Jul 8 07:22:22 ubuntu-phablet ofonod[709]: RILDEV detected modem type ril, 1 SIM slot(s)
Jul 8 07:22:22 ubuntu-phablet ofonod[709]: create_ril: can't connect to RILD: Connection refused (111)
Jul 8 07:22:22 ubuntu-phablet ofonod[709]: Exiting...
Jul 8 07:22:22 ubuntu-phablet kernel: [ 3.218832] init: ofono main process (709) terminated with status 1
Jul 8 07:22:22 ubuntu-phablet kernel: [ 3.218861] init: ofono respawning too fast, stopped
/system/bin/logcat -b radio -v time:
07-08 07:22:23.512 D/RILD ( 573): overriding with -s /dev/socket/qemud
07-08 07:22:23.522 I/RIL ( 573): Opening socket /dev/socket/qemud
07-08 07:22:23.522 E/RILC ( 573): RIL_register: RIL version 9
07-08 07:22:23.522 D/RIL ( 573): setRadioState(0)
07-08 07:22:23.522 D/AT ( 573): AT> ATE0Q0V1
07-08 07:22:23.522 D/AT ( 573): AT< OK
I can fix that by delaying oFono's respawns (append 'post-stop exec sleep 1' to /etc/init/ ofono.override) . But the upstart config also points to a 'rild-ready' signal, so maybe that mechanism doesn't work as intended.