Author Message

<  Setup Discussion  ~  E3531 unable to switch into serial mode OpenSuse 12.3

PostPosted: Wed Feb 01, 2017 4:10 pm Reply with quote
Posts: 4Location: UKJoined: Wed Feb 01, 2017 3:24 pm
Hi

Here is my story, I do hope someone could shed some light onto this.

We have Huawei E3531 Dongle Modem that is meant to be used to send out text notifications, most likely in the middle of the night, to some poor sysadmins.

Hardware info from device web management interface:

Code:
Device name:    E3531
Hardware version:       CU1E3131IM
Software version:       22.521.31.00.400
Web UI version: 17.100.14.00.400


From what I understand after countless hours spent on this forum it should have three modes

Code:
12d1:1f01 is the default (mass storage device) mode
12d1:14dc  ("ethernet" mode)
and broadband modem mode, I think it's  155e in my case.


I've verified that dongle works OK when tested on Ubuntu 16 (usb_changemode from Ubuntu repo) and Centos 6 (usb_changemode from source) machines. It plugs in with

Code:
12d1:1f01 is the default (mass storage device) mode


and I can change it into serial mode manually with

Code:
usb_modeswitch -v 12d1 -p 1f01 -M "55534243123456780000000000000011063000000100010000000000000000"


and also automagically with file "/etc/usb_modeswitch.d/12d1\:1f01 "

Code:
# Huawei E3531 custom config
TargetVendor=0x12d1
TargetProduct=0x155e
MessageContent="55534243123456780000000000000011063000000100010000000000000000"


Jolly good. Now, thing is that we need to make it working on a different machine, Siemens industrial computer (openSUSE 12.3 with 3.7.10-1.45-desktop i686 kernel) and sadly, I'm having a hard time with this. After plugging in dongle goes straight into "ethernet" mode, with eth1 interface appearing on the system and no sign of, much needed for sms sending, /dev/ttyUSB* devices.

Code:
Bus 003 Device 032: ID 12d1:14dc Huawei Technologies Co., Ltd.


Dongle happily ignores DisableSwitching=0 and goes into 12d1:14dc every time - even after I remove usb_modeswitch package from the system! It briefly shows up as 1f01 but then immediately goes into 14dc (ethernet). Haven't got a clue what mechanism is causing that, and I can't stop this from happening...

Code:
# dmesg |grep idVendor|tail -n2
[1989375.308688] usb 3-4: New USB device found, idVendor=12d1, idProduct=1f01
[1989375.736712] usb 3-4: New USB device found, idVendor=12d1, idProduct=14dc

# lsusb
Bus 003 Device 032: ID 12d1:14dc Huawei Technologies Co., Ltd.


I tried removing version supplied with a distro and installing usb-modeswitch-2.4.0 from source but with this version I'm getting segfaults, most likely due to the fact openSUSE 12.3 is quite old.


Code:
[1993543.819981] usb_modeswitch[11596]: segfault at 34 ip b76c401d sp bff9b5f0 error 4 in libusb-1.0.so.0.1.0[b76c1000+f000]



Here is an output from "usb_modeswitch -v 12d1 -p 14dc -W" if that helps:

Code:
# usb_modeswitch -v 12d1 -p 14dc -W
Take all parameters from the command line


 * usb_modeswitch: handle USB devices with multiple modes
 * Version 2.4.0 (C) Josua Dietze 2016
 * Based on libusb1/libusbx

 ! PLEASE REPORT NEW CONFIGURATIONS !

DefaultVendor=  0x12d1
DefaultProduct= 0x14dc

Look for default devices ...
  found USB ID 8087:0024
  found USB ID 8087:0024
  found USB ID 0463:ffff
  found USB ID 0eef:0001
  found USB ID 0409:005a
  found USB ID 12d1:14dc
   vendor ID matched
   product ID matched
  found USB ID 1d6b:0002
  found USB ID 1d6b:0002
  found USB ID 1d6b:0002
  found USB ID 1d6b:0003
  found USB ID 17ef:6047
 Found devices in default mode (1)
