Project

General

Profile

Huawei ME906 » History » Version 7

laforge, 01/14/2017 01:01 PM

1 1 laforge
h1. Huawei ME906v
2
3
The Huawei ME906v is yet another MDM9x15 based cellular modem that uses Linux on its Cortex-A5 processor, based on [[Qualcomm_Linux]] (LE).
4 2 laforge
5
h2. USB configuration
6
7
The ME906v has different USB configurations:
8
9
h3. Configuration 1
10
11
|Interface|Name|Description|
12
|0|Huawei Mobile Connect - Modem|AT Commands|
13
|1|Huawei Mobile Connect - Application|DIAG|
14
|2|Huawei Mobile Connect - Pcui||
15
|3|HUAWEI Mobile Connect - Network Card|qmi-wwan|
16
|4|Huawei Mobile Connect - Gps||
17
|5|Huawei Mobile Connect - Serial B||
18
19
h3. Configuration 2
20
21
|Interface|Name|Description|
22
|0|CDC Ethernet Control Model (ECM)||
23
|1|CDC Ethernet Data||
24
|2|Huawei Mobile Connect - Modem||
25
|3|HUAWEI Mobile Connect - Application||
26
|4|HUAWEI Mobile Connect - Pcui||
27
|5|Huawei Mobile Connect - Gps||
28
|6|Huawei Mobile Connect - Serial B||
29
30
h3. Configuration 3
31
32
|Interface|Name|Description|
33
|0|HUAWEI Mobile Connect - Network Card||
34 1 laforge
|2|Huawei Mobile Connect - Gps||
35 4 laforge
36
h3. Initialization on Linux side:
37
38
from /usr/bin/usb/ (combining multipel scripts, expanding variables)
39
40
<pre>
41
echo "hsusb" > /sys/devices/platform/usb_bam/enable
42
echo 0 > /sys/class/android_usb/android0/enable
43
echo 0x1573 > /sys/class/android_usb/android0/idProduct
44
echo 0x12D1 > /sys/class/android_usb/android0/idVendor
45
echo diag > /sys/class/android_usb/android0/f_diag/clients
46
echo smd,tty > /sys/class/android_usb/android0/f_serial/transports
47
echo SMD,BAM2BAM > /sys/class/android_usb/android0/f_rmnet/transports
48
echo "pcui,diag,modem,ccid,rmnet,gps:usb_mbim,gps" > /sys/class/android_usb/android0/functions
49
echo 0 > /sys/class/android_usb/android0/mbim_name
50
echo 0 > /sys/module/restart/parameters/download_mode
51
echo 1 > /sys/class/android_usb/android0/remote_wakeup
52
echo 1 > /sys/class/android_usb/android0/enable
53
</pre>
54 2 laforge
55
h2. AT Command interface
56
57
Unless otherwise noted, this was done using a modem with the following firmware version:
58
59
<pre>
60
ATI
61
Manufacturer: Huawei Technologies Co., Ltd.
62
Model: ME906V
63
Revision: 11.234.44.03.00
64
</pre>
65
66 3 laforge
<pre>
67
root@9615-cdp:/# cat /build.prop 
68
ro.build.version.release=AU_LINUX_BASE_KIWI_TARGET_ALL.03.00.032
69
</pre>
70
71 2 laforge
h3. Interesting non-standard commands
72
73
The following commands appear to be non-standard and implemented in the device:
74
75
<pre>
76
+ES
77
+ESA
78
+CMOD
79
+CEMODE
80
+CVHU
81
+CECALL
82
+HUAWEI
83
^TBAT
84
^TCHRENABLE
85
^TCHRINFO
86
^APBATLVL
87
^SETMODE
88
$QCSIMSTAT
89
$QCPBMPREF
90
$CREG
91
$CCLK
92
$QCCNMI
93
*CNTI
94
$QCCLR
95
$QCDMR
96
$QCDNSP
97
$QCDNSS
98
$QCTER
99
$QCSLOT
100
$QCSIMAPP
101
$QCPINSTAT
102
$QCPDPP
103
$QCPDPLT
104
$QCPWRDN
105
$QCDGEN
106
$QCPDPCFGE
107
$BREW
108
$QCANTE
109
$QCRPW
110
$QCSQ
111
$CSQ
112
$QCSYSMODE
113
$QCCTM
114
$QCBANDPREF
115
^DSCI
116
$QCVOLT
117
$QCHWREV
118
$QCBOOTVER
119
$ECALL
120
$QCDEFPROF
121
$QCMRUE
122
$QCMRUC
123
$QCAPNE
124
$QCPDPIMSCFGE
125
$QCCLAC
126
$QCRMCALL
127
$QCDRX
128
</pre>
129 5 laforge
130 6 laforge
h3. AT commands in atfwd_daemon
131
132
<pre>
133
+HUAWEI
134
^PSTANDBY
135
^TBAT
136
^TCHRENABLE
137
^TCHRINFO
138
^APBATLVL
139
^SETMODE
140
</pre>
141
142
143 5 laforge
h2. Serial Console
144
145
Like all/most MDM9x15 targets, there is an 1.8V serial console available on ttyHSL0.
146
147
TODO: Describe soldering of serial console pads.
148
149
Once you have connected to the serial console, you should be able to observe the boot log like in the attached @bootlog.txt@
150
151
h3. Keeping modem from suspend
152
153
It seems like the Linux system is suspended after very few seconds of inactivity.  To keep it alive, you can write any character to any of the serial devices.  For example, the following one-liner script will work (assuming /dev/ttyUSB5 is one of the AT command ports of the modem):
154
<pre>
155
while [ -f /etc/passwd ]; do echo "AT" > /dev/ttyUSB5; sleep 1; done
156
</pre>
157 7 laforge
158
h2. Linux on Cortex-A5
159
160
h3. processes
161
162
see attached @ps.txt@
163
164
h3. rmnet
165
166
<pre>
167
2: hw_rmnet: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
168
    link/ether 3a:1c:af:e4:29:03 brd ff:ff:ff:ff:ff:ff
169
3: hw_rmnet2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
170
    link/ether 56:f5:0f:cf:4c:cd brd ff:ff:ff:ff:ff:ff
171
4: rmnet0: <> mtu 2000 qdisc noop state DOWN qlen 1000
172
    link/[530] 
173
5: rmnet1: <> mtu 2000 qdisc noop state DOWN qlen 1000
174
    link/[530] 
175
6: rmnet2: <> mtu 2000 qdisc noop state DOWN qlen 1000
176
    link/[530] 
177
7: rmnet3: <> mtu 2000 qdisc noop state DOWN qlen 1000
178
    link/[530] 
179
8: rmnet4: <> mtu 2000 qdisc noop state DOWN qlen 1000
180
    link/[530] 
181
9: rmnet5: <> mtu 2000 qdisc noop state DOWN qlen 1000
182
    link/[530] 
183
10: rmnet6: <> mtu 2000 qdisc noop state DOWN qlen 1000
184
    link/[530] 
185
11: rmnet7: <> mtu 2000 qdisc noop state DOWN qlen 1000
186
    link/[530] 
187
</pre>
Add picture from clipboard (Maximum size: 48.8 MB)