用oFono控制Nokia手机

因为oFono的plugins中加入了对Nokia Phonet的支持,oFono已经可以支持市场上比较高端的N系列手机了,如N900,N97等。我手上没有支持手机的列表,如果你有兴趣的,可以把你的手机通过数据线连上PC,在Linux用oFono看看它能不能识别出手机来。

连接Nokia手机

1. sudo src/ofonod –nd ‘*’ 启动oFono。

2. 用数据线连接手机,我的N900会询问你使用"storage mode”还是"PC suite modem”。选在PC suite mode。

3. 如果oFono能够检测到的话,会有类似下面的输出。

ofonod[4947]: plugins/usbpnmodem.c:usbpn_status_cb() Done regging modem /isimodem0
ofonod[4947]: plugins/usbpnmodem.c:usbpn_status_cb() Phonet link usbpn0 (16) is down
ofonod[4947]: plugins/usbpnmodem.c:usbpn_status_cb() Modem for interface usbpn0 already exists
ofonod[4947]: drivers/isimodem/isimodem.c:phonet_status_cb() Link usbpn0 (16) is up
ofonod[4947]: plugins/usbpnmodem.c:usbpn_status_cb() Phonet link usbpn0 (16) is up
ofonod[4947]: plugins/usbpnmodem.c:usbpn_status_cb() Modem for interface usbpn0 already exists
ofonod[4947]: drivers/isimodem/isimodem.c:reachable_cb() PN_MTC (v.018.000) reachable
ofonod[4947]: drivers/isimodem/isimodem.c:mtc_query_cb() current modem state: MTC_NORMAL (0x01)
ofonod[4947]: drivers/isimodem/isimodem.c:mtc_query_cb() target modem state: MTC_NORMAL (0x01)
ofonod[4947]: drivers/isimodem/isimodem.c:isi_modem_pre_sim() (0x966d6c0) with usbpn0
ofonod[4947]: drivers/isimodem/sim.c:sim_reachable_cb() PN_SIM (v.-01.-01) reachable
ofonod[4947]: drivers/isimodem/devinfo.c:reachable_cb() PN_PHONE_INFO (v008.005) reachable
ofonod[4947]: drivers/isimodem/voicecall.c:isi_call_verify_cb() PN_CALL (v007.020) reachable
ofonod[4947]: src/sim.c:ofono_sim_add_state_watch() 0x966ccd8
ofonod[4947]: src/sim.c:ofono_sim_add_state_watch() 0x966ccd8
ofonod[4947]: src/sim.c:ofono_sim_add_state_watch() 0x966ccd8
ofonod[4947]: drivers/isimodem/sim.c:isi_read_file_transparent() fileid = 6fae
ofonod[4947]: drivers/isimodem/sim.c:isi_read_file_transparent() Not implemented (fileid = 6fae)
ofonod[4947]: drivers/isimodem/sim.c:isi_read_file_info() Not implemented (fileid = 6fb7)
ofonod[4947]: src/voicecall.c:ecc_g2_read_cb() 0
ofonod[4947]: drivers/isimodem/sim.c:isi_read_file_info() Not implemented (fileid = 6fb7)
ofonod[4947]: src/voicecall.c:ecc_g3_read_cb() 0
ofonod[4947]: drivers/isimodem/sim.c:fake_file_info() Returning static file_info for 2fe2
ofonod[4947]: drivers/isimodem/sim.c:isi_read_file_transparent() fileid = 2fe2
ofonod[4947]: drivers/isimodem/sim.c:isi_read_file_info() Not implemented (fileid = 6f05)
ofonod[4947]: drivers/isimodem/sim.c:isi_read_file_info() Not implemented (fileid = 2f05)
ofonod[4947]: drivers/isimodem/sim.c:isi_read_file_info() Not implemented (fileid = 6f16)
ofonod[4947]: drivers/isimodem/isimodem.c:isi_modem_post_sim() (0x966d6c0) with usbpn0
ofonod[4947]: Example History Probe for modem: 0x966d6c0
ofonod[4947]: Example Network Time Probe for modem: 0x966d6c0
ofonod[4947]: drivers/isimodem/sim.c:isi_read_file_info() Not implemented (fileid = 6f40)
ofonod[4947]: drivers/isimodem/sim.c:isi_read_file_info() Not implemented (fileid = 6f49)
ofonod[4947]: drivers/isimodem/phonebook.c:reachable_cb() PN_SIM (v-01.-01) reachable
ofonod[4947]: drivers/isimodem/isimodem.c:isi_modem_online() (0x966d6c0) with usbpn0
ofonod[4947]: drivers/isimodem/isimodem.c:mtc_state_cb() cause: MTC_ALREADY_ACTIVE (0x06)
ofonod[4947]: drivers/isimodem/isimodem.c:isi_modem_post_online() (0x966d6c0) with usbpn0
ofonod[4947]: drivers/isimodem/gprs.c:gpds_reachable_cb() PN_GPDS (v017.026)
ofonod[4947]: drivers/isimodem/gprs-context.c:gpds_ctx_reachable_cb() PN_GPDS (v017.026) for PDP contexts
ofonod[4947]: drivers/isimodem/network-registration.c:reachable_cb() PN_NETWORK (v014.002) reachable
ofonod[4947]: Registered: Dial-Up Networking, handle: 0x10007
ofonod[4947]: src/network.c:__ofono_netreg_add_status_watch() 0x966d4d0
ofonod[4947]: drivers/isimodem/sms.c:routing_resp_cb() Request failed: 0x04 (SMS_ERR_PP_RESERVED).
4. ofono/test/list-modems

