Vorbedingung ist das der ESP per Konsole erreichbar ist.
Wie in dieser Beschreibung ua. erwähnt, diese AT Befehle absetzen: „Wie kann der ESP8266 per WLAN mit AT über die Cloud upgedated werden?“ weiterlesen

Wenzlaff.de – Rund um die Programmierung
mit Java, Raspberry Pi, SDR, Linux, Arduino, Sicherheit, Blender, KI, Statistik, Krypto und Blockchain
Anleitungen zu allen Themen.
Vorbedingung ist das der ESP per Konsole erreichbar ist.
Wie in dieser Beschreibung ua. erwähnt, diese AT Befehle absetzen: „Wie kann der ESP8266 per WLAN mit AT über die Cloud upgedated werden?“ weiterlesen
Mein Worpress-Blog der auf einem Raspberry Pi läuft, kann auch Tabellen mit dem DataTables Plugin anzeigen. Wer in einem WordPress-Blog Tabellen mit dem DataTables Plugin anzeigt, kann auch leicht automatisch die URLs als Link formatieren. So braucht man nicht alles aufwendig vorher in HTML convertieren. Das geht automatisch mit dem Automatic URL conversion Plugin. „Wie können URLs in einer WordPress Tabelle mit DataTables automatisch als Link angezeigt werden?“ weiterlesen
Mit dem TablePress Plugin können leicht Tabellen erstellt und angezeigt werden.
Manchmal möchte man diese Tabelle als PDF oder als Excel exportieren. Das geht mit dem DataTables Buttons Plugin sehr schnell und einfach.
Dazu 1. die ZIP-Datei von downloaden.
2. Die Datei im Worpress Menü: Plugins – Installieren unter Plugin hochladen auswählen.
3. Datei hochladen und Plugin aktivieren. „Wie können Tabellen in WordPress mit TablePress als PDF, CSV und im Excel Format exportiert werden?“ weiterlesen
Die Arduino IDE kann für die Entwicklung und Bereitstellung von ESP8266 verwendet werden. Ab Version 1.6.4 gibt es da einen schönen Board-Manger.
Wir nehmen die aktuellste Version, also zuerst die Arduino IDE 1.6.6 downloaden (Win, Mac oder Linux).
Im Menü: Arduino – Einstellungen unter Voreinstellungen „Zusätzliche Boardverwalter-URLs“ die folgende URL eingeben:
|
1 |
http://arduino.esp8266.com/stable/package_esp8266com_index.json |
Dann unter dem Menü: Werkzeuge – Boards – Boardsverwalter die esp8266 Version installieren, in dem auf „More info“ geklickt wird und dann auf den „Installieren-Button“: „Arduino IDE für den ESP8266 nutzen (Entwicklung und Upload)“ weiterlesen
Wer per SSH auf einen Raspberry Pi zugreifen will, kann das auch mit dem aktuellen El Capitan. Also X-Anwendungen mit SSH forwarden.
Das heißt, es laufen alle Programme auf dem Pi, und man hat eine „normale“ Gui für die Mausschubser. Man braucht also nicht mehr einen eigenen Monitor an den Raspberry Pi anschliessen und kann den Mac dafür benutzen. Das alles geht natürlich auch analog mit Windows.
Es muss nur XQuartz installiert werden, wenn es nicht eh schon vorhanden ist.
Dann einen Neustart und mit dem Raspberry Pi per SSH und den X Parameter verbinden:
|
1 |
ssh -X pi@[PI-Adresse] |
dann wenn man per ssh verbunden ist im Terminal
|
1 |
lxpanel& |
das Panel starten und ein paar Minuten warten. Jetzt können alle Programme normal über GUI gestartet werden. Hier mal top und das Programmfenster:
Zu Beenden im Menü von XQuartz auf X11 beenden klicken.
Manches geht doch besser mit GUI. „Raspberry Pi SSH X Forwarding auf den Mac OS X El Capitan 10.11.1oder wie zeige ich den Raspberry Pi Desktop unter Mac an.“ weiterlesen
Auch mit dem neuen iPad Pro und iOS 9.1 läuft VPN on Demand so wie in dem Beitrag schon einmal erwähnt (auch hier). Es sind keine Änderungen an der config Datei nötig, obwohl es einige Neuerungen gab, „iPad Pro: VPN on Demand mit IPSec unter iOS 9.1 mit “shared secret” möglich oder wie kann ich sicher über Hotspots Daten austauschen?“ weiterlesen
Heute ist die Fhem 5.7 Version veröffentlicht worden. Es sind einige Fix und Features implementiert. Die Liste ist lang. In der Fhem Anleitung steht:
Achtung: FHEM wird kontinuierlich weiterentwickelt, und die hier herunterladbaren Versionen sind nur als Startpunkt für den update Prozess gedacht.
Dann will ich es mal wagen, nach längerer Zeit die Fhem Version 5.7 unter wheezy auf dem Raspberry Pi zu aktuallisieren. „Fhem 5.7 für den Raspberry Pi ist heute veröffentlicht worden“ weiterlesen
Öfter braucht man den Pfad wo eine Datei gespeichert wird. Wie kann der Pfad nun unter dem aktuellen Mac Betriebssystem El Capitan kopiert werden?
Einfach im Finder die Datei oder das Verzeichnis markieren und mit der rechten Taste das Kontextmenü drücken. Wenn das erscheint, die alt Taste drücken und es erscheint anstatt „Dateiname“ kopieren der Alternative Eintrag „Dateiname“ als Pfadname kopieren.
Hier hatte ich schon mal beschrieben wie PiAware 2.0.4 installiert wird. Am 28.9.2015 ist die Version 2.1-3 veröffentlicht worden. Wie kann nun auf diese aktuelle Version upgedated werden? Da der default Port geändert wurde, ist evl. noch eine kleine Portanpassung nötig.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# Neue Version laden wget http://flightaware.com/adsb/piaware/files/piaware_2.1-3_armhf.deb # Server stoppen sudo /etc/init.d/piaware stop # Version updaten sudo dpkg -i piaware_2.1-3_armhf.deb # Version ausgeben piaware -v # Ausgabe: 2.1-3 # Server starten sudo /etc/init.d/piaware start # Wenn Fehlermeldung in der Form: Beast-format results connection with localhost:30104: [Errno 111] Connection refused dann den Port auf den alten 30004 setzenhttp://blog.wenzlaff.de/?p=6183&preview=true sudo piaware-config -mlatResultsFormat beast,connect,localhost:30004 # Restart sudo service piaware restart |
Auf der PiAware Seite die Site informationen checken:
|
1 2 3 4 5 6 7 |
Data Feed: Live - vor wenigen Sekunden Feeder Check-in: Live - vor wenigen Sekunden Joined: 30.11.2014 Longest Streak: 334 days (30.11.2014 - Today) Feeder Type: PiAware (Debian Package Add-on) 2.1-3 Multilateration (MLAT): Supported / Enabled (synchronized with 8 nearby receivers) |
sieht gut aus. Es können nun wieder alle Daten gesendet werden. Habe vor ein paar Tage in San Francisco diese Flugzeuge gesehen:
Ob die auch Transponder an Board hatten? „Raspberry Pi: Wie wird die neue Version von PiAware von 2.0.4 auf 2.1-3 upgedated?“ weiterlesen
Wie kann der ESP8266 mit dem Raspberry Pi verwendet werden. Das Teil gibt es für ein paar Euros in der eBucht. Habe nun auch so eine Platine liegen. Dazu erst einmal eine Mindmap (ESP8266) erstellt, für den schnellen Überblick.
Es gibt schon viele Seiten zu dem Thema. Welche sind wichtig? Was kann man da mit machen? Ideen?
Oder doch besser am Arduino verwenden?
Vorschläge gern als Kommentar.
Gui und Kommandozeile für die SysV-init-runlevel-Bearbeitung auf dem Raspberry Pi. Das sysv-rc-conf stellt eine Benutzeroberfläche zur Verwaltung von symbolischen Verweisen von /etc/rc{runlevel}.d/ für die Kommandozeile zur Verfügung. So sieht die GUI aus:

Sie erlaubt das einfache Aktivieren und Deaktivieren von Diensten. Es können Startskripte für jedes runlevel editiert werden, nicht nur das des Aktuellen.
Das Programm wird wie folgt installiert und gestartet: „Wie kann sysv-rc-conf 0.99 auf einem Raspberry Pi installiert werden?“ weiterlesen
Zuerst Fhem stoppen und dann ein Backup wie folg einspielen:
|
1 2 3 4 5 6 7 8 |
# Fhem stopen /etc/init.d/fhem stop # Die Backups liegen in /opt/fhem/backup/ da eins auswhälen und mit ein restor machen sudo tar -xvzf /opt/fhem/backup/FHEM-20150909_180000.tar.gz -C /opt/fhem/ # Fhem starten /etc/init.d/fhem start # Fhem status ausgeben /etc/init.d/fhem status |
Wie kann ein laufender Windows XP Rechner (oder Raspberry Pi) auf Debian 8 Jessie mit WordPress 4.3 (SSL), Apache2 (SSL, https), MySql und phpMyadmin erstellt werden? Hier die gewünschte Architektur:
Alle Daten auf den Windows Rechner müssen vorher gesichert werden, da das ganze System mit Linux überschrieben wird.
installieren
z.B. tools/win32-loader/stable/win32-loader.exe laden und installieren mit SSH Zugang, ohne GUI
Beim Raspberry Pi, analog vorgehen, wie hier im Blog schon beschrieben.
installieren mit:
|
1 |
apt-get install apache2 mysql-client mysql-server php5 php5-mysql php5-curl php5-gd unzip phpmyadmin |
erstellen
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
mysql -u root -p # Passwort # wpdatabase, wpuser und passwort selbst wählen # evl. Database löschen mit DROP DATABASE wpdatabase; CREATE DATABASE wpdatabase; CREATE USER wpuser@localhost IDENTIFIED BY 'wppass'; GRANT ALL PRIVILEGES ON wpdatabase.* TO wpuser@localhost; FLUSH PRIVILEGES; exit # Apache und MySql restarten service apache2 restart service mysql restart |
4.3 laden erstellen
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# ins tmp Verzeichnis gehen cd /tmp # Wordpress aktuelle Version laden wget -c http://wordpress.org/latest.zip # Archive auspacken unzip -q latest.zip -d /var/www/html/ # oder wenn es ein tar.gz ist dann tar zxf wordpress-4.5.3-de_DE.tar.gz -C /var/www/html/ # Rechte vergeben chown -R www-data.www-data /var/www/html/wordpress chmod -R 755 /var/www/html/wordpress mkdir -p /var/www/html/wordpress/wp-content/uploads chown -R www-data.www-data /var/www/html/wordpress/wp-content/uploads cd /var/www/html/wordpress/ # kopieren des Beispiel cp wp-config-sample.php wp-config.php # in wp-config.php den Databasenamen, User und Passwort eintragen nano wp-config.php # im Browser aufruen und Sprache und User wählen http://localhost/wordpress/ # testen # gleich noch den Datei upload Size vergrößern # in der /var/www/html/wordpress/.htaccess die folgenden Einträge machen: vi /var/www/html/wordpress/.htaccess php_value upload_max_filesize 64M php_value post_max_size 64M php_value max_execution_time 300 php_value max_input_time 300 # unnötige Dateien löschen rm wp-config-sample.php rm readme.html rm liesmich.html rm /wp-admin/install.php # Optional: Neue Sicherheitsschlüssel (Salt) generieren über https://api.wordpress.org/secret-key/1.1/salt/ # und diesen generierten Block in die <strong>wp-config.php</strong> Datei einfügen # #define('AUTH_KEY', '-+jiH||`2);cZjy.Vy5C|!NX{KNv,Ov@=XK|SALR8++C.axK4b(Ep4U_RWAV|Ir;'); #define('SECURE_AUTH_KEY', '.+WZ>Ul&)Qak2uhZ-.(Y^]},n!.&R.VRl~+o*~7*dP{{4s*iyMO7L^{o/#lq7Xs1'); #define('LOGGED_IN_KEY', '_T)TC.YN6r9wxM*lRbjGc0dy2;<nQA+SBk|JYoU[1S~l0xLLBWbK2x+fl<1G*IP$'); #define('NONCE_KEY', 'vVrz#TDgM[,Te(v[hStvF][>ZfI;$K.^ IstOP`k>IfNo3j8h~|2rvxU&%=[eJ@w'); #define('AUTH_SALT', '/ qC?UB4&>H&hy#=:;sP6m 0}[u~oDJGhBdqskc{gY+j1yJU~/>rBL91P8kGtnG_'); #define('SECURE_AUTH_SALT', 'tUd3QTYMV.g|86`=!-?EN_P~N+jB$LwD|q-b?g[G@E!9.,{G2n|1X1_2-+Fv,y=:'); #define('LOGGED_IN_SALT', '?d`pE;|nVH?81n2#@[VYOB__Nh.l:v=4F5_uajQ4jp.,h$Z8#N2DZ}^=|sQi7?d4'); #define('NONCE_SALT', 'C*-+6P_j/o0FTQC1.(GHJ[tXNCpou<RyB.@:mx&spG@{-9< Wk|r!zoJUiwY@:M:'); # Optional die wp-config.php sichern mit folgenden Eintrag in der <strong>.htaccess</strong> Datei: <FilesMatch "(wp-config.php)"> order deny,allow deny from all </FilesMatch> |
Optional ein paar gute Plugins installieren. Hier mal eine kleine Auswahl z.B.:
Schon alt, läuft aber noch „Limit Login Attempts„.
Wenn man sich da selbst aussperrt, einfach in der DB folgenden SQL absetzen:
|
1 |
UPDATE wp_options SET option_value = '' WHERE option_name = 'limit_login_lockouts' |
Hier noch ein paar:

