Wie kann man einen lokalen Node von der Festplatte in NodeRed hochladen, wenn er nicht im Repository vorhanden ist und nur lokal auf der Platte liegt? Und wenn dann noch NodeRed in einem Docker Kontainer läuft, wie geht es dann? Es kann natürlich auch über die Kommandozeil des Raspberry Pi laufen, aber das will man ja nicht immer.
Hier eine kurze Beschreibung wie das geht. Der Button zum hochladen ist etwas versteckt, unter „Palette verwalten“ und „Palette“ und „Installieren„, im Dialog zu finden.
Nach einem klick, einfach das tgz-Archiv auswählen und hochladen. Dann ist unbedingt ein Neustart von NodeRed nötig. Das ist im Docker Kontainer mit einem Restart schnell gemacht.
Durch das flashen des TP-Link TL-WR703N mit einem Image unbekannter Herkunft,
hatte das schöne Teil leider seinen Geist aufgegeben.
Es kann aber wiederbelebt werden, aber nur über die Serielle-Schnittstelle die nicht nach draußen geführt ist.
Also musste ich doch die drei Kontakte nach draußen führen. Nach dem öffnen des Geräts, und freilegen der Platine,
sind die drei Kontakte (TX, RX, Masse) schnell lokalisiert, dank der guten Fotos auf http://forums.openpilot.org/blog/52/entry-92-unbrick-wr703n-wifi-router/
Eine gute Anleitung ist hier zu finden
http://wiki.villagetelco.org/index.php?title=Building_a_Serial_Port_for_TL-WR703N
und auch
http://www.bitzof.me/doku.php?id=electronics:wr703n:unbricking
Das größte Problem dabei ist an die kleinen Kontakte, passende Drähte anzulöten. Die Kontakte sind wirklich nur ca. 0,4 mm klein. Gefühlt 0,0000001 mm.
Ein Kollege hatte noch den passenden Draht, der wirklich dünner als ein Haar ist und konnte mir einen Meter überlassen.
Also die Brille gesucht und es hat beim ersten Versuch geklappt.
Das war der komplizierteste Teil.
Um den Mac zu schonen, habe ich das flashen der neuen Firmware auf einen alten Windows-Rechner gemacht.
Was war nötig alles nötig?
1. Den seriellen to USB Adapter cf20… an den WR-703N anschließen:
PIN 4 TX an WR TX
PIN 5 RX an WR RX
PIN 6 GND an WR GND
Achtung! Nicht RX an TX und TX an RX .so wie sonst, dann klappt es nicht und das Terminal Fenster bleib schwarz.
2. Treiber für den cf20 von geladen.
Der Treiber richtet einen virtuell COM Port ein. Port in den Systemeinstellungen auf 115200/8/N/1/XON-XOFF stellen.
3. Putty laden und seriell Einstellungen auf: 115200/8/N/1/XON-XOFF
4. TFtp Server von laden und neue OpenWrt Firmware (openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin) in das Verzeichnis kopieren.
Habe den langen Namen noch gekürzt, in firm.bin.
5. Rechner IP Adresse setzten 192.168.1.100. Unter Netzwerkverbindungen-Lan-Verbindung-Allgemein-Eigenschaften-Internetprotokoll-Eigenschaften-Folgende-IP-Adresse verwedne-IP-Adresse.
Wichtig: Verbindung vom Rechner zum WR703N per Ethernet nicht vergessen!
6. Nach verbinden des WR-703N hat man max. 1 Sekunde zeit, im Terminal „tpl“ und Enter einzugeben um auf dem Prompt zu kommen.
Beim dritten Versuch hat es bei mir geklappt. Wenn hornet> angezeigt wird, hat man gewonnen.
und warten bis alles abgeschlossen ist. Dann Enter drücken und der OpenWrt-Prompt mit OpenWrt-Logo erscheint.
8. Ethernet verbinden. Mit Telnet 192.168.1.1 verbinden und wenn der OpenWrt Prompt kommt,
das Passwort setzen mit passwd. Ab dann ist kein Telnet mehr möglich. Neu verbinden mit SSH.
9. Eine andere statische IP vergeben, die im Namensraum vom DNS Server des Internet Routers liegt vergeben.
10. Per SSH anmelden und das Netzwerk einstellen: /etc/config/network
config interface 'lan'
option ifname 'eth0'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.2.123' # feste statische Adresse des Routers
option netmask '255.255.255.0'
option ip6assign '60'
option dns '8.8.8.8' # Adresse des Google dns, oder anderen
option gateway '192.168.2.1' # Adresse des gateway
reboot
Ethernet Kabel an Router anschließen. ping wenzlaff.de
muss erfolgreich laufen
11. Dann die Web-Gui luci installieren opkg update
opkg install luci luci-i18n-german luci-theme-bootstrap
12. Web Server starten /etc/init.d/uhttpd start
und damit es beim nächsten start automatisch läuft: /etc/init.d/uhttpd enable
13. Im Browser die feste statische Adresse aufrufen und anmelden mit User: root und den vergebenen SSH Passwort anmelden.
So vorgehen, wie in der Arduino-Anleitung beschrieben.
1. Virtual Com Device Treiber 2.2.18 von FTDICHIP laden und wie in der Anleitung beschrieben installieren.
Für Mac OSX 10.8.3 und 10.8.4 ist es nötig die FTDIUSBSerialDriver_10_4_10_5_10_6_10_7.mpkg zu installieren. Nun muss das Arduino Board an den USB-Port angeschlossen werden. Wird es nicht angeschlossen sind die installierten Treiber nicht im /dev Verzeichnis sichtbar.
Dann im Terminal im Verzeichnis /dev überprüfen ob die *usbserial* Treiber installiert wurden.
2. Entwicklungsumgebung downloaden und installieren. Starten.
3. Seriellen Port unter dem Menü: Tools – Serieller Port – /dev/cu.usbserial-A5001U7KD auswählen.
4. Beispiel auswählen und überprüfen und auf den Arduino uploaden.