xxx@xxx:~/ofono/test$ ./list-modems
[ /isimodem0 ]
    Features = sim
    Powered = 1
    Interfaces = org.ofono.Phonebook org.ofono.SimManager org.ofono.VoiceCallManager
    Online = 0
    Model = Nokia N900
    Manufacturer = Nokia
    Serial = 356938030516794
    Revision = RX-51_1.2009.42.11
V 0.0.000
RX-51
(c) NOKIA
    [ org.ofono.Phonebook ]
    [ org.ofono.SimManager ]
        SubscriberNumbers =
        CardIdentifier = 89860052090975205163
        LockedPins =
        PinRequired = none
        SubscriberIdentity = 460004520285163
        Present = 1
    [ org.ofono.VoiceCallManager ]
        EmergencyNumbers = 119 118 999 110 08 000 911 112
        MultipartyCalls =
        Calls =

5. ./online-modem /isimodem0

xxx@xxx:~/ofono/test$ ./online-modem /isimodem0
Setting modem /isimodem0 online...

6. ./list-modems

xxx@xxx:~/ofono/test$ ./list-modems
[ /isimodem0 ]
    Features = sms net gprs sim
    Powered = 1
    Interfaces = org.ofono.CallSettings org.ofono.CallForwarding org.ofono.SupplementaryServices org.ofono.SmsManager org.ofono.NetworkRegistration org.ofono.DataConnectionManager org.ofono.Phonebook org.ofono.SimManager org.ofono.VoiceCallManager
    Online = 1
    Model = Nokia N900
    Manufacturer = Nokia
    Serial = 356938030516794
    Revision = RX-51_1.2009.42.11
V 0.0.000
RX-51
(c) NOKIA
    [ org.ofono.CallSettings ]
        CalledLineRestriction = unknown
        HideCallerId = default
        CallingLinePresentation = unknown
        CalledLinePresentation = unknown
        VoiceCallWaiting = disabled
        CallingLineRestriction = unknown
    [ org.ofono.CallForwarding ]
    [ org.ofono.SupplementaryServices ]
        State = idle
    [ org.ofono.SmsManager ]
        UseDeliveryReports = 0
        Bearer = cs-preferred
        ServiceCenterAddress = +8613800210500
    [ org.ofono.NetworkRegistration ]
        Status = registered
        Strength = 100
        Name = CMCC
        Operators = /isimodem0/operator/46000
        LocationAreaCode = 6253
        Mode = auto
        Technology = edge
        CellId = 34385
    [ org.ofono.DataConnectionManager ]
        Powered = 1
        Attached = 1
        PrimaryContexts =
        RoamingAllowed = 1
    [ org.ofono.Phonebook ]
    [ org.ofono.SimManager ]
        SubscriberNumbers =
        CardIdentifier = 89860052090975205163
        LockedPins =
        PinRequired = none
        SubscriberIdentity = 460004520285163
        Present = 1
    [ org.ofono.VoiceCallManager ]
        EmergencyNumbers = 119 118 999 110 08 000 911 112
        MultipartyCalls =
        Calls =

7. 接下来就可以打电话,发短信了。

8. 打一个电话

xxx@xxx:~/ofono/test$ ./test-voicecall 10086
Using modem /isimodem0
dbus.Array([], signature=dbus.Signature('o'), variant_level=1)
Call list modification>
No calls in systems
Dialing 10086...
Dialing in progress, got obj: /isimodem0/voicecall01
State: dialing, Number: 10086
Call list modification>
Call /isimodem0/voicecall01, Status: dialing, LineId: 10086
Voicecall property: 'State' changed to 'alerting'
Voicecall property: 'State' changed to 'active'
Voicecall property: 'StartTime' changed to '2010-07-29T13:08:05+0800'
Hanging up
Voicecall property: 'State' changed to 'disconnected'
Call list modification>
No calls in systems

9. GPRS

xxx@xxx:~/ofono/test$ ./list-contexts
[ /isimodem0 ]

xxx@xxx:~/ofono/test$ ./create-context cmnet
Setting APN of /isimodem0/primarycontext1 to cmnet
xxx@xxx:~/ofono/test$
xxx@xxx:~/ofono/test$ ./list-contexts
[ /isimodem0 ]
    [ /isimodem0/primarycontext1 ]
        Username =
        Protocol = ip
        Name = Internet access
        Settings = { }
        Active = 0
        AccessPointName = cmnet
        Password =
        Type = internet

xxx@xxx:~/ofono/test$ ./activate-context
xxx@xxx:~/ofono/test$ ./list-contexts
[ /isimodem0 ]
    [ /isimodem0/primarycontext1 ]
        Username =
        Protocol = ip
        Name = Internet access
        Settings = { Interface=gprs0 Method=dhcp DomainNameServers=211.136.112.50,211.136.20.203, Address=10.85.89.3 }
        Active = 1
        AccessPointName = cmnet
        Password =
        Type = internet

xxx@xxx:~/ofono/test$ ./deactivate-context
xxx@xxx:~/ofono/test$ ./remove-contexts
Removed: [ /isimodem0/primarycontext1 ]

10. SMS

xxx@xxx:~/ofono/test$ ./send-sms 135xxxxxxxx hello

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值