Optional kann noch ein PDF Export für die Tabellen integriert werden, wie hier beschrieben und auch gleich die Extension für das automatische URL converting.
installieren
In /etc/phpmyadmin/apache.conf den Eintrag
|
1 2 3 4 5 6 7 8 9 |
#<Directory /usr/share/phpmyadmin> # Options FollowSymLinks # DirectoryIndex index.php Require ip 127.0.0.1 10.0.0.0/24 # Apache restart service apache2 restart # Aufruf im Browser (IP)/phpmyadmin # Anmelden mit MySql Datenbankuser und Passwort |
erzeugen und installieren
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
mkdir .ssl cd .ssl openssl req -new -days 999 -newkey rsa:4096bits -sha512 -x509 -nodes -out server.crt -keyout server.key # Diese Fragen beantworten # Country Name (2 letter code) [AU]:DE # State or Province Name (full name) [Some-State]:Niedersachsen # Locality Name (eg, city) []:Hannover # Organization Name (eg, company) [Internet Widgits Pty Ltd]:My Blog # Organizational Unit Name (eg, section) []:Dept of Blogging # Common Name (e.g. server FQDN or YOUR name) []:kleinhirn.eu # Email Address []:webmaster@yourdomain.com sudo cp server.crt /etc/ssl/certs sudo cp server.key /etc/ssl/private service apache2 restart # SSL Modul aktivieren a2enmod ssl service apache2 restart # Rewrite Modul für später aktivieren a2enmod rewrite service apache2 restart # Status anschauen systemctl status apache2.service # ergänzen der erzeugten Zertifikate in sudo vi /etc/apache2/sites-available/default-ssl.conf # ServerName mydomain.com:443 SSLEngine on SSLCertificateFile /etc/apache2/ssl/server.crt SSLCertificateKeyFile /etc/apache2/ssl/server.key # Default Seite aktivieren a2ensite default-ssl.conf # Server Restart service apache2 restart # http deaktivieren und https setzen in /etc/apache2/sites-enabled/titled 000-default.conf vi /etc/apache2/sites-enabled/titled 000-default.conf # Inhalt der Datei: ServerName xxx ServerAlias www.xxx Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all Require all granted ServerAdmin webmaster@xxx.de DocumentRoot /var/www/html/wordpress SSLEngine on SSLCertificateFile /etc/ssl/certs/server.crt SSLCertificateKeyFile /etc/ssl/private/server.key #SSLCACertificateFile /home/me/domain.com.crt ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined # Test ob der Blog mit https und den Zertifikaten läuft im Browser https://(IP)/wordpress/wp-login.php |
welche Ports offen sind und deaktivieren!
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
nmap ip # oder sudo nmap -sT -O -v ip # wenn der Port 80 noch offen ist, in vi /etc/apache2/ports.conf # Auskommentieren oder löschen der Zeile # Listen 80 # Wenn der Port 111 rpcbind offen ist (wird für Samba gebraucht), kann der auch mit dem Tool sysv-rc-conf abgeschalte werden # Tool installieren sudo apt-get install sysv-rc-conf # Tool starten sysv-rc-conf # in der letzten Spalte wo das S ist mit der Space Taste ausschalten # in der Zeile mit rpcbind # Rechner restarten reboot # neuer Check mit nmap nmap ip # alles ok, nur die gewünschten Ports sind offen # Checken welche Module installiert sind mit apache2ctl -M # Unnötige module deaktivieren z.B. das status_module (shared) a2dismod status # Server restart service apache2 restart # Checken ob das status modul deaktiviert wurde apache2ctl -M |
Optional: Vorhandenen Blog mit dem WP Plugin
exportieren und importieren, wie hier schon mal beschrieben.
Beim export evl. in „Find (text) Replace with (another-text) in the database“ den Eintrag xxx.ALTE-DOMAINE durch YYY-NEUE-DOMAINE ersetzen.
Die *.wpress Datei dann importieren.
Optional testen, welche Apache Version läuft mit:
|
1 2 |
apachectl -V # Ergebnis: Apache/2.4.10 (Debian) |
Optional, die History löschen, so das die erstellten Passwörter nicht ausgelesen werden können
|
1 |
history -c |
Super, der WordPress Blog läuft nun verschlüsselt über https 😉
Raspcontrol bietet einen schönen graphischen Überblick über die Systemparameter des Raspberry Pi und folgende Funktionen wie Logout, Reboot und Shutdown über Menüs. Es wird mit dem Image mit installiert, kann aber auch leicht standalone eingerichtet werden.
„Raspberry Pi: Überblick zum PHP Browser Tool Raspcontrol“ weiterlesen
Das vorkonfigurierte Image von PressPi enthält WordPress mit Datenbank und Server (Nginx). Das ganze kann wirklich leicht zum laufen gebracht werden. Es läuft unter Debian Wheezy
Linux presspi 3.18.7+ #755 PREEMPT Thu Feb 12 17:14:31 GMT 2015 armv6l GNU/Linux
1. Download von http://presspi.com/ das PressPi_v2.2.zip und die enpacken, so das eine PressPi_v2.2.img Datei entsteht.
2. Das PressPi_v2.2.img (7,9GB) auf die SD-Karte kopieren mit:
|
1 2 3 4 5 6 |
# alle Disk ausgeben diskutil list # die SD-Karte unmounten sudo diskutil unmountDisk /dev/disk3 # den Kopier Vorgang starten mit sudo dd if=PressPi_v2.2.img img of=/dev/disk3 bs=512k |
Nach der Installation sind auf der 8 GB Karte noch 45% Speicher für Nutzerdaten frei.
3. Nach der Installation und booten und anmelden mit SSH User: pi Passwort: raspberry, den SD-Karten Speicher auf die maximale SD-Karten Größe anpassen und gleich das Passwort ändern:
|
1 |
sudo raspi-config |
Aufruf im Browser mit der PI-ADRESSE liefert:

Der Server läuft und weiter unten gibt es die folgenden Angaben: „Raspberry Pi: Wie kann WordPress mit Datenbank (MySQL) und Server (Nginx) vorkonfiguriert installiert werden? Mit PressPi!“ weiterlesen
Es können mit diesen günstigen Modulen Geräusche analog oder auch digital drahtlos übertragen werden.
Die VirtualWire Library kann für die Ansteuerung verwendet werden. Hier ein Beispiel mit dem Arduino der Raspberry Pi würde natürlich auch gehen.
Tech. Daten
Empfänger
1.Product Model: MX-05V
2.Operating voltage: DC5V
3.Quiescent Current: 4MA
4.Receiving frequency: 315 MHZ (in Deutschland nicht zugelassen, dort z.B. 433 Mhz verwenden)
5.Receiver sensitivity:-105DB
6.Size: 30 * 14 * 7mm
7.External antenna: 32CM single core wire, wound into a spiral
Sender
1.Product Model: MX-FS-03V
2.Launch distance :20-200 meters (different voltage, different results)
3.Operating voltage :3.5-12V
4.Dimensions: 19 * 19mm
5.Operating mode: AM
6.Transfer rate: 4KB / S
7.Transmitting power: 10mW
8.Transmitting frequency: 315 M (in Deutschland nicht zugelassen, dort z.B. 433 Mhz verwenden)
9.An external antenna: 25cm ordinary multi-core or single-core line
10.Pinout from left → right: (DATA; VCC; GND)
Mikrofon
LM393 oder KY-038
Das Sender Programm, das in den Arduino geflasht werden muss:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
/* TWSendRawSound Beschreibung: Dieses Programm liesst die Daten von dem Soundsensor analog ein und sendet Signale per WiFi. Folgende Verbindungen sind noetig: Arduino Nano: A3 auf PIN 2 OUT +5v auf PIN 3 +5 Volt GND auf PIN 1 GND Serielle Konsole auf 9600 Baud stellen. Compile mit Arduino 1.6.2 IDE. Einstellung: Board Arduino Nano Copyright (C) 2015 Thomas Wenzlaff http://www.wenzlaff.de This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see {http://www.gnu.org/licenses/}. */ #include <VirtualWire.h> // Baud Rate zum Host PC, evl. aendern const long BAUD_RATE = 9600L; // Baud Rate zum Virtual Wirer const int BAUD_VIRTUAL_WIRE = 2000; // PIND zu Virtual Wire const int VIRTUAL_WIRE_PIN = 12; // SOUND Sensor an analog Pin 3 const int SOUND_SENSOR_PIN = 3; void sendString(String message, bool wait) { byte messageLength = message.length() + 1; // convert string to char array char charBuffer[messageLength]; message.toCharArray(charBuffer, messageLength); vw_send((uint8_t *)charBuffer, messageLength); if (wait) vw_wait_tx(); } void setup() { Serial.begin(BAUD_RATE); Serial.println("Starte TWSendRawSound V. 1.0 von wenzlaff.info"); pinMode(SOUND_SENSOR_PIN, INPUT); vw_set_tx_pin(VIRTUAL_WIRE_PIN); vw_setup(BAUD_VIRTUAL_WIRE); } void loop() { // analog int sensorDaten = analogRead(SOUND_SENSOR_PIN); // digital würde auch gehen mit // int sensorDaten =digitalRead(soundSensor); // dann aber den digitalen Pin auf der anderen Seite des Nano verwenden if (sensorDaten <= 1000){ //rausche verhindern // ueber WIFI senden String data = String(sensorDaten, DEC); sendString(data, true); } } |
Der ganze Aufbau des Senders:

Der Arduino:

Das Micro im Detail:

Das Empfänger Programm in den Empfänger Arduino flashen. In dieser Version werden die Daten nur in der Konsole ausgegeben. Cool…
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
/* TWSoundEmpfang.ino Der Empfaenger der Sound Auswertung.. Serielle Konsole auf 9600 Baud stellen. Compile mit Arduino 1.6.2 IDE. Einstellung: Board Arduino Nano, Prozessor Arduino ATMega328, Programmer USBtinyISP Copyright (C) 30.08.2015 Thomas Wenzlaff http://www.wenzlaff.de This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see {http://www.gnu.org/licenses/}. */ #include <VirtualWire.h> const int led_pin = 13; const int transmit_pin = 12; const int receive_pin = 11; const int transmit_en_pin = 3; byte message[VW_MAX_MESSAGE_LEN]; // Buffer fuer die eintreffenden Nachrichten byte messageLength = VW_MAX_MESSAGE_LEN; // die Groesse der Nachricht void setup() { delay(1000); Serial.begin(9600); Serial.println("Starte TWSoundEmpfaenger V. 1.0 von wenzlaff.info"); vw_set_tx_pin(transmit_pin); vw_set_rx_pin(receive_pin); vw_set_ptt_pin(transmit_en_pin); vw_set_ptt_inverted(true); // fuer DR3100 vw_setup(2000); // Bits per sec Serial.println("OK"); vw_rx_start(); } void loop() { if (vw_get_message(message, &messageLength)) // non-blocking { digitalWrite(led_pin, HIGH); // Serial.print("OK: "); for (int i = 0; i < messageLength; i++) { Serial.write(message[i]); } digitalWrite(led_pin, LOW); Serial.println(); } } |
Reichweite:
Bisher habe ich die Daten nur von einem Raum in den anderen übertragen. Weiter Tests folgen…
Wenn Kali 2.0 auf einer größeren SD-Karte installiert ist, als Kali groß ist, dann muss der Speicher noch freigegeben werden.
Wie sieht die Speichernutzung nach der Installation aus? Es werden ca. 3 GB für Kali benötigt:
Die Vergrößerung geht mit „Raspberry Pi: Wie kann der Speicher einer SD-Karte vergrößert werden bei Kali Linux 2.0?“ weiterlesen
Mit dem neuen Kali 2.0 auf dem Raspberry Pi ist auch eine neue Einrichtung von Kismet nötig, damit die GPS-Daten dort angezeigt werden. Läuft so aber auch auf Debian.
Wie hier schon mal beschrieben, werden die GPS-Daten über den GY-GPS6MV2 an den Raspberry Pi über die serielle Schnittstelle gesendet. Dort holt der gpsd die Daten ab, und stellt sie an localhost:2947 bereit.
Deshalb müssen die folgenden Einstellungen in der /etc/kismet/kismet.conf Datei gemacht werden (Details):
|
1 2 3 4 5 6 |
#nano /etc/kismet/kismet.conf gps=true gpstype=gpsd gpshost=localhost:2947 gpsmodelock=false gpsreconnect=true |
In Kismet werden die GPS-Daten hier angezeigt:
„Raspberry Pi: Wie muss Kismet konfiguriert werden, damit GPS-Daten angezeigt werden?“ weiterlesen
Seit den 11.08.2015 gibt es einen neue Kali 2.0 Version. Was gibt es da Neues? Diese Mindmap SANA gibt einen ersten Überblick.
Die Sana Version kann ua. auch für den Raspberry Pi verwendet werden.
Wie wird die nun installiert?
Zuerst das gepackte Kali Image kali-linux-1.0.5-armel-rpi.img.xz (ca. 1,4 GB) von Kali.org herunter laden. Für den Raspberry Pi 2 das andere File verwenden. Oder wer mit TFT Display unterstützung haben will, kann das untere File verwenden.
(Optional Signatur/Unterschrift vergleichen)
|
1 2 3 4 5 6 |
# Kali Key laden gpg --keyserver hkp://keys.gnupg.net --recv-key 7D8D0BF6 # Key ausgeben gpg --list-keys --with-fingerprint 7D8D0BF6 # Signaturen vergleichen gpg --verify SHA1SUMS.gpg SHA1SUMS |
(Optional) Checksumme des geladenen Archive vergleichen. Auf der Kali Homepage ist die SHA1Sum angegeben „Raspberry Pi: Wie wird die neue Kali Linux 2.0 Sana Version installiert und mit SSH in Betrieb genommen?“ weiterlesen
Hier am Beispiel von einem Arzt und einer Adresse. Wenn nun von der Adresse auf den Arzt und umgekehrt navigiert werden soll, kann die bidirektionale Verbindung im Feld EOpposite wie folgt eingetragen werden (rechts auf den Pfeil der Combobox klicken):

„Ecore & EMF: Wie kann eine bidirektional Verbindung in Eclipse zwischen zwei Klassen im ecore-Model modelliert werden?“ weiterlesen
Wie kann in einer Java Klasse ein Attribut für die Hibernate-Suche wie folgt annotiert werden?
|
1 2 |
@Field(index = Index.YES, analyze = Analyze.YES, store = Store.NO) private String klinik_name = null; |
Dazu folgende EAnnotation als Value mit den voll qualifizierter Namen einfügen, damit auch die imports aufgelöst werden können
|
1 |
@org.hibernate.search.annotations.Field(index=org.hibernate.search.annotations.Index.YES, analyze=org.hibernate.search.annotations.Analyze.YES, store=org.hibernate.search.annotations.Store.NO) |
Und für die Maven pom.xml, den folgenden Eintrag, damit die Hibernate Klassen auch gefunden werden können:
|
1 2 3 4 5 6 |
<!-- Für die Hibernate Volltext-Suche --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-search-orm</artifactId> <version>5.3.0.Final</version> </dependency> |
Mit den Ecore Tools können gut Modelle per UML modelliert und das Java-Modell generiert werden. Die Ecore Tools können leicht über den Menüpunkt: Hilfe -> Eclipse Marketplaces … installiert werden:
Nach einem Neustart können die *.aird (ecore) Dateien über das Menü: Windows-Show View … Model Explorer geöffnet werden:
„Eclipse EcoreTools: Wie können *.aird (*.ecore) Modelle per UML unter Eclipse Mars bearbeitet werden?“ weiterlesen
Weil es heute so heiß ist, wollt ich die Temperaturen die auf der Terrasse gemessen und drahtlos zum Fhem Server gesendt werden, mal hier veröffentlichen.
Wie können die Werte an ThingSpeak gesendet werden. Einfach in der fhem.cfg diesen Eintrag machen: „Raspberry Pi: Temperaturen und Luftfeuchtigkeit aus Langenhagen, aktuell 42 Grad Celsius – alle 5 Minuten neue Werte direkt von der Terrasse“ weiterlesen
Nach der Installation von Eclipse Mars, können meine TOP 4 Plugins auch leicht in 20 Minuten installiert werden:

