<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Hallo Jakob!<br>
Am 2016-11-14 um 17:34 schrieb Jakob Riepler:<br>
</div>
<blockquote
cite="mid:CALF7NacuL3U5dD8ANTGsOO5WuE3gAbXkPRju5uXOP4K9jL0sgg@mail.gmail.com"
type="cite">
<p dir="ltr">Hallo Erich!</p>
</blockquote>
Danke für Deine flotte Antwort!<br>
<blockquote
cite="mid:CALF7NacuL3U5dD8ANTGsOO5WuE3gAbXkPRju5uXOP4K9jL0sgg@mail.gmail.com"
type="cite">
<p dir="ltr">Prinzipiell habe ich gute Erfahrung damit gemacht,
einfach regelmäßigen keep-alive traffic (zB einen http request)
zu produzieren (hatte mal ein ähnliches Problem mit einem 3G
Stick, der so was HiLink-ähnliches hatte).<br>
</p>
</blockquote>
ICMP-Keepalives macht der TL-WR1043ND sowieso - die sollten auch
über das Gateway laufen. Mein Reset-Script startet beispielsweise
erst dann, wenn diese Pings eine Weile lang unbeantwortet bleiben.<br>
<blockquote
cite="mid:CALF7NacuL3U5dD8ANTGsOO5WuE3gAbXkPRju5uXOP4K9jL0sgg@mail.gmail.com"
type="cite">
<p dir="ltr">
Eine weitere Methode wäre, einen non-HiLink Firmware zu flashen
(ich weiß aber gerade leider nicht, ob es eine für deinen Stick
gibt. Müsste man mal nachschauen).<br>
</p>
</blockquote>
Das ist gar nicht erforderlich. Der Stick läuft auf Android. Die
AT-Befehle würden dort von einem AT-Emulator-Dienst interpretiert.
Durch Aufruf einer speziellen URL mittels curl lässt sich der Stick
per Skript in den Nur-Modem-Mode versetzen. Er verharrt auch darin,
sofern er nicht mittels AT-Befehl wieder in den Ethernet-Mode
versetzt wird.<br>
<br>
Aber manchmal ist er einfach nur "weg". (Denn das reset-script würde
ihn in den Modem-Mode versetzen und eine Reihe von AT-Befehlen
absetzen, die in quasi in den Werkszustand (Ethernet) versetzen;
Würde das Skript bei seinem Start ein Modem vorfinden, würde es
davon ausgehen dasselbe tun. Der Status in dem der Stick sich also
befindet, wenn das Script ihn nicht retten kann, muss ein anderer
sein. Dass ein Powercycle genügt, spricht für einen "indetermined
lockup state".<br>
<br>
<blockquote
cite="mid:CALF7NacuL3U5dD8ANTGsOO5WuE3gAbXkPRju5uXOP4K9jL0sgg@mail.gmail.com"
type="cite">
<p dir="ltr">
Wenn das alles nichts bringt, bieten viele USB Hosts (zumindest
in PCs und Laptops. Ich weiß nicht, wie fortgeschritten selbige
in Routern sind... Hab das bei meinem Laptop mal mit einem
kleinen C Programm geschafft. "ganged usb power" sind glaub ich
die richtigen Schlagworte dazu. Wenn ich wieder zu Hause bin
kann ich dir mal einen Link schicken, wenn du willst und ich das
wieder finde :P) die Möglichkeit, den USB Port zu deaktivieren.</p>
</blockquote>
Per Software ging das mittels echo 0 oder echo 1 nach
/sys/bus/usb/devices/[xyz]/authorized, um zumindest eine teilweise
Reinitialisierung der Treiber zu bewirken. Bis Kernel 3.6 konnte man
auch den Power Level einzelner Port setzen. Neuere Kernel lassen das
(direkt) offenbar nicht mehr zu. Man meines Wissens kann nur ein
Inactivity Timeout setzen, aber nur der Strom wird nur abgeschaltet,
wenn das Endgerät das auch zulässt.<br>
<br>
Leider habe ich bis jetzt keine andere Methode gefunden. Links sind
willkommen.<br>
<br>
<blockquote
cite="mid:CALF7NacuL3U5dD8ANTGsOO5WuE3gAbXkPRju5uXOP4K9jL0sgg@mail.gmail.com"
type="cite">
<p dir="ltr"> Wenn der Router das nicht kann (was vermutlich der
Fall ist), ist der sinnvollste Weg wahrscheinlich ein Relay, mit
dem man die Stromzufuhr unterbricht (am besten einfach mit einem
GPIO Pin vom Router ansteuern) oder ein USB Hub, der Power
switching beherrscht.</p>
</blockquote>
Naja, die Idee wäre weniger ein GPIO gewesen, denn dafür muss ich
den Router öffnen, als vielmehr ein USB-Zwischenstecker nach Art der
USB-Relays für Homeautomation.<br>
<br>
Wie gesagt, bei 7-port Hubs werden Hubs kaskadiert. 4 Port - 1 Port
+ 4 Port.<br>
Nehme ich einen 4-Port-Hub, schließe ein USB-Relay an einem der
Ports an und den zweiten Hub an einen weiteren Port, unterbreche
jedoch dessen Power-Lines über das Relay am ersten Port, hätte ich
in etwa das, wonach ich als Komplettlösung suche. Für den Fall, dass
ich eine externe Stromversorgung benötigte, müsste ein zweites,
paralleles Relay auch dessen Stromversorgung unterbrechen.<br>
<br>
Nur, wundert es mich, dass es sowas nicht schon gibt. USB-Hubs mit
Kippschaltern pro Port gibt es ja auch... (Vielleicht doch ein
Knopfdruckroboter? ;-).<br>
<br>
<blockquote
cite="mid:CALF7NacuL3U5dD8ANTGsOO5WuE3gAbXkPRju5uXOP4K9jL0sgg@mail.gmail.com"
type="cite">
<p dir="ltr">LG Jakob</p>
<div class="gmail_extra"><br>
</div>
</blockquote>
LG<br>
Erich<br>
<blockquote
cite="mid:CALF7NacuL3U5dD8ANTGsOO5WuE3gAbXkPRju5uXOP4K9jL0sgg@mail.gmail.com"
type="cite">
<div class="gmail_extra">
<div class="gmail_quote">Am 14.11.2016 5:17 nachm. schrieb
"Erich N. Pekarek" <<a moz-do-not-send="true"
href="mailto:erich@pekarek.at">erich@pekarek.at</a>>:<br
type="attribution">
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">Hallo
Liste!<br>
<br>
Ich habe bei einer "mobilen Anwendung", die vielleicht auch
einige von Euch (etwa im Zusammenhang mit einem
Funkfeuer-Tunnel) interessieren könnte, ein Problem und
suche dafür eine passende Lösung.<br>
<br>
Komponenten:<br>
TP-Link TL-WR1043NDv1 (Chaos Calmer 15.05.1 Eigenkompilat
mittels Imagebuilder)<br>
ZTE MF831 LTE-Stick (Hofer-Version)<br>
Yesss-Simkarte mit LTE-Paket<br>
versuchsweise: USB HUB extern gespeist<br>
<br>
Anordnung:<br>
Der ZTE-Sick ist mit der Yesss-Sim-Karte bestückt und
arbeitet werksseitig in einem HiLink-ähnlichen Ethernet
Modus (19d2:1405). Am TL-WR1043ND scheint er als emuliertes
Ethernet-Interface "usb0" mit der IP <a
moz-do-not-send="true" href="http://192.168.0.1/24"
rel="noreferrer" target="_blank">192.168.0.1/24</a>
aufscheint. Die Firmware des Sticks ist stark beschnitten,
daher kann man nur das Allernotwendigste einstellen. Der
TL-WR1043ND bezieht seine IP, Gateway und DNS-Server mittels
DHCP und nattet dieses NAT-Interface, das im A1-Netz (Yesss)
ebenfalls genattet wird. (Grundsätzlich funktioniert das
unter diesen Rahmenbedingungen soweit gut.)<br>
Der TL-WR1043ND stellt über OpenVPN einen Tunnel zu einem
Server mit statischer IPv4-Adresse her. Alternativ wird
Miredo genützt, um über das Teredo-Protokoll (UDP)
IPv6-Konnektivität zu erlangen.<br>
<br>
Problem:<br>
Der ZTE-Stick scheint fallweise abzustürzen. Bei näherer
Betrachtung steht dies anscheinend im Zusammenhang mit
"Paket(de-)aktivierungen" oder eventuell sonstiger
SIM-Aktivität.<br>
Steckt man den Stick ab und steckt ihn wieder an, ist der
Router mit darauf laufendem Watchdog-Cronscript binnen
weniger Augenblicke wieder online.<br>
<br>
Lösungsansatz:<br>
Der LTE-Stick ZTE MF831 wird grundsätzlich über sein
Web-Interface angesteuert. Über eine im Internet
recherchierbare URL kann man den Stick in einen Modem-Modus
(19d2:0016) versetzen und mittels usb-serial-Modul als
/dev/ttyUSB2 über AT-Befehle ansprechen. Darüber ließe er
sich auch zurücksetzen (zumindest der Mobilteil mit
AT+CFUN=1,1); anschließend kann man ihn mittels AT+ZCDRUN
wieder in den Ethernet-Mode versetzen. Dazu gibt es
Anleitungen im Netz, die ich befolgt habe. Das funktioniert
eine Weile recht gut, aber manchmal hängt sich der Stick
eben komplett auf, ohne, dass ich das (aus der Ferne)
nachvollziehen kann.<br>
(Der Stick läuft auf Android und es gibt auch eine
Möglichkeit adb mit root-shell über eine weitere URL zu
aktivieren, aber das ist die von mir angestrebte Lösung. Auf
diese Weise könnte man einen zum auf dem Router hinterlegten
ssh-private-key ssh-public-key aufspielen und mittels ssh
-lroot 192.168.0.1 'reboot' vorgehen. Das will ich so nicht
und es ist fraglich, ob man den Stick so überhaupt noch
erreicht, wenn er abzustürzen gedenkt.)<br>
<br>
Fragen:<br>
Hat jemand von Euch Erfahrung auf dem Gebiet? Welche Art
Software-Reset könnte man noch versuchen und wie führt man
den aus?<br>
Kann man in neueren Linux-Kerneln die Stromzufuhr zu einem
bestimmten USB-Port per Software steuern? (Der Trick mit
/sys/bus/usb/devices/usb1/auth<wbr>orized löst das Problem
nicht.) Wenn ja, wie?<br>
Kennt jemand von Euch eine Art USB-Relay, mit dem man ein
über Software steuerbares Äquivalent zum Anstecken/Abstecken
durchführen kann (nein, kein Roboterarm, ;-)? Ich denke da
an eine Anordnung aus USB-Hub mit integriertem Device
(ansprechbar etwa über AT+Commands o.ä.) die ein Relay
steuert, hinter dem eine weiterer kaskadierter,integrierter
USB-Hub liegt. (Also nach Art eines 7-Port-Hubs nur mit
Relay auf den Powerlines dazwischen). Auf Amazon und Ebay
finde ich nichts, was meiner Vorstellung entspricht, dafür
aber zahlreiche Einzelrelays.<br>
<br>
Bitte um sachdienliche Hinweise!<br>
<br>
Danke!<br>
LG<br>
Erich<br>
<br>
-- <br>
Discuss mailing list<br>
<a moz-do-not-send="true"
href="mailto:Discuss@lists.funkfeuer.at" target="_blank">Discuss@lists.funkfeuer.at</a><br>
<a moz-do-not-send="true"
href="https://lists.funkfeuer.at/mailman/listinfo/discuss"
rel="noreferrer" target="_blank">https://lists.funkfeuer.at/mai<wbr>lman/listinfo/discuss</a></blockquote>
</div>
</div>
</blockquote>
<br>
</body>
</html>