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
Autor Thomas Wenzlaff hat im Java Magazin September 2013 einen Artikel veröffentlicht zum Thema: „Per Java auf USB Schnittstellen zugreifen mit javahidapi“
Das Java Magazin Ausgabe 9-2013 ist jetzt überall erhältlich (Inhalt). Das Magazin erscheint in einer Auflage von ca. 20000 Exemplaren und ist das am weitesten verbreitet Magazin für JAVA.
In der Ausgabe findet Ihr einen Artikel vom mir zum Thema „Ansteuerung von USB-Schnittstellen via javahidapi mit Java“ inkl. einem Eclipse Beispielprojekt zum downloaden.
Hier ein Foto meines Belegexemplares:
Wie findet Ihr den Artikel? Würde mich über Feedback freuen.
Installieren der Bourne-again shell (bash) auf WR-TR703N anstatt der Almquist-Shell (ash)
Nach dem Installieren von OpenWrt ist die Almquist-Shell (ash) installiert. Da die ash
im Vergleich zu anderen modernen Shells sehr geringe Ansprüche an Speichergröße und Rechnergeschwindigkeit stellt, wird sie in OpenWrt und anderen Embedded-Linux-Systemen verwendet.
Welche Shell aktiv ist kann mit
echo $SHELL
auf der Konsole angezeigt werden. Obwohl der Befehl ja nur den Inhalt der Variable SHELL ausgibt, und die muss ja nicht immer richtig gesetzt sein.
Es reicht auch ein
echo $0
welches dann
-bash
oder je nach Shell einen Wert ausgibt.
So nun wollen wir die bash installieren weil sie komfortabler und gebräuchlicher ist.
opkg update
opkg install bash
in /etc/passwd
in der ersten Zeile, der root Zeile die bash eintragen:
root:x:0:0:root:/root:/bin/bash
dann eine Datei .bash_profile anlegen mit folgenden Inhalt:
echo ". $HOME/.bashrc" > /root/.bash_profile
dann eine eigene .bashrc Datei mit den User-Einstellungen anlegen, oder diese verwenden:
wget -P /root/ http://wenzlaff.de/download/linux/.bashrc
Nach dem ausloggen und einloggen steht die bash zur Verfügung, was leicht mit
$ echo $SHELL
getestet werden kann, es wird dann ausgegeben:
/bin/bash
Wie kopiere ich nun vom Mac OS X Dateien auf den WR703N?
Das geht mit scp – Secure copy to copy files to/from a remote computer.
Zum Beispiel wenn im aktuellen Verzeichnis die Datei TWSerial.jar
lieg und die in das Root Verzeichnis des WR703N kopiert werden soll.
Wobei der User: root und die IP des WR703: 192.168.2.122 ist (evl. noch anpassen):
scp TWSerial.jar root@192.168.2.122:/root
Das Ergebnis:
TWSerial.jar 100% 170KB 169.8KB/s 00:00
Weiter Infos zu scp:
usage: scp [-12346BCEpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
[-l limit] [-o ssh_option] [-P port] [-S program]
[[user@]host1:]file1 ... [[user@]host2:]file2
Oder auf dem Mac Dateien vom WR703N kopieren, z.B. alle my*.gplot Dateien im lokalen Verzeichnis sichern:
scp root@192.168.2.122:/usr/src/fhem/www/gplot/my*.gplot .
WeMo Firmware update auf Version 2.00.2769.PVT
In der App auf Firmware aktualisierung gehen und ausführen. Nach ca. 10 min ist diesmal alles ohne Probleme upgedated worden.
Folgende Version ist jetzt aktuell:
Wie kann eine Java VM auf TP WR 703N installiert werden?
Über den Paketmanager jamvm installieren (jamvm_1.6.0-git-2_ar71xx.ipk).
Dazu ja* eingeben und suchen klicken. Anschließend das Paket installieren:
Anschließend testen ob die Version richtig installiert ist mit:
jamvm -version
es wird dann folgendes ausgebeben:
Wie kann die Java VM verwendet werden:
jamvm
ergibt folgendes:
Weiter tests folgen …
Startpunkt zu embeddet Java.
Lebenserwartung in Jahre Mindmap
Polonaise Mindmap
Taktgefühl Mindmap
SSH Mindmap
Wie kann die Public Key Authentication (SSH) in OpenWrt angeschaltet werden?
Normal muss per:
ssh root@123.456.789.999
eine Verbindung aufgebaut werden und dann das Passwort eingegeben werden. Wenn der public Key auf dem entfernten Server liegt, wird kein Passwort benötigt. Das geht schneller.
„Wie kann die Public Key Authentication (SSH) in OpenWrt angeschaltet werden?“ weiterlesen
Neue Serielle-Buchse für den WR 703n
Quicktest des Withings Track Gadget für Activity, Schlaf, Food und Puls
Fünf Tage Quicktest mit dem Gadget von Withings in der Tasche. Es wiegt nur ein paar Gramm und hat sogar einen Touch-Screen. So kann es bedient werden:
Bisher läuft der Datenaustausch mit dem iPhone gut. Die App ist auch gut.
Der Accu hielt aber nicht wie angegeben 2 Wochen. Evl. war er auch nicht ganz aufgeladen.
Es gab in den Tagen auch einen neue Firmware, die ohne Probleme installiert werden konnte.
Folgende wichtige Features fehlen meiner Meinung nach noch in der App. (Version 1.17, Firmware Pulse: 731
) und in der Browser-Version und kommen hoffentlich in zukünftigen Versionen.
Reihenfolge der Wichtigkeit nach sortiert:
1. Warnung bzw. Hinweis wenn der Accu geladen werden muss. So kann es passieren, das der Puls einfach aus geht, und keine Daten erfasst, ohne das man es mit bekommt. Nachträglich können bisher ja auch die Werte nicht manuell nachgetragen werden.
2. CSV Export der Daten für Aktivität, Puls, Strecke und Schlaf. Das ist für externe bzw. eigene Auswertungen unbedingt nötig.
3. Manuelles löschen für gemessene Pulswerte. Dann können auch fremde Personen mal eine Messung durchführen, ohne das die eigenen Daten verfälscht werden. Schnelle Antwort vom Support. Das ist doch schon integriert. Nur nicht so leicht zu finden. In der App. Herzfrequenz
auswählen, dann auf den Wert
klicken und über den Papierkorb
oben rechts den Wert löschen.
4. Manuelles erfassen von Schlaf, Aktivität, Puls und Strecke.
Der Support von Withings habe ich schon mal informiert. Der meldet sich sehr schnell. Super.
Der Test läuft …
Wie setzte ich bei einem Mac mit OS X die drahtlose (Alu) Bluetooth Tastatur zurück (RESET)?
Das ist mir schon das 5. Mal passiert, das die drahtlose Mac Tastatur sich nicht mehr per Bluetooth verbinden ließ.
Das Bluetooth paaring klappte mit keinem Gerät, auch Ein/Aus-Schalten und neue Batterien haben nicht geholfen.
Dann bin ich nach dieser Anleitung vorgegangen, und die Tastatur wurde „wiederbelebt“.
Der „Trick“ ist also nach dem Ausschalten der Tastatur und „Bluethooth Geräte Konfigurieren“ muss der Ein/Aus-Schalter an der Tastatur solange gedrückt gehalten werden,
bis der Name der Tastatur angezeigt und dann auf „Weiter“ geklickt wird und dann erscheint einen neue Paaring-Nummer. Erst wenn die Nummer erscheint, kann die Taste losgelassen werden, und die Nummer über die Tastatur eingegeben werden.
Arduino MEGA 2560 Board R3 16U2 – Quicktest am USB Hub unter Mac OS X
Hochladen eines Testprogramms über einen „alten“ USB-Hub. Als Board muss in der IDE „Arduino Mega 2560 …“ ausgewählt werden und die Serielle-Schnittstelle muss ausgewählt werden. Die werden am Mac OS X nur angezeigt wenn das Gerät angeschlossen ist. Es ist auch eine andere wenn der USB-Hub angeschlossen ist, bei mir z.B. dev/cu.usbmodemfd1421
, der ist aber auf jedem System anders.
Der ATMega2560 R3 ist ein Microcontroller auf Basis des ATmega2560 mit diesen technischen Daten:
Microcontroller ATmega2560
Operating Voltage 5V
Input Voltage (recommended) 7-12V
Input Voltage (limits) 6-20V
Digital I/O Pins 54 (of which 14 provide PWM output)
Analog Input Pins 16
DC Current per I/O Pin 40 mA
DC Current for 3.3V Pin 50 mA
Flash Memory 256 KB of which 8 KB used by bootloader
SRAM 8 KB
EEPROM 4 KB
Clock Speed 16 MHz
Bangkirai Mindmap
TOP 4 Recommendations for Health (adults aged 18-64) Mindmap
XFN Mindmap
Wir zersägen ein Netzteil von TP-Link WR703N!
Achtung! Nicht nachmachen! Lebensgefahr!
Wollte mal sehen wie das Netzteil (Eingang: 110-230 Volt, Ausgang: 5V, 1A an USB) so von innen aussieht. Das Gehäuse ist leider verschweißt, und musste mühsam mit der PUK-Säge geöffnet werden. Zuerst das Netzteil aus der Steckdose ziehen, also Spannungslos machen.Hier das Ergebnisse:
Auf beiden längst Seiten vorsichtig langgesägt:
Querschnitt, von der Seite. Links kann man gut den USB Ausgang erkennen:
Gute Kommunikation – Mindmap
Was kann die Ursache sein, das von OpenWrt kein Internet Zugriff möglich ist?
Was kann die Ursache sein, das von OpenWrt kein Zugriff auf das Internet möglich ist?
Checken ob: ping wenzlaff.de geht, wenn nicht,
dann in der /etc/confi/network Datei überprüfen,
ob der folgende Eintrag mit dem DNS und Gateway vorhanden ist:
config interface ‚lan‘
option ifname ‚eth0‘
option type ‚bridge‘
option proto ’static‘
option ipaddr ‚192.168.2.122‘
option netmask ‚255.255.255.0‘
option ip6assign ’60‘
option dns ‚xxx.xxx.xxx.xxx‘ # IP-Adresse aus Router eintragen
option gateway ‚192.168.2.1‘
Das Netzwerkkabel muss am Router angeschlossen werden und nicht an der Netzwerkkarte des Rechners.
Wie kann auf den TL-WR703N Fhem installiert werden?
Dazu muss erst einmal mehr Speicher per USB-Stick bereitgestellt werden.
Dann gem. dieser Anleitung vorgehen.
Also kurz:
1. OpenWrt installieren
2. USB-Stick vorbereiten und an WR703N anschließen
3. Perl installieren
4. Fhem aus Subversion ausschecken
5. mit make install Fhem erstellen
6. nun kann Fhem gestartet werden in /usr/src/fhem
mit: perl /opt/fhem/fhem.pl /opt/fhem/fhem.cfg
7. im Browser http://192.168.2.122:8083/fhem (ip anpassen) aufrufen, es kommt:
8. Autostart für Fhem einrichten. Datei /etc/init.d/fhem
anlegen mit folgenden Inhalt:
#!/bin/sh /etc/rc.common
# FHEM Init Script
START=11
STOP=15
start() {
# cd /usr/src/fhem/
# perl /opt/fhem/fhem.pl /opt/fhem/fhem.cfg
# auf neue Verz. angepasst:
cd /etc/src/fhem/
perl /etc/src/fhem/fhem.pl /etc/src/fhem/fhem.cfg
}
stop(){
echo "shutdown" | nc localhost 7072
}
Dann noch die /etc/init.d/fhem
Datei ausführbar machen und aktivieren.
chmod +x /etc/init.d/fhem
/etc/init.d/fhem enable
/etc/init.d/fhem start
Nach reboot
startet nun Fhem automatisch.
9. Fhem weiter konfigurieren
10. z.B. den ersten Plot anzeigen. Dazu z.B in das Verzeichnis /fhem/www/log die eine Test-Datei temp.log mit Messwerten kopieren. In der /etc/src/fhem.cfg
diese Anpassungen machen:
define Test dummy
define FileLog_Test FileLog /usr/src/fhem/log/temp.log Test
attr FileLog_Test logtype temp4:Plot,text
attr FileLog_Test room Test
define wlTest weblink fileplot FileLog_Test:temp4:CURRENT
attr wlTest room Test
Und schon wird dieses schöne Diagramm angezeigt. Es ist noch nicht viel, da die Testdaten nur ein paar Zeilen sind:
Wie kann für den TL WR703N ein externer USB-Stick als Speicher verwendet werden?
Wenn der TL WR703N mit OpenWRT 12.09 Attitude Adjustement und Luci 0.11.1 geflasht wurde, bleibt nur noch ca. 870 KB an Speicher frei.
Wie kann nun ein externer USB Stick an den WR703 angeschlossen werden?
1. USB-Stick vorbereiten
Der USB Stick muss vorher, mit ext4 an einen anderen Rechner formatiert werden, da der Speicher dafür nicht ausreicht.
Ich habe einen 8 GB Stick mit einer Partitionen wie folgt erstellt:
8 GB Stick, ext4, primäre Partition, aktive – /dev/sda1
unter Windows erstellt und formatiert mit dem Partition Wizard Home Edition wie in beschrieben.
2. Firmware flashen
Neue Firmware über Luci GUI geflasht, auf 12.09 r36088, da die „alte“ Probleme machte.
3. USB-Stick einbinden
Wie in beschrieben vorgegangen.
Dann gem. der Anleitung:
ls /dev/sd*
opkg update
opkg install kmod-usb-storage
opkg install kmod-fs-ext4 block-mount
# ab jetzt ist auch in Luci der Tab vorhanden und zwar unter System – Mount Points
mkdir -p /mnt/sda1
mount /dev/sda1 /mnt/sda1
mkdir -p /tmp/cproot
mount – -bind / /tmp/cproot
tar -C /tmp/cproot -cvf – . | tar -C /mnt/sda1 -xf –
umount /tmp/cproot
umount /mnt/sda1
vi /etc/config/fstab
# in der config mount Sektion
option target /
option enabled 1
reboot
df # zeigt den Speicher an
Speicher ist nun genug vorhanden. Das kann auch unter Luci angezeigt werden:
Und die gemachten Änderungen aus der /etc/config/fstab
werden so angezeigt:
Dreamliner (B-787) Mindmap
230 V Schalter für Arduino hat ein neues Zuhause gefunden
Airport Hannover (HAJ) Mindmap
Gute Entwurfsmuster Mindmap
Flashen des TP-Link TL-WR703N mit OpenWrt über den seriellen Port und einrichten der Luci Gui
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.
7. Dann folgende Befehle eingeben:
hornet> tftpboot 0x81000000 openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin
hornet> erase 0x9f020000 +0x3c0000
hornet> cp.b 0x81000000 0x9f020000 0x3c0000
hornet> bootm 9f020000
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.
TFtp Mindmap
5 V 4-Phase Stepper Motor und Driver Board ULN2003 für Arduino
So, der 4-Phasen-Stepp_Motor ist schon mal gekommen für das nächste Projekt.
Diese techn. Daten soll er haben:
- Spannung: DC5V
- 4-Phase
- Reduction Ratio: 1/64
- Step Torque Angle: 5.625°/64
- DC Resistance: 200Ω ± 7% (25℃)
- Insulation Resistance: >10 MΩ (500 V)
- Dielectric Strength: 600V AC / 1mA / 1 s
- No-load Pull in Frequency: >600 Hz
- No-load Pull out Frequency: >1000 Hz
- Pull in Torque: >34.3 mN.m (120 Hz)
- Detent Torque: >34.3 mN.m
- Temperature Rise: < 40 K (120 Hz)
- Geräusch: < 40dB (120 Hz, No load, 10 cm)
- Größe der Platine: ca. 29 ×21 mm
Wie schreibe ich die Daten mit minicom aus der der seriellen USB-Schnittstelle in eine Datei unter Mac OS X?
Das Terminal-Programm minicom muss erste installiert werden.
Dann muss minicom auf den USB Port eingestellt werden.
Aufruf:
sudo minicom -s
Dann unter Konfiguration – Einstellungen zum seriellen Anschluss den USB Port angeben z.B. bei mir:
/dev/tty.usbserial-A501U7KD
Geschwindigkeit auf: 9600
Unter Konfiguration – Dateinamen und Pfade die Verzeichnisse für Download und Upload setzen.
Und alles speichern mit Konfiguration – Speichern als „dfl“
Minicom beenden.
Als User starten mit:
minicom -C logdateiname.txt
Ab sofort wird die ganze Ausgabe in die logdateiname.txt geschrieben.
Beenden kann man die Ausgabe mit:
Ctrl+A und dann Q
Hier ein Beispiel mit den gelesenen Luftdruck und Temperatur Parametern über den USB Port:
Lebenserwartung Mindmap oder „Satisfaction with life“
Wie kann ein TP-Link WR703N geöffnet werden?
Adrenalin bei Vorträgen nutzen – Mindmap
Lampenfieber bei Vorträgen – Die Folgen – Mindmap
CP 2102 – USB to TTL Konverter eingetroffen!
Arduino Nano Relais Ansteuerung (Relay test)
Mit dem Arduino kann leicht auch 230 Volt geschaltet werden. Dazu kann ein Relais an den digitalen Pin 7 und + VCC und – Masse verbunden werden.
In diesem Video kann man hören und sehen, wie das Relais alle 5 Sekunden an und wieder aus geschaltet wird.
Folgendes Sketch ist in den Arduino Nano hochzuladen.
/*
TWRelais
Dieses Programm schaltet das Relais alle 5 Sekunden an und aus.
Thomas Wenzlaff 02.07.2013
Das Relais wir an den digitalen Pin 7 angeschlossen und VCC 5 V und Masse verbunden
Größe des compilierten Programm: 1108 Byte
*/
// An Pin 7 ist eine Relais angeschlossen,
const int RELAIS = 7;
// Die setup Methode wird nur einmal ausgeführt und bei reset
void setup() {
// Digitaler PIN 7 mit der RELAIS ist ein Ausgang
pinMode(RELAIS, OUTPUT);
}
// Die Endlosschleife
void loop() {
digitalWrite(RELAIS, HIGH); // RELAIS anschalten
delay(5000); // 5s warten
digitalWrite(RELAIS, LOW); // RELAIS ausschalten
delay(5000); // 5 Sekunden warten
}
Luftdrucksensor BMP085 von Bosch inkl. Temperatursenor für den Arduino
Der BMP085 ist ein Drucksensor mit hoher Präzision und ultra-niedrigem Stromverbrauch für den I2C-Bus.
Technische Daten:
- Druckbereich: 300 – 1100 hPa (9000 Meter über dem Meeresspiegel bis -500 m)
- Versorgungsspannung: 1.8V – 3.6 V (VDDA). 1.62V – 3.6 V (VDDD)
- LCC8 Paket: bleifreie keramische Carrier Package (LCC)
- Geringe Leistungsaufnahme: 5 μA im Standard-Modus
- Hohe Präzision: Low-Power-Modus, die Auflösung von 0.06 hPa (0,5 m)
- Hohe linearen Modus mit einer Auflösung von 0.03 hPa (0,25 m)
- Mit Temperatur-Ausgang
- I2C-Schnittstelle
- Temperaturkompensation
- Reaktionszeit: 7,5 ms
- Standby-Strom: 0.1 μA
- Beseitigt die Notwendigkeit für einen externen Taktgeber
- Größe: 21 x 15 x 10 mm
Die Platine mit dem BMP085 (auf GY-65) ist nur 1,5 cm x 2 cm klein.
Von oben:
Von unten:
Anschlussbelegung:
Software:
Folgende beiden Libs von Adafruit downloaden und in das Lib Verheichnis kopieren. Evl. noch die Verzeichnisnamen umbenennen, da keine Sonderzeichen vorhanden sein dürfen.
1. Adafruit Unified Basis Sensor Driver
2. Adafruit Unified Drucksensor BMP085 Driver
Diesen Sketch TWDruck hochladen:
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BMP085.h>
/*
TWDruck Version 1.0 vom 06.07.2013
Thomas Wenzlaff http://www.wenzlaff.de
Programm Größe: 12296 Bytes
Dies Programm liest den Luftdrucksensor und den Temperatursensor endlos aus,
und gibt die Werte über die Serielle-Schnittstelle mit Leerzeichen getrennt aus.
Kommentare beginnen mit #.
z.B.
# Luftdruck und Temperatur Messprogramm
# TWDruck 1.0 vom 06.07.2013
# http://www.wenzlaff.de
# Sensor: BMP085
# Treiber Version: 1
# Unique ID: 10085
# [Luftdruck in hPa] [Temperatur in Grad Celsius] [Höhe in Meter]
1022.59 26.84 -80.49
1022.73 26.84 -81.69
1022.63 26.85 -80.83
1022.51 26.85 -79.80
...
Anschluss an den Nanu Arduino:
Das BMP085 an:
SCL an A5
SDA an A4
VDD Plus 3.3V DC
Masse Minus
*/
const long MESSINTERVAL = 5000; // Messintervall in milli Sekunden
const long SENSOR_ID = 10085; // eindeutige Sensor ID
String KOMMENTAR = "# "; // Kommentar präfix
String TRENNER = " "; // Trennzeichen der Werte
Adafruit_BMP085 bmp = Adafruit_BMP085(SENSOR_ID);
void anzeigeDetails(void)
{
sensor_t sensor;
bmp.getSensor(&sensor);
Serial.println(KOMMENTAR +"Luftdruck und Temperatur Messprogramm");
Serial.println(KOMMENTAR +"TWDruck 1.0 vom 06.07.2013");
Serial.println(KOMMENTAR +"http://www.wenzlaff.de");
Serial.print (KOMMENTAR + "Sensor: "); Serial.println(sensor.name);
Serial.print (KOMMENTAR + "Treiber Version: "); Serial.println(sensor.version);
Serial.print (KOMMENTAR + "Unique ID: "); Serial.println(sensor.sensor_id);
delay(500);
}
void setup(void)
{
Serial.begin(9600);
if(!bmp.begin())
{
Serial.print(KOMMENTAR + "Kein BMP085 gefunden ... Prüfe I2C Adresse!");
while(1);
}
anzeigeDetails();
}
void loop(void)
{
sensors_event_t event; // neues Sensor ereignis
bmp.getEvent(&event);
if (event.pressure)
{
Serial.print(event.pressure); // Luftdruck in hPa
Serial.print(TRENNER);
/* Calculating altitude with reasonable accuracy requires pressure *
* sea level pressure for your position at the moment the data is *
* converted, as well as the ambient temperature in degress *
* celcius. If you don't have these values, a 'generic' value of *
* 1013.25 hPa can be used (defined as SENSORS_PRESSURE_SEALEVELHPA *
* in sensors.h), but this isn't ideal and will give variable *
* results from one day to the next. *
* *
* You can usually find the current SLP value by looking at weather *
* websites or from environmental information centers near any major *
* airport. *
* *
* For example, for Paris, France you can check the current mean *
* pressure and sea level at: http://bit.ly/16Au8ol */
float temperature;
bmp.getTemperature(&temperature);
Serial.print(temperature); // Temperatur in Grad Celsius
Serial.print(TRENNER);
/* Then convert the atmospheric pressure, SLP and temp to altitude */
/* Update this next line with the current SLP for better results */
float seaLevelPressure = SENSORS_PRESSURE_SEALEVELHPA; // 1013.25F Average sea level pressure is 1013.25 hPa
Serial.print(bmp.pressureToAltitude(seaLevelPressure,
event.pressure,
temperature)); // Höhe in Meter
Serial.println();
}
else
{
Serial.println(KOMMENTAR +"Sensor error");
}
delay(MESSINTERVAL);
}
Mit diesen Daten, wird dieses Diagramm erzeugt:
Die gerade Linie im Diagramm, rührt daher das der PC sich automatisch in den Standby-Betrieb schaltet und damit die Serielle-Verbindung nicht mehr abgefragt wird.
Der dritte Wert der Daten ist die Höhe, die ändert sich nicht gross und wird deshalb nicht im Diagramm dargestellt. Wie wird bei gnuplot die 3. Y-Achse erzeugt? Geht das überhaupt?
Gegensätze Mindmap
Gnuplot der Temperaturen im Gefrierfach und Kühlschrank.
Zuerst wurde der Temperatursensor in das Gefrierfach und dann in den Kühlschrank gelegt (grüne Kurve). Der zweite Sensor, wurde außerhalb des Kühlschranks platziert (die rote Kurve).
Folgende gnuplot Datei ist dafür nötig:
set title "Temperaturverlauf im Kühlschrank" font "Times,18"
set ylabel "Temperatur in Grad/Celsius"
set xlabel "Messzeitpunkt am 26.06.13"
set xdata time # x-Achse wird im Datums/Zeitformat skaliert
set timefmt "%Y.%m.%d_%H:%M:%S" # Format Zeitangaben yyyy.mm.dd_hh:mm:ss
set format x "%H:%M" # Format für die Achsenbeschriftung
set yrange [-19:26] # die y-Achse geht von:bis
set zeroaxis # eine Null Linie
# Maximum und Minimum anzeigen
max_y = GPVAL_DATA_Y_MAX
set label 1 gprintf("Maximum = %g Grad/Celsius", max_y) at "2013.06.26_17:00:00",24 font "Times,12"
min_y = GPVAL_DATA_Y_MIN
set label 2 gprintf("Minimum = %g Grad/Celsius", min_y) at "2013.06.26_17:25:00",-15 font "Times,12"
set terminal png
set output "temperaturverlauf-kuehlschrank.png"plot "temperatur-kuehlschrank.txt" using 1:2 title "Zimmer Sensor" with lines, "" using 1:3 title "Sensor im Kühlschranki" with lines
set terminal aqua
replot
Diese Grafik liegen diese, mit dem Arduino gemessenen Werte zugrunde. Die Aussetzer in der Aufzeichnung rühren daher, das sich der MacBookAir nach einiger Zeit in den Sleep-Modus schaltet, dann kommen keine Daten aus der USB-Schnittstelle an. Da muss man sich dann noch was einfallen lassen.
Wie kann mit gnuplot ein Diagramm der Temperaturdiffernz zweier Temperatur Sensoren erstellt werden?
Folgende gnuplot Befehle sind dazu nötig: „Wie kann mit gnuplot ein Diagramm der Temperaturdiffernz zweier Temperatur Sensoren erstellt werden?“ weiterlesen