Send connman mailing list submissions to
[email protected]
To subscribe or unsubscribe via the World Wide Web, visit
https://lists.01.org/mailman/listinfo/connman
or, via email, send a message with subject or body 'help' to
[email protected]
You can reach the person managing the list at
[email protected]
When replying, please edit your Subject line so it is more specific
than "Re: Contents of connman digest..."
Today's Topics:
1. Re: Tether WiFi to cellular modem uplink (Evade Flow)
2. Re: [PATCH 2/5] session: add allowed interface config
parameter (Lukasz Nowak)
----------------------------------------------------------------------
Message: 1
Date: Wed, 14 Dec 2016 11:20:30 -0500
From: Evade Flow <[email protected]>
To: Daniel Wagner <[email protected]>
Cc: Patrik Flykt <[email protected]>, [email protected]
Subject: Re: Tether WiFi to cellular modem uplink
Message-ID:
<camab8zppwydcirlxcuhhyp-yb_tjylgorwevkt1kzyoi08g...@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"
Well... I dunno if this is the 'right' rule, but I tried adding
this:
root@embedded $ cat /etc/udev/rules.d/30-ofono.rules
KERNEL=="cdc-wdm0", ENV{OFONO_DRIVER}="qmi"
This was essentially a WAG based on the contents of:
-
http://git.kernel.org/cgit/network/ofono/ofono.git/tree/doc/calypso-modem.txt
TL/DR summary: it didn't work. The `monitor-ofono` script still
failed to generate any output when I inserted the USB modem. It's
just not seeing it for some reason.
I really wish I knew what I was doing wrong here. Any advice?
On Wed, Dec 14, 2016 at 10:34 AM, Evade Flow <[email protected]> wrote:
> Thanks for the detailed reply! It doesn't look like ofono is
> recognizing the modem (a Sierra Wireless AC340U). First, I confirmed
> that ofonod was actually running and exporting the expected
> interfaces to D-Bus:
>
> ```
> root@embedded $ ps ax | grep ofono | grep -v grep
> 1739 ? Ss 0:00 /usr/sbin/ofonod -n
> root@embedded $ ofonod --version
> 1.17
> root@embedded $ gdbus introspect --recurse --system --dest=org.ofono
> --object-path=/
> node / {
>
> ...
>
> interface org.ofono.Manager {
> methods:
> GetModems(out a(oa{sv}) modems);
> signals:
> ModemAdded(o path,
> a{sv} properties);
> ModemRemoved(o path);
> properties:
> };
>
> ...
> }
>
> ```
>
> NOTE: `gdbus` results elided to save space. Full output here:
> - https://gist.github.com/evadeflow/8ae65f6874b8dd5b0802a5a947ad3cee
>
>
> After that, when I ran:
>
> ```
> root@embedded $ ./monitor-ofono
> ```
>
> and then plugged in the modem, the `monitor-ofono` program never
> output anything. But the following was emitted in a separate
> terminal window where I was running `dmesg`:
>
> ```
> [ 1450.136992] usb 1-2.4: new high-speed USB device number 9 using xhci_hcd
> [ 1450.209767] usb 1-2.4: config 1 has an invalid interface number: 9 but
> max is 0
> [ 1450.209772] usb 1-2.4: config 1 has no interface number 0
> [ 1450.210269] usb 1-2.4: New USB device found, idVendor=1199,
> idProduct=0fff
> [ 1450.210281] usb 1-2.4: New USB device strings: Mfr=1, Product=2,
> SerialNumber=3
> [ 1450.210288] usb 1-2.4: Product: AirCard 340U
> [ 1450.210290] usb 1-2.4: Manufacturer: Sierra Wireless, Incorporated
> [ 1450.210293] usb 1-2.4: SerialNumber: 013323000518432
> [ 1450.211348] usb-storage 1-2.4:1.9: USB Mass Storage device detected
> [ 1450.212393] usb-storage: probe of 1-2.4:1.9 failed with error -5
> [ 1453.522157] usb 1-2.4: USB disconnect, device number 9
> [ 1453.941143] usb 1-2.4: new high-speed USB device number 10 using
> xhci_hcd
> [ 1454.013939] usb 1-2.4: config 1 has an invalid interface number: 8 but
> max is 4
> [ 1454.013943] usb 1-2.4: config 1 has an invalid interface number: 9 but
> max is 4
> [ 1454.013947] usb 1-2.4: config 1 has no interface number 1
> [ 1454.013949] usb 1-2.4: config 1 has no interface number 4
> [ 1454.014438] usb 1-2.4: New USB device found, idVendor=1199,
> idProduct=9051
> [ 1454.014444] usb 1-2.4: New USB device strings: Mfr=1, Product=2,
> SerialNumber=3
> [ 1454.014447] usb 1-2.4: Product: AirCard 340U
> [ 1454.014450] usb 1-2.4: Manufacturer: Sierra Wireless, Incorporated
> [ 1454.014453] usb 1-2.4: SerialNumber: 013323000518432
> [ 1454.016464] qcserial 1-2.4:1.2: Qualcomm USB modem converter detected
> [ 1454.016688] usb 1-2.4: Qualcomm USB modem converter now attached to
> ttyUSB0
> [ 1454.017264] qcserial 1-2.4:1.3: Qualcomm USB modem converter detected
> [ 1454.017444] usb 1-2.4: Qualcomm USB modem converter now attached to
> ttyUSB1
> [ 1454.017988] qmi_wwan 1-2.4:1.8: cdc-wdm0: USB WDM device
> [ 1454.018302] qmi_wwan 1-2.4:1.8 wwan0: register 'qmi_wwan' at
> usb-0000:00:15.0-2.4, WWAN/QMI device, f6
> :a5:93:07:8e:ef
> [ 1454.018916] usb-storage 1-2.4:1.9: USB Mass Storage device detected
> [ 1454.019099] scsi host7: usb-storage 1-2.4:1.9
> [ 1454.019689] qcserial 1-2.4:1.0: Qualcomm USB modem converter detected
> [ 1454.019823] usb 1-2.4: Qualcomm USB modem converter now attached to
> ttyUSB2
> [ 1455.009325] scsi 7:0:0:0: Direct-Access Aircard Disk Drive
> 1.00 PQ: 0 ANSI: 2
> [ 1455.009655] sd 7:0:0:0: Attached scsi generic sg0 type 0
> [ 1455.010749] sd 7:0:0:0: [sda] Attached SCSI removable disk
> ```
>
> RE: entering a PIN, I don't believe my SIM card is PIN-locked. I ran
> `enter-pin` for fun, anyway, but `org.ofono.Manager.GetModems()`
> appears to be returning an empty list:
>
> ```
> root@embedded $ ./enter-pin whatever 1234
> Traceback (most recent call last):
> File "./enter-pin", line 16, in <module>
> path = modems[0][0]
> IndexError: list index out of range
> ```
>
> This isn't surprising, I suppose, given that `monitor-ofono` never
> received any signals from ofono, either.
>
> Any recommendations on how to troubleshoot this? I'm guessing that
> our embedded target is missing some required udev rule(s):
>
> ```
> root@mel-automotive-gr-mrb $ cd /lib/udev/
> root@mel-automotive-gr-mrb $ grep -rli ofono *
> root@mel-automotive-gr-mrb $ cd /usr/lib/udev/
> root@mel-automotive-gr-mrb $ grep -rli ofono *
> root@mel-automotive-gr-mrb $ cd /etc/udev/
> root@mel-automotive-gr-mrb $ grep -rli ofono *
> ```
>
> No hits for ofono/OFONO anywhere. I guess I'll try copying
> `plugins/ofono.rules` from the ofono source and see if it helps,
> but... any other advice/guidance much appreciated?thanks!
>
> On Wed, Dec 14, 2016 at 8:41 AM, Daniel Wagner <[email protected]> wrote:
>
>> On 12/14/2016 11:50 AM, Patrik Flykt wrote:
>> > On Tue, 2016-12-13 at 14:51 -0500, Evade Flow wrote:
>> >> Do you mean that it's not possible for the tether to access the
>> >> cellular link unless I configure oFono?
>> >
>> > Yes.
>> >
>> >> I'm not opposed to trying this, but... I have no idea where to
>> >> start. How does one 'configure' oFono? Pointers to any available
>> >> docs, tutorials, videos, books, etc. would be much appreciated.
>> >
>> > I have a note which says to run the following commands manually from
>> > the ofono source directory:
>> >
>> > test/enter-pin pin XXXX
>> > (maybe a test/list-modems to find the modems)
>> > test/enable-modem /XXXXXX
>> > test/online-modem /XXXXXX
>> > (now org.ofono.ConnectionManager Attached=1 should appear, perhaps this
>> > was detected with test/monitor-modem; nevertheless, not important as
>> > such)
>> > test/activate-context
>> >
>> > Maybe others can correct me with the above and know if ConnMan can take
>> > care of the last step(s)? Wagi?
>>
>> You need to do the pin entering but that's all. The rest does the plugin.
>> You can run monitor-ofono which tells you what ConnMan is seeing.
>>
>> {Manager} [ModemAdded] /stktest { Emergency = False, Features = [], Type
>> = test, Online = False, Powered = False, Lockdown = False, Interfaces = [] }
>> {Manager} [ModemAdded] /hso_0 { Emergency = False, Features = [], Type =
>> hardware, Online = False, Powered = False, Lockdown = False, Interfaces =
>> [] }
>> {Modem} [/hso_0] Powered = True
>> {Modem} [/hso_0] Interfaces = org.ofono.SimManager
>> {Modem} [/hso_0] Features = sim
>> {Modem} [/hso_0] Manufacturer = Option N.V.
>> {Modem} [/hso_0] Model = GlobeTrotter HSUPA Modem
>> {Modem} [/hso_0] Revision = 2.12.0.0Hd (Date: Oct 29 2009, Time: 09:56:48)
>> {Modem} [/hso_0] Serial = 351721030157214,PK29997020
>> {SimManager} [/hso_0] Retries = { pin = 3, puk = 10 }
>> {SimManager} [/hso_0] SubscriberIdentity = 262011648051223
>> {SimManager} [/hso_0] MobileCountryCode = 262
>> {SimManager} [/hso_0] MobileNetworkCode = 01
>> {Modem} [/hso_0] Interfaces = org.ofono.AllowedAccessPoints
>> org.ofono.SimManager
>> {Modem} [/hso_0] Features = sim
>> {Modem} [/hso_0] Online = True
>> {Modem} [/hso_0] Interfaces = org.ofono.VoiceCallManager
>> org.ofono.AllowedAccessPoints org.ofono.SimManager
>> {Modem} [/hso_0] Features = sim
>> {Modem} [/hso_0] Interfaces = org.ofono.SupplementaryServices
>> org.ofono.VoiceCallManager org.ofono.AllowedAccessPoints
>> org.ofono.SimManager
>> {Modem} [/hso_0] Features = ussd sim
>> {Modem} [/hso_0] Interfaces = org.ofono.RadioSettings
>> org.ofono.SupplementaryServices org.ofono.VoiceCallManager
>> org.ofono.AllowedAccessPoints org.ofono.SimManager
>> {Modem} [/hso_0] Features = rat ussd sim
>> {Modem} [/hso_0] Interfaces = org.ofono.NetworkRegistration
>> org.ofono.RadioSettings org.ofono.SupplementaryServices
>> org.ofono.VoiceCallManager org.ofono.AllowedAccessPoints
>> org.ofono.SimManager
>> {Modem} [/hso_0] Features = net rat ussd sim
>> {Modem} [/hso_0] Interfaces = org.ofono.CellBroadcast
>> org.ofono.NetworkRegistration org.ofono.RadioSettings
>> org.ofono.SupplementaryServices org.ofono.VoiceCallManager
>> org.ofono.AllowedAccessPoints org.ofono.SimManager
>> {Modem} [/hso_0] Features = cbs net rat ussd sim
>> {NetworkRegistration} [/hso_0] Status = unregistered
>> {Modem} [/hso_0] Interfaces = org.ofono.ConnectionManager
>> org.ofono.CellBroadcast org.ofono.NetworkRegistration
>> org.ofono.RadioSettings org.ofono.SupplementaryServices
>> org.ofono.VoiceCallManager org.ofono.AllowedAccessPoints
>> org.ofono.SimManager
>> {Modem} [/hso_0] Features = gprs cbs net rat ussd sim
>> {Modem} [/hso_0] Interfaces = org.ofono.SmartMessaging
>> org.ofono.PushNotification org.ofono.MessageManager
>> org.ofono.ConnectionManager org.ofono.CellBroadcast
>> org.ofono.NetworkRegistration org.ofono.RadioSettings
>> org.ofono.SupplementaryServices org.ofono.VoiceCallManager
>> org.ofono.AllowedAccessPoints org.ofono.SimManager
>> {Modem} [/hso_0] Features = sms gprs cbs net rat ussd sim
>> {NetworkRegistration} [/hso_0] Status = searching
>> {NetworkRegistration} [/hso_0] Status = denied
>>
>> As you can see my SIM card is not valid anymore and the
>> NetworkRegistration
>> fails. Currently I don't have any data SIM lying around.
>>
>> > I was going to test the above, but realized that my SIM card needs an
>> > adapter which is at home right now...
>>
>> Note some modems are tricky to get working. oFono does a lot to make sure
>> that all modems just work, though not all modems can be tricked into
>> working mode.
>>
>> cheers,
>> daniel
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.01.org/pipermail/connman/attachments/20161214/8873a129/attachment-0001.html>
------------------------------
Message: 2
Date: Wed, 14 Dec 2016 17:32:32 +0000
From: Lukasz Nowak <[email protected]>
To: Daniel Wagner <[email protected]>, [email protected]
Subject: Re: [PATCH 2/5] session: add allowed interface config
parameter
Message-ID: <[email protected]>
Content-Type: text/plain; charset=windows-1252
Hi Daniel,
On 14/12/16 13:54, Daniel Wagner wrote:
> Hi Lukasz,
>
> On 12/12/2016 07:35 PM, [email protected] wrote:
>> From: Lukasz Nowak <[email protected]>
>>
>> In order to be able to bind a session to a specific interface,
>> a config option has been added. It is supported through both
>> dbus and session policy. Policy always overrides dbus.
>>
>> This is the first step to implement per-interface routing.
>> Next step will be to add src ip rules to iptables, which
>> will allow the application to transmit through multiple
>> interfaces.
>
> The patch looks fine from the first glance. You need also to update the
> documentation on it.
>
> I just wonder if the D-Bus API is necessary. From the description I got the
> impression this is a more static setup in the sense that the interface do not
> change at all.
I assumed that we do not want to automatically create the per-interface routing
tables and rules for all interfaces. Hence the API for an application to enable
that feature.
Would you rather have it enabled all the time?
Also, the session module already had the code to dynamically set up the
per-session routing tables, so I wanted to re-use that.
>
> Thanks,
> Daniel
------------------------------
Subject: Digest Footer
_______________________________________________
connman mailing list
[email protected]
https://lists.01.org/mailman/listinfo/connman
------------------------------
End of connman Digest, Vol 14, Issue 21
***************************************