„Eclipse Mars TOP 4 Plugins als BPMN 2.0“ weiterlesen
Heute ist die Mars 4.5 Version von Eclipse veröffentlich worden. Was gibt es neues?
Ok, dann mal auf die Mars Download Seite und das Programm laden. Ich war übrigens der 6,666 Download!
Für den Mac geht es jetzt super einfach.
Installation
Download des
eclipse-jee-mars-R-macosx-cocoa-x86_64.tar.gz oder andere gewünschte Version.
Dann einen doppelklick auf die Datei zum entpacken. Nun noch die Eclipse.app in das Programme Verzeichnis verschieben. Dann das Programm starten durch einen doppelklick auf Eclipse.app. Das geht gefühlt schneller als vorher!
Mehr ist für die installation auf einem Mac nun nicht mehr nötig. Hier die IDE, mit den Versions Dialog:

Mars, das war’s. That’s it. Happy coding!
Habe nun mal in den Fhem Hausautomatisations-Server, der auf einen Raspberry Pi läuft, eine Telefon-Anrufliste eingebaut. So können alle Anrufe übersichtlich angezeigt werden. Mit dem Modul FB_CALLLIST geht das einfach. Es muss nur vorher das Modul FB_CALLMONITOR eingerichtet werden. Also diese Konfiguration in die fhem.cfg und restart:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# Fritzbox Anrufmonitor # define Fritz_Box_Monitor FB_CALLMONITOR <hier IP Adresse vom Pi eintragen> attr Fritz_Box_Monitor group Anrufe # die Vorwahl angeben attr Fritz_Box_Monitor local-area-code 0511 attr Fritz_Box_Monitor reverse-search internal attr Fritz_Box_Monitor reverse-search-phonebook-file /home/pi/fhem/FHEM/buch.xml attr Fritz_Box_Monitor room Anrufe attr Fritz_Box_Monitor unique-call-ids 1 # Log schreiben define FileLog_Friz_Box_Monitor FileLog ./log/anruf-monitor-%Y-%m.log Fritz_Box_Monitor attr FileLog_Friz_Box_Monitor room Anrufe # Grafik anzeigen define SVG_FileLog_Friz_Box_Monitor_1 SVG FileLog_Friz_Box_Monitor:SVG_FileLog_Friz_Box_Monitor_1:CURRENT attr SVG_FileLog_Friz_Box_Monitor_1 group Anrufe attr SVG_FileLog_Friz_Box_Monitor_1 room Anrufe # Anrufliste # define Anrufliste FB_CALLLIST Fritz_Box_Monitor attr Anrufliste group Anrufe attr Anrufliste language de attr Anrufliste number-of-calls 20 attr Anrufliste room Anrufe |
Nun bekommen wir in dem Raum Anrufe z.B. diese Liste:
Wenn es nicht läuft, evl. noch den Callmonitor über das Telefon aktivieren mit:
|
1 2 |
#96*5* - Callmonitor aktivieren #96*4* - Callmonitor deaktivieren |
Die Plott Datei für die Grafik sieht so aus:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# (c) 2015 Thomas Wenzlaff # Eingehende Anrufe # 2014-08-19_19:50:04 Fritz_Box_Monitor call_id: 4267d409e14e47608c059e3f6dd07777 # 2014-08-20_10:27:14 Fritz_Box_Monitor event: ring # 2014-08-20_10:27:14 Fritz_Box_Monitor direction: incoming set terminal png transparent size <SIZE> crop set output '<OUT>.png' set xdata time set timefmt "%Y-%m-%d_%H:%M:%S" set xlabel " " set title '<TL>' set ylabel "" set y2label "" set ytics ("" 0, "Anruf" 0.8) set y2tics ("" 0, "Anruf" 0.8) set yrange [-0.1:1.1] set y2range [-0.1:1.1] #FileLog 4:Fritz_Box_Monitor.*:0:$fld[3]=~"incoming"?0.8:0 plot "< awk '/Fritz_Box_Monitor/ {print $1, $3~/incoming/? 0.8 : 0; }' <IN>"\ using 1:2 title 'Eingehende Anrufe' ls l1fill lw 2 with lines |
Seit gestern gibt es eine neue Version von Chao Calmer. Hier mal der orginal Hinweis zu dem RC2:
„This is the second release candidate of the upcoming stable version Chaos Calmer 15.05. Keep in mind that the RC version is not the final release yet, it is available here for testing and refinement purposes.“ Ok, das will ich mal testen. Ob es auf einem TP-WR703N läuft? JA! Soll auch schon den Treiber für Raspberry Pi 2 enthalten.
Wie kann die aktuelle Firmware Chaos Calmer 15.05 RC2 von OpenWrt auf einem TP-WR703N installiert werden? Auf Raspberry Pi 2 kommt dann später.
Wie hier schon mal beschrieben. Also zuerst die Firmware runterladen und über Luci installieren. Zuerst ein backup anlegen.
Dann klick auf Durchsuchen, und die …squashfs-sysupgrade.bin Datei hochladen mit klick auf Flash image:
Klick auf Proceed, wenn Checksumme ok:
Nach einem reboot steht die neue Chaos Calmer Version bereit:
Manchmal benötigt man Icons im Apple Format ICNS. Das is ein Format für Icons mit 16 × 16, 32 × 32, 48 × 48, 128 × 128, 256 × 256, 512 × 512, und 1024 × 1024 Pixels. Wie können die aus PNG Dateien erstellt werden?
Zuerst den Icon Composer kostenlos von der Apple Seite laden und installieren.