Access device 032 on bus 003
Get the current device configuration ...
Current configuration number is 1
Use interface number 0

USB description data (for identification)
-------------------------
Manufacturer: HUAWEI
     Product: HUAWEI Mobile
  Serial No.: not provided
-------------------------
Warning: no switching method given. See documentation
-> Run lsusb to note any changes. Bye!

Segmentation fault



and output from usb-devices


Code:
T:  Bus=03 Lev=01 Prnt=01 Port=03 Cnt=04 Dev#= 32 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=02(commc) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=12d1 ProdID=14dc Rev=01.02
S:  Manufacturer=HUAWEI
S:  Product=HUAWEI Mobile
C:  #Ifs= 3 Cfg#= 1 Atr=80 MxPwr=500mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=06 Prot=00 Driver=cdc_ether
I:  If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=06 Prot=00 Driver=cdc_ether
I:  If#= 2 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage



Hope this make sense. Would be most grateful for any hint on how I can make this dongle to send out SMS from this box.


Offline Profile
PostPosted: Wed Feb 01, 2017 4:30 pm Reply with quote
Posts: 1156Location: Koh Samui, THJoined: Wed Jul 11, 2012 3:14 pm
I guess you have been hit by Huawei modeswitching by the kernel, it was introduced somewhere around kernel 3.7 and removed a month or two later.
Check /drivers/usb/storage/initializers.* , even better would be to update that old kernel of yours..
It is dead, it is EOL.


Offline Profile
PostPosted: Wed Feb 01, 2017 4:45 pm Reply with quote
Posts: 4Location: UKJoined: Wed Feb 01, 2017 3:24 pm
Thanks for getting back to me so promptly.

LOM wrote:
you have been hit by Huawei modeswitching by the kernel


ok, copy that.


LOM wrote:
It is dead, it is EOL.


:roll: Ehh, I wish I could....

I guess I need to look into purchasing another dongle..


Offline Profile
PostPosted: Wed Feb 01, 2017 4:57 pm Reply with quote
Posts: 1156Location: Koh Samui, THJoined: Wed Jul 11, 2012 3:14 pm
devnul wrote:

I guess I need to look into purchasing another dongle..


If that is your workaround of the problem then don't buy a Huawei dongle because they are all affected.


Offline Profile
PostPosted: Wed Feb 01, 2017 5:24 pm Reply with quote
Posts: 4Location: UKJoined: Wed Feb 01, 2017 3:24 pm
LOM wrote:
If that is your workaround of the problem then don't buy a Huawei dongle because they are all affected.


Yeah, getting it upgraded would be tricky (it's managed by 3rd party) so I need to explore other options.
Of chance, do you know any model that would be working in serial mode needed for SMS notifications on such an old OS?


Offline Profile
PostPosted: Thu Feb 02, 2017 5:17 pm Reply with quote
Posts: 1156Location: Koh Samui, THJoined: Wed Jul 11, 2012 3:14 pm
I retract what I said about not using a Huawei dongle.
If you use any older type (usually only 3 digits after the E) then the kernel switching will work because it is only the new Huawei HiLink dongles that needs the special switch message in order to present serial interfaces.
E173 and E367 are examples of dongles that should work.


Offline Profile
PostPosted: Mon Feb 13, 2017 5:19 pm Reply with quote
Posts: 4Location: UKJoined: Wed Feb 01, 2017 3:24 pm
LOM wrote:
E173 and E367 are examples of dongles that should work.


We sourced E173 and I'm happy to report it works straight out of the box on OpenSuse 12.3

Code:
echo "OMG this thingy seems to be working" | gammu-smsd-inject TEXT 0xxxxxxxxxx



Thanks a million for your help.


Offline Profile

Display posts from previous:  Sort by:

All times are UTC + 1 hour [ DST ]
Page 1 of 1
7 posts
Users browsing this forum: No registered users and 1 guest
Search for:
Post new topic  Reply to topic
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum