Wie kann der verwendete Speicher auf dem WR703N mit OpenWrt und Fhem angezeigt werden?
Das geht mit dem Linux Befehl:
top
der nach der Anmeldung per SSH eingegeben werden kann. Man sieht gut, das fhem das unter Perl läuft und am meisten (37%) virtuelle Prozessgröße in KB (VSZ) verbraucht.
free
und ps
geben auch noch einige Größen an.
Die Spalte STAT
oder S
zeigt den Prozesszustand an und bedeutet:
- R – running (Prozess wartet auf den Prozessor)
- S – sleeping (Prozess schläft)
- D – Prozess ist in einem ununterbrechbaren Schlaf
- I – idle (Prozess wird gerade erzeugt)
- L – locked (eine Seite im Hauptspeicher wurde gesperrt)
- O – Prozess, der gerade die CPU beansprucht
- Z – Zombie (Prozess wurde beendet, aber Elternprozess hat noch nicht aufgeräumt)
- X – Prozess wartet auf freien Speicher
- T – Unterbrochen (gestoppt)
- W – Prozess ist ausgelagert
Wie kann Fhem auf OpenWrt aktualisiert werden?
Einloggen auf OpenWrt per SSL. Dann per Comandline:
und Enter drücken.
telnet 192.168.1.111 7072
Oder auch ohne per SSL einzuloggen und gleich per Telnet verbinden.
Nun erschein der fhem Prompt:
fhem>
Mit
update check
wird überprüft ob und welche aktualisierungen vorhanden sind.
Dann mit update force
werden alle Aktualisierungen erzwungen. Das kann dann ein paar Minuten dauern. Wenn der update fertig ist, muss noch ein shutdown restart durchgeführt werden.
Nach dem erneuten einloggen kann kontroliert werden mit
fhem> update check
List of new / modified files since last update:
nothing to do...
ob alles aktuell ist.
Mit Version
können die einzelnen Versions Nummern ausgegeben werden:
Berechnung der zu erwartenden Größe der Arduino Log Datei
Ausgehend von einem Eintrag, den der Arduino mit 2 Temp. Sensoren erzeugt, in dieser Form:
11-11-2013_11:11:11 Arduion.Temperatursensor_1 T: 20.12
Die Länge ist 55 Zeichen lang.
Bei einer Messung alle 10 Sekunden mit 2 Sensoren ergibt das
55 x 6 x 2 = 660 pro Minute
das sind am Tag
660 x 60 x 24 = 959.400
im Monat
959.400 x 30 = 28.512.000
im Jahr
28.512.000 x 365 = 10406880000
das sind dann in MB
10.406.880.000 / 1.000.000 = 10406,88 MB
also in GB
10.406,88 MB / 1000 = 10,40688 GB im Jahr.
Das ist zuviel für einen 8 GB USB-Stick.
Wenn die Messzeit um den Faktor 100 verlängert wird, also alle 10 x 100 = 1000 Sekunden (alle 16 Minuten), müsste im Jahr
10,40688 GB im Jahr / 100 = 0,1040688 GB im Jahr anfallen,
das sind dann pro Monat:
0,1040688 GB / 12= 0,0086724 GB oder
0,1040688 GB / 1000 = 104,0688 MB pro Monat
Wie kann per socat die seriellen Daten in eine Datei geschrieben werden?
Wie in diesen Blog -Eintrag beschrieben vorgehen. Aber dieses Script verwenden.
#!/bin/bash
LOGFILE=/usr/src/fhem/log/nano-temp-2013.log
DEV=/dev/ttyUSB0
BAUD=9600
while true; do
if [ -e $DEV ]
then
socat -d -d -u file:$DEV,nonblock,raw,echo=0,waitlock=/var/run/tty,b$BAUD $LOGFILE
else
sleep 2
fi
done
Wie kann mit Arduino die serielle Ausgabe über TCP ausgegeben werden auf dem TP-WR703N Gerät?
Der Arduino (NANO) wird per USB an den TP-WR703N (12.09) angeschlossen. Wie kann nun von einem anderen Rechner darauf per TCP (Telnet) zugegriffen werden?
Dazu erst socat auf den WR703 installieren mit
opkg update
opkg install socat
Socate (Version 1.7.2.1) kann bidirektionale Verbindungen aufbauen. Es verbindet den USB Port mit dem TCP Port.
Dann das folgende Script erstellen start-temp.sh, und evl noch die Schnittstelle DEV und den PORT und BAUD anpassen.
#!/bin/bash
DEV=/dev/ttyUSB0
PORT=1234
BAUD=9600
while true; do
if [ -e $DEV ]
then
socat tcp-l:$PORT,reuseaddr,fork file:$DEV,nonblock,raw,echo=0,waitlock=/var/run/tty,b$BAUD
else
sleep 2
fi
done
und ausführbar machen mit
chmod +x start-temp.sh
Dann kann das Script mit ./start-temp.sh &
im Hintergrund auf dem WR703N gestartet werden.
Nun kann von einem anderen Rechner mit
telnet ip-adresse 1234
die Ausgabe ausgegeben werden.
Will man das das Script autom. beim hochfahren des WR703N startet, muss es noch in der /etc.rc.local
eingetragen werden (aber vor exit 0). Das geht auch über Luci:
Evl. muss der USB Port einmal reconnected werden.
GoogleCl Mindmap
Wie kann GoogleCl (0.9.14) installiert werden um per Kommandozeile auf Google-Dienste zuzugreifen?
Die Kommandozeile für folgende Google-Dienste:
- Blogger
- Calendar
- Contacts
- Docs
- Finance
- Picasa
- Youtube
Unter Mac tut es ein
und für andere Betriebssysteme (Win, Linux) hier schauen.
sudo port install googlecl
Dann ist für jeden Dienst eine einmalige Autorisierung nötig. Dazu auf der Komandozeile
google calendar list
eingeben. Es wird nach der E-Mail Addresse des Google-Account gefragt. Als Antwort gibt es einen Link, der im Browser nach eingabe des Passwortes bestätigt werden muss.
Ein
google contacts list Thomas
gibt dann alle Kontakte mit Namen Thomas aus. Will man die dann noch in eine Datei schreiben geht das z.B. mit
google contacts list Thomas > kontakte.txt
Ein
fügt einen Kalendereintrag am heutigen Tag hinzu und ein
google calendar add "Testeintrag"
gibt die Kalendereinträge auf der Konsole von heute aus. Eine Liste aller Kalendereinträge gibt es mit
google calendar today
google calendar list
.
Weitere Beispiele und Syntax gibt es im Manual oder jeweils mit
help, z.B.
google help calendar
.
Netstat Mindmap
Nmap Mindmap
Wie werden alle offenen Ports mit OpenWrt angezeigt?
Mit nmap können die offenen Ports wie folgt ausgegeben werden (nur gegen localhost ausführen):
[root@OpenWrt ~]# nmap localhost
Ausgabe dann z.B.
Starting Nmap 6.01 ( http://nmap.org ) at 2013-08-22 08:20 CEST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00030s latency).
Not shown: 997 closed ports
PORT STATE SERVICE
22/tcp open ssh
53/tcp open domain
80/tcp open http
Der Port 53 ist für den DNS Server. Details können auch mit
Netstat ausgegeben werden z.B.:
[root@OpenWrt ~]# netstat -plnt
Ausgabe:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1789/uhttpd
tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN 1820/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1771/dropbear
Wie kann in Luci von OpenWrt die Sprache geändert werden?
Die Gui von Luci kann auch in einer anderen Sprache eingestellt werden.
Dazu kann mit folgendem Befehl auf der Konsole die Liste der verfügbaren Sprachen ausgegeben werden.
[root@OpenWrt ~]# opkg list | grep luci-i18n-
Bis jetzt wurden folgende Sprachen übersetzt:
luci-i18n-catalan - 0.11.1-1 - Catalan (by Eduard Duran)
luci-i18n-chinese - 0.11.1-1 - Chinese (by Chinese Translators)
luci-i18n-english - 0.11.1-1 - English
luci-i18n-french - 0.11.1-1 - French (by Florian Fainelli)
luci-i18n-german - 0.11.1-1 - German
luci-i18n-greek - 0.11.1-1 - Greek (by Vasilis Tsiligiannis)
luci-i18n-hebrew - 0.11.1-1 - Hebrew
luci-i18n-hungarian - 0.11.1-1 - Hungarian
luci-i18n-italian - 0.11.1-1 - Italian (by Matteo Croce)
luci-i18n-japanese - 0.11.1-1 - Japanese (by Tsukasa Hamano)
luci-i18n-malay - 0.11.1-1 - Malay (by Teow Wai Chet)
luci-i18n-norwegian - 0.11.1-1 - Norwegian (by Lars Hardy)
luci-i18n-polish - 0.11.1-1 - Polish
luci-i18n-portuguese - 0.11.1-1 - Portuguese (by Jose Monteiro)
luci-i18n-portuguese-brazilian - 0.11.1-1 - Portuguese (Brazilian) (by Carlos Cesario)
luci-i18n-romanian - 0.11.1-1 - Romanian
luci-i18n-russian - 0.11.1-1 - Russian (by Skryabin Dmitry)
luci-i18n-spanish - 0.11.1-1 - Spanish (by Guillermo Javier Nardoni)
luci-i18n-ukrainian - 0.11.1-1 - Ukrainian
luci-i18n-vietnamese - 0.11.1-1 - Vietnamese (by Hong Phuc Dang)
Mit dem folgenden Zweizeiler wird Deutsch eingestellt.
opkg update
opkg install luci-i18n-german
Dann in der Luci-Web-Gui unter der Seite System/System -> Language and Style auf Deutsch schalten. In der Regel steht Sprache dort schon auf automatisch, dann wird Deutsch automatisch gewählt.
Für andere Sprachen analog vorgehen.
Die Einstellungen für Luci die automatisch eingestellt werden, sehen dann so aus:
[root@OpenWrt ~]# cat /etc/config/luci
config core 'main'
option lang 'auto'
option resourcebase '/luci-static/resources'
option mediaurlbase '/luci-static/bootstrap'
config extern 'flash_keep'
option uci '/etc/config/'
option dropbear '/etc/dropbear/'
option openvpn '/etc/openvpn/'
option passwd '/etc/passwd'
option opkg '/etc/opkg.conf'
option firewall '/etc/firewall.user'
option uploads '/lib/uci/upload/'
config internal 'languages'
option en 'English'
option de 'Deutsch'
config internal 'sauth'
option sessionpath '/tmp/luci-sessions'
option sessiontime '3600'
config internal 'ccache'
option enable '1'
config internal 'themes'
option OpenWrt '/luci-static/openwrt.org'
option Bootstrap '/luci-static/bootstrap'
Wie kann das Layout in Luci von OpenWrt geändert werden?
Erst in OpenWrt einloggen und die Luci Themen downloaden mit:
opkg update
opkg install luci-theme-bootstrap
Dann in der Luci-Web-Gui unter der Seite System/System -> Language and Style auf das Design von OpenWrt auf Bootstrap stellen. Dann noch auf Save & Apply.
Dann sieht das Layout so aus:

Wie installiere ich MiniPwner auf OpenWrt 12.09 das auf einem TP-Link TL-WR703N Router läuft?
MiniPwner bietet…
Nmap – Netzwerk Scanner
Tcpdump – Sniffer
Netcat – Daten kopieren über Netzwerk
aircrack Wireless – Netzwerk Analyse
kismet – WiFi Analyse
perl – Programmier Sprache Perl
openvpn – VPN Client und Server
dsniff – Sniffing und spoofing Tools, mit arpspoof
nbtscan – NetBIOS Netzwerk Scanner
snort – Sniffer, Packet Logger, Intrusion Detection System
samba2 client – Windows File Sharing Client
elinks – Text Based Web Browser
yafc – FTP Client
openssh-sftp-client – Secure File Transfer Client
mc – Dateimanager für Kommandozeilen und Mausunterstüzung
luci-theme-bootstrap – Sprachunterstüzung und Thema für Luci
htop – Prozessmanger zum anzeigen und kill von Prozessen und Resouren
iftop – Netzwerk Interface Anzeige
ettercap – Netzwerk Penetrations Tool
mdk3 – Netzwerk Penetrations Tool
aircrack-ptw – Netzwerk Penetrations Tool
Voraussetzung:
1. Ein formartierter USB-Stick mit drei Partitionen. Ich habe einen 8 GB Stick so formatiert:
sda1 - sys (80 MB oder mehr) ext2 primary
sda2 - swap (64 MB oder mehr) linux-swap primary
sda3 - data (der Rest des Speichers) ext2 primary
2. OpenWrt Version 12.09 (kein trunk) auf OpenWrt geflasht
downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/
Installation
1. Passwort setzen
2. Über WEB-Frontend Luci zu Network->WiFi gehen und das Netzwerk scannen. Auswählen des erkannten Homenetzwerk. Eingabe des Passwort und als Firewall-Zone WAN auswählen. Speichern.
Unter den erweiterten Einstellungen den Country Code auf DE und HT Mode setzen, wenn er nicht schon da ist.
Speichern.
3. Reboot
4. USB-Stick anschließen
5. Einloggen per SSL folgende updates ausführen:
opkg update
opkg install kmod-usb-storage
opkg install kmod-fs-ext4
opkg install block-mount
Kontrolle mit
dmesg
es muss in einen der letzten Zeilen die Partitionen sda, sda1, sda2, sda3 angezeigt werden.
6. Die Datei /etc/config/fstab wie folgt bearbeiten damit der USB-Stick eingebunden wird.
config global automount
option from_fstab 1
option anon_mount 1
config global autoswap
option from_fstab 1
option anon_swap 1
config mount
option target /overlay
option device /dev/sda1
option fstype ext2
option options rw,sync
option enabled 1
option enabled_fsck 0
config mount
option target /home
option device /dev/sda3
option fstype ext2
option options rw,sync
option enabled 1
option enabled_fsck 0
config swap
option device /dev/sda2
option enabled 1
Nach dem mounten ist /overlay die SYS Partition.
Das /home Verzeichnis ist die Daten-Partition die für alles was benötigt wird verwand werden kann.
7. Mounten des USB-Sticks und kopieren der SYS Partition auf den Stick:
mkdir /mnt/sda1 /home
mount /dev/sda1 /mnt/sda1
tar -C /overlay -cvf - . | tar -C /mnt/sda1 -xf -
8. Reboot
9. Per SSL verbinden und Testen ob der Stick eingebunden wurde mit
df
Testen ob der Swap funktioniert mit
swapon /dev/sda2
Wenn „swapon: /dev/sda2: swapon failed: Device or resource busy“ kommt, ist alles ok.
10. Instalation von dsniffer vom derbycon Repo und anderer Tools mit:
opkg update
opkg install http://minipwner.com/20120514/downloads.openwrt.org/snapshots/trunk/ar71xx/packages/dsniff_2.4b1-2_ar71xx.ipk
opkg install luci-theme-bootstrap mc htop iftop ettercap tar openssh-sftp-client mdk3 nmap tcpdump aircrack-ng aircrack-ptw kismet-client kismet-server perl openvpn nbtscan snort karma samba36-client elinks yafc
Fertig.
Alles was fehlt, kann über opkg noch installiert werden.
Diese Anleitung ist der Anleitung von megal0maniac (engl.) gefolgt.
Lux Mindmap
Wie kann der TP-Link-703N mit der neuen #OpenWrt attitude adjustment Version 12.09 r36088 geflasht werden?
Folgende drei Befehle im Terminal eingeben:
cd /tmp
wget http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-sysupgrade.bin
sysupgrade openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-sysupgrade.bin
Eclipse Mindmap
PAL Mindmap
Fhem – Hausautomation Mindmap
Arduino Mega Projekt: Ansteuerung der besuchten Urlaubsorte auf einer Weltkarte mit Arduino Mega mit LEDs
Wollte lange schon mal, zur Erinnerung an schöne Urlaube eine Markierung auf der Weltkarte anbringen wo wir waren. Als IT-Berater muss es dann aber schon eine Micro-Computer gesteuerte Version sein. Ein roter Punkt reicht da nicht.
Also hier das Ergebnis als Video, und weiter unten dann die Details:
Also so sieht die Weltkarte von vorne aus:
Hier die Rückseite. Ein Arduino Mega wurde verwendet, weil der bis zu 60 Ausgänge hat, die einzeln angesteuert werden können.

An jedem besuchten Urlaubsort wurde ein 3 mm Loch gebohrt und eine LED reingesteckt. An einen Pin der LED wurde jeweils noch ein 220 Ohm Widerstand angelötet. Ja, es sieht etwas wild aus:
Eine Nahaufnahme des Arduino Mega.
Ein Reed-Kontakt habe ich noch an einem Interrupt-Eingang des Arduino geschaltet, so kann man von vorne mit einem Magnet über den Null-Meridian fahren, und schon leuchten unsere TOP 3 Urlaubsorte (Hawaii, Tokio, Seychellen) permanent.

Hier das C-Programm, welches in den Arduino geflasht wird und die Ansteuerung durchführt.
Das ist die 1. Version, da werde ich noch einiges ergänzen.
„Arduino Mega Projekt: Ansteuerung der besuchten Urlaubsorte auf einer Weltkarte mit Arduino Mega mit LEDs“ weiterlesen