Dann mit Gimp oder so ein PNG Bild mit 512×512 Pixel und Transparenten Hintergrund erzeugen und speichern.

Hier z.B. mein TW Logo:

Das gezeichnete Bild (PNG) nun per Drag and Drop in den Icon Composer ziehen, und zwar in alle Fenster.

Unter View – Preview in Dock kann es im Dock vorab schon bestaunt werden:

Nun noch das ganze speichern unter File – Save as und da *.icns auswählen. Schon hat man ein Icon das für verschiedene Auflösungen skaliert.
Will man Java Programme ausliefern, benötigt man auf einem Apple ein dmg Archive. Das kann wie folgt erstellt werden.
In der pom.xml folgendes Plugin einfügen:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<plugin> <groupId>sh.tak.appbundler</groupId> <artifactId>appbundle-maven-plugin</artifactId> <version>1.0.2</version> <configuration> <mainClass>de.wenzlaff.xmltransform.StartGui</mainClass> <iconFile>${basedir}/src/main/resources/tw.icns</iconFile> </configuration> <executions> <execution> <phase>package</phase> <goals> <goal>bundle</goal> </goals> </execution> </executions> </plugin> |
Die Main Klasse mit der Klasse ersetzen, die gestartet werden soll. Auch der Pfad zum Icon anpassen. Evl. noch eine eigene plist setzen mit:
|
1 |
<dictionaryFile>YourCustomInfo.plist</dictionaryFile> |
Dann das Maven Goal mvn package appbundle:bundle ausführen

und in das target Verzeichnis mit einer Konsole gehen und folgenden Befehl mit hdiutil ausführen:
|
1 2 |
# hdiutil create -srcfolder path/to/archive path/to/YourApplication.dmg z.B.: hdiutil create -srcfolder twcsvtocsv.app/ TW.dmg |
Schon wird das TW.dmg Archive im target Verzeichnis erzeugt. Wer das auch noch als Maven Task automatisieren möchte, trägt noch folgendes ein:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
<plugin> <artifactId>exec-maven-plugin</artifactId> <groupId>org.codehaus.mojo</groupId> <executions> <execution> <id>dmg-distro</id> <phase>package</phase> <goals> <goal>exec</goal> </goals> <configuration> <executable>/usr/bin/hdiutil</executable> <arguments> <argument>create</argument> <argument>-srcfolder</argument> <argument>target/${project.artifactId}-${project.version}</argument> <argument>-format</argument> <argument>UDZO</argument> <argument>-volname</argument> <argument>${project.artifactId}-${project.version}</argument> <argument>target/${project.artifactId}-${project.version}.dmg</argument> </arguments> </configuration> </execution> </executions> </plugin> |
Als Alternative könnte man auch das osxappbundle-maven-plugin verwenden. Das hat Abhängigkeiten zu Apple’s Java launcher, und ist nicht für Java Version 7 und größer.
Aber wer will, kann dann das als Alternative eintragen:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>osxappbundle-maven-plugin</artifactId> <version>1.0-alpha-2</version> <configuration> <mainClass>de.wenzlaff.xmltransform.StartGui</mainClass> <iconFile>${basedir}/src/main/resources/tw.icns</iconFile> </configuration> <executions> <execution> <goals> <goal>bundle</goal> </goals> </execution> </executions> </plugin> |
Den Raspberry Pi kann man auch als Linkchecker für Webseiten lokal und im Web verwenden. Der Linkchecker kann leicht installiert werden:
|
1 2 3 4 5 |
sudo apt-get update sudo apt-get upgrade sudo apt-get install linkchecker # erster Test der Domain mit allen URLs rekrusiv, das kann etwas dauern linkchecker http://www.wenzlaff.info |
Es wird die Version 7.9 installiert, wer die aktuelle Version 9.3 haben will, muss sie von Github holen und wie in der /doc/install.txt angegeben installieren. Das ist dann aber mehr Aufwand.
Eine Anleitung ist hier zu finden oder einfach:
|
1 |
linkchecker --help |
Wichtig ist auch die Aufruftiefe der Links, sie kann mit -r z.B. -r1 limitiert werden.
Jetzt wollen wir mal einen Report im HTML Format erzeugen (es geht auch text, SQL, CSV, XML …):
|
1 |
linkchecker -ohtml -Fhtml http://www.wenzlaff.info/ > wenzlaff.info.html |
Die Datei wenzlaff.info.html liegt nun im Aufrufverzeichnis, hier ein Auszug:

