- Modificato
La build ufficiale di OpenWrt non arriva già pronta, per cui vi consiglio di procedere come segue (io ho fatto tutto con WinSCP):
1) Tirare su la connessione
Aggiungere al file /etc/config/network quanto segue (sostituendo MIOAPN con il proprio apn):
config interface 'wan'
option proto 'qmi'
option device '/dev/cdc-wdm0'
option auth 'none'
option pdptype 'ipv4'
option apn 'MIOAPN'
option dhcp '0'
2) Usare le porta 1 come LAN
Aggiungere la porta eth1 al bridge lan. E' una soluzione sporca, ma la config dello switch sembra funzionare male sugli IPQ40xx. Io ho anche ripulito la config dello switch in modo da usarlo solo per vedere le porte collegate su LuCI. Risultato finale:
config device
option name 'br-lan'
option type 'bridge'
list ports 'eth0'
list ports 'eth1'
config interface 'lan'
option device 'br-lan'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
config switch
option name 'switch0'
option reset '1'
3) Installare LuCI (pacchetti Italiano e QMI):
Da SSH:
opkg update
opkg install luci
opkg install luci-i18n-base-it
opkg install luci-proto-qmi
4) Visualizzare informazioni sul modem
Su LuCi manca una sezione con le informazioni sul modem. Io ho risolto creando due file per aggiungere una sezione "Modem" con tutte le informazioni potenzialmente utili (potrebbe essere fatto in modo molto più bello, ma sporco e semplice funziona):
/usr/lib/lua/luci/controller/modem.lua
/usr/lib/lua/luci/controller/modemmanager.lua
module("luci.controller.modem", package.seeall)
function index()
entry({"admin", "modem"}, template("modeminfo"), "Modem", 30)
end
/usr/lib/lua/luci/view/modeminfo.htm
<%-require "luci.sys"-%>
<%+header%>
<h2><%:Status%></h2>
<div class="cbi-section">
<h3><%:Signal info%></h3>
<pre class="code"><%=luci.sys.exec("uqmi -d /dev/cdc-wdm0 --get-data-status --get-signal-info")%></pre>
</div>
<div class="cbi-section">
<h3><%:System info%></h3>
<pre class="code"><%=luci.sys.exec("uqmi -d /dev/cdc-wdm0 --get-system-info")%></pre>
</div>
<div class="cbi-section">
<h3><%:LTE CPHY Ca info%></h3>
<pre class="code"><%=luci.sys.exec("uqmi -d /dev/cdc-wdm0 --get-lte-cphy-ca-info")%></pre>
</div>
<div class="cbi-section">
<h3><%:Cell location info%></h3>
<pre class="code"><%=luci.sys.exec("uqmi -d /dev/cdc-wdm0 --get-cell-location-info")%></pre>
</div>
<%+footer%>
Se l'interfaccia non si aggiorna da sola, dare da SSH rm -rf /tmp/luci-* && /etc/init.d/uhttpd restart
Spero questo post possa essere utile per qualcuno.
__
EDIT 18/08/22: Corretto il nome del file al punto 4 (grazie @rewri per aver segnalato l'errore).