Wie kann ein BE-Model (ecore) mit Eclipse Modeling Framework (EMF) unter Eclipse Luna 4.4.2 und Texo generiert werden?

Für die meisten Java Projekte braucht man ein BE-Model, das am besten automatisch generiert wird. Wie kann das innerhalb von Eclipse Luna mit dem EMF durchgeführt werden?

Wir wollen diese Modell Stuktur erzeugen. Eine Mindmap hat 0-* Zweige:

BE

Zuerst Texo und EMF installieren.

Dann ein neues EMF Projekt anlegen über das Menü: File - New - Other:
EMF

Nun erstellen wir ein ecore Model über das Menü: File - New - Other - Eclipse Modeling Framework-Ecore Model:

model

So sieht das Projekt nun aus, mit der mindmap.ecore Model Datei:
eclipse ecor

Nun erzeugen wir zwei Klassen mit ein paar Attribute über New Child - New EClass über das Kontextmenü des Models (2.Zeile): „Wie kann ein BE-Model (ecore) mit Eclipse Modeling Framework (EMF) unter Eclipse Luna 4.4.2 und Texo generiert werden?“ weiterlesen

Wie kann eine MySQL Datenbank auf einem Mac OS X 10.10.3 (Yosemite) (Windows …) installiert werden, um mit Java von Eclipse (Java EE Luna 4.4.2) aus darauf zuzugreifen?

Wer eine MySQL Datenbank auf seinen Rechner installieren will, muss sich die Packages die zu installieren sind, auf der MySQL Homepage zusammen suchen.

Folgende drei Komponenten müssen für Mac OS X geladen und installiert werden (für Windows analog):

1. MySQL Community Server 5.6.24 von https://dev.mysql.com/downloads/mysql/

Für den Mac OS X 10.9 (x86, 64-bit), DMG Archive 5.6.24 167.6M mysql-5.6.24-osx10.9-x86_64.dmg. Installation.

2. MySQL Workbench 6.3.3
von http://dev.mysql.com/downloads/workbench/

mysql-workbench-community-6.3.3-osx-x86_64.dmg. Installation.

Die Workbench kann dann aus dem Programm Verzeichnis über das folgende Programm-Icon gestartet werden:
workbench

3. Connector/J 5.0.8 für Java für alle Betriebsysteme von https://dev.mysql.com/downloads/connector/j/5.0.html

Download mysql-connector-java-5.0.8.zip und z.B. in das Verzeichnis
/usr/local/mysql-5.6.24-osx10.8-x86_64/mysql-connector-java-5.0.8.jar kopieren.

Wenn alles installiert wurde, kann der DB Server über die Systemsteuerung mit dem MySQL Icon unten rechts gestartet werden:
mysql „Wie kann eine MySQL Datenbank auf einem Mac OS X 10.10.3 (Yosemite) (Windows …) installiert werden, um mit Java von Eclipse (Java EE Luna 4.4.2) aus darauf zuzugreifen?“ weiterlesen

Raspberry Pi: SNMP (Simple Network Management Protocol) installation in einer Stunde und Abfrage der CPU Temperatur per SNMP

Wie kann net-snmp auf dem Raspberry Pi installiert werden? Da es noch kein fertiges Package für den Raspberry Pi (Kali) gibt, ist selbst compilieren angesagt.

Wenn diese Bestätigung kommt:
snmp
Dann weiter mit compilieren und installieren. Das kann eine Stunde dauern … „Raspberry Pi: SNMP (Simple Network Management Protocol) installation in einer Stunde und Abfrage der CPU Temperatur per SNMP“ weiterlesen

Arduino: Neue Arduino IDE Version 1.6.2 veröffentlicht

Die neue Arduino IDE steht nun seit ein paar Tagen kostenlos zum Download für Mac OS X, Linux und Windows bereit.
Logo

Hier ein paar Highlights:

So sieht die IDE nach dem Start aus:

Arduino IDE 1.6.2
Arduino IDE 1.6.2

Also, dann mal los.

Raspberry Pi: Wie kann der Kismet-Server sauber rauf und runter gefahren werden zum WarWalking (WarDriving)?

Wenn ein Kismet-Server auf dem Raspberry Pi läuft, muss der Server sauber rauf und runter gefahren werden, sonst werden die *NETXML Dateien wegen einem fehlenden sync nicht vollständig auf die SD-Karte geschrieben. Das Problem ist aber, wie kann der Raspberry Pi eingerichtet werden, so das der gpsd und Kismet automatisch hoch und auch sauber wieder runter fahren, ohne das ein Bildschirm bzw. Konsole angeschlossen wird? Und wie kann vom GPS Empfänger die Systemzeit gesetzt werden, da der Raspberry Pi ja keine Systemuhr hat und es beim WarWalking kein Internet mit NTP gibt ?

Die Lösung des Problems wird in dieser Anleitung beschrieben.

Wir brauchen ein Script zum automatischen hochfahren und ein Script das auf einen Tastendruck wartet. „Raspberry Pi: Wie kann der Kismet-Server sauber rauf und runter gefahren werden zum WarWalking (WarDriving)?“ weiterlesen

GIT: TOP 10

Hier die immer wieder benötigten TOP 10

Welche Befehle nutzt Ihr noch häufig?

Wie kann der Plug-in Spy für UI Teile oder der Menü Syp auf dem Mac (Win) von Eclipse aufgerufen werden?

Wenn man in Eclipse sehen will, welche UI Komponenten gerade selektiert bzw. aktiv sind, kann der Plug-in Spy verwendet werden. Mit dem kann auch mit nur einen klick auf den Quellcode des jeweiligen aktiven Plug-ins zugegriffen werden. Wie kann der aber auf einem Mac aufgerufen werden (Vier Tasten gleichzeitig): fn+shift+alt+F1 (auf Windows Alt+Shift+F1)
Es erscheint dann solch ein PopUp-Dialog:
Eclipse Spy
und noch ein Beispiel:
Popup Spy

Analog dazu gibt es auch einen Spy für die Menüs, der wird mit fn+shift+alt+F2 (auf Windows Alt+Shift+F2) aufgerufen und dann ein Menüpunkt auswählen, es kommt dann z.B. dieser Dialog:
Menü Spy

Eclipse PlugIn: Wie kann Text im Konsolen Fenster ausgegeben werden?

Manchmal möchte man einfach nur Text in der Konsole ausgeben. Früher, d.h. vor Eclipse 3.0 musste man dazu eine eigene View erzeugen. Das braucht man nun nicht mehr, man kann die vorhandenen generic Log Konsole verwenden.

Aufrufen geht dann einfach so:

Hier die Methode, die die Konsole liefert bzw. erzeugt:

Wir erhalten dann folgenden Ausgabe:

Log Konsole von Eclipse
Log Konsole von Eclipse

Um das zu erreichen, muss noch eine neue Abhängigkeit ( org.eclipse.ui.console) (Dependencies) ergänzt werden:

Abhängigkeit Eclipse View
Was zu folgenden Eintrag im Manifest führt:
Manifest

Eclipse PlugIn: Wie kann ein Logeintrag in der Error Log View erstellt werden?

Bei der PlugIn Programmierung unter Eclipse Luna kann leicht auf die Log-View zugegriffen werden. Hier mal ein kleines Beispiel mit den verschiedenen Loglevel:

So sieht es dann aus:

Eclipse Log Eintrag erstellen
Eclipse Log Eintrag erstellen

OpenWrt Barrier Breaker 14.07: Wie kann Dump1090 auf einem TP-WR703N Router unter OpenWrt zum Airplanespotting installiert werden?

Hatte noch einen TP-WR703N rumliegen. Wenn dort die aktuelle Version von OpenWrt (14.07) installiert ist, geht es mit LuCI sehr schnell.

Auf die Seite System – Software gehen. Im Filter dump1090 eingeben und auf Find package klicken. Dann unten mit klick auf Install das fertige Package installieren.

Luci OpenWrt „OpenWrt Barrier Breaker 14.07: Wie kann Dump1090 auf einem TP-WR703N Router unter OpenWrt zum Airplanespotting installiert werden?“ weiterlesen

Arduino: Wie können RFID Tags eingelesen und drahtlos empfangen werden?

Wie hier schon beschrieben, können mit einem Arduino und eine RFID-Reader leicht RFID-Tags eingelesen werden.

In dieser Anleitung, werden nun die eingelesenen RFID Daten drahtlos versendet und empfangen. Dazu wird ein zweiter Arduino und ein Sender und Empfänger ( < 2 Euro) verwendet. Hier der schematische Aufbau: Schema RFID „Arduino: Wie können RFID Tags eingelesen und drahtlos empfangen werden?“ weiterlesen

Arduino: Wie können RFID Tags eingelesen werden?

Wie können RFID-Tags eingelesen werden?

Das geht ganz einfach mit einem Arduino Nano und ein 125 kHz EM4100 RFID card reader module (RDM630 UART) das keine 5 Euro inkl. Versand kostet.

Die Belegung des RFID-Readers:
RDM630
Die PINs:

Spec RDM630: Baud Rate: 9600bps,N,8,1, Frequenze: 125 kHz, DC 5V (+-5%), <50 mA, Empfangsbereich: 2 bis 5 cm, Checksum card 10byte Data mit XOR So sieht der Aufbau aus: EM4100

Es sind nur 3 Verbindungen zwischen dem Arduino und dem RDM630 nötig und zwar:

Dann folgende Software RFIDReader.ino auf den Arduino laden, die den Vorteil hat, das die serielle Konsole frei bleibt.

Compile mit der Arduino 1.5.8 IDE.

Arduino IDE
Arduino IDE

Einstellung in der IDE:
Board Arduino Nano, Prozessor Arduino ATMega328, Programmer USBtinyISP
Serielle Konsole auf 57000 Baud stellen
und einen RFID-Tag an die Antenne halten:

Serielle Konsole Arduino NANO RFIDReader
Serielle Konsole Arduino NANO RFIDReader

Es wird eine Reichweite von ca. 4 cm erreicht. Wenn die Antenne unter der Schreibtischplatte montiert wird, kann der RFID-Tag sicher gelesen werden, wenn der Tag oben drauf liegt (Anwesendheitskennung).

Habt ihr eine Idee, wie die Reichweite vergrößert werden kann?
Oder einen guten Anwendungsfall?

Wie kann mit der neuen Java Zeit API 1.8 ein Zeitstempel (2014-01-31_15:12:00) erzeugt werden?

Java 1.8 gibt es ja nun schon einige Zeit. Warum nicht die neue Time API verwenden?

Vorteil, die meisten Time und Date Klassen sind immutable und thread-safe. Z.B die LocalDateTime, LocalDate und DateTimeFormatter.

Hier mal ein Beispiel, um einen Zeitstempel in der Form 2014-01-31_15:12:00 zu erzeugen:

Raspberry Pi: Einfaches steuern der Ports, Kamera, System usw. über Browser mit BerryIO V. 1.12.0

Einfaches steuern der IO Ports, Kamera, LCD, SPI, Network, Systemstatus usw. des rPi geht mit BerryIO, das in ein paar Minuten installiert ist.

Zuerst einmal ein kleiner Überblick als Mindmap:
berryio mindmap

Und nun die Installation:

Ausabe der Hilfe:

Es gibt auch eine Kommandozeilen API. Cool mit der Api, man kann auch alles über das Terminal abfragen und evl. scripten. Da kommt mir doch gleich eine Idee zum Fhem Server.

Aber die Gui ist auch schön.

Aufruf im Browser: http://pi-adresse dann eingabe des Users: pi und Passwort.
Schon erscheint der Dialog:
berryio

Über das Menü können leicht die anderen Reiter angezeigt werden. Hier mal eine kleine Auswahl: „Raspberry Pi: Einfaches steuern der Ports, Kamera, System usw. über Browser mit BerryIO V. 1.12.0“ weiterlesen

DUMP1090 Client TWFlug 0.1.0 für Raspberry Pi, Mac, Windows und Linux veröffentlicht

Habe soeben die 1. Version von dem DUMP1090 Client TWFlug kostenlos TWFlug Icon
veröffentlicht.

TWFlug liest die Daten von einem DUMP1090 Server und zeigt sie (optional) in einem Tacho an oder/und schreibt die Daten in eine Logdatei für die Auswertung mit z.B. Fhem. Es kann die Logdatei auch per sFTP an einen entfernten Rechner kopieren.
Das TWFlug Programm ist ein Java Programm und läuft somit auf allen Betriebssystem. Es können mit Fhem dann solche schönen Grafiken in Echtzeit angezeigt werden:

Fhem Flugdaten in Langenhagen zu Weihnachten
Fhem Flugdaten in Langenhagen zu Weihnachten

Installation:

Download der twflug-0.1.0.zip.

Dann das Archive auspacken.

Für das Starten gibt es zwei Möglichkeiten mit oder ohne GUI.

Ohne GUI mit Eingabe in der Konsole in dem TWFlug Verzeichnis mit:

also z.B. java -jar twflug.jar -n --ip 192.198.1.2

oder mit GUI

also z.B. java -jar twflug.jar --ip 192.198.1.2

Dann startet nach einigen Sekunden, die folgenden Anzeige von TWFlug:

TWFlug Tacho
TWFlug Tacho

Weiter Infos zu den Parametern erhält man durch Eingabe von

Weitere Anregungen, Bugs, Fix, Likes, Lob und Dank gerne als Kommentar hier auf der Seite.

Viel Spaß beim Planecounting.

Raspberry Pi: Wie können Flugzeugdaten in Fhem in real-time (Echtzeit) angezeigt werden?

Da bei mir ein Fhem Home-Server läuft, hatte ich die Idee, dort doch gleich die Flugdaten die von den Flugzeugtranspondern ausgesendet werden schön graphisch in Echtzeit anzuzeigen.

Also wie kann eine Grafik in Fhem erstellt werden, die die aktuelle Anzahl der gerade empfangenen Flugzeuge anzeigt.

Hier das Ergebniss, wo man deutlich sehen kann, das heute bis ca. 6 Uhr nur ca. 10 Flugzeuge flogen. Dann steigt der Flugverkehr rapide an:
Fhem Flugdaten

Wie kann nun so eine Grafik, die sich automatisch aktualisiert erstellt werden.

Zuerst einmal die Architektur als BPMN 2.0 Diagramm:

Architektur TWFlug BPMN 2.0
Architektur TWFlug BPMN 2.0

Es werden zwei Raspberry Pi benötigt. Auf dem einen läuft der DUMP1090 Server mit der TWFlug Anwendung unter Java 1.8. Die TWFlug Anwendung läuft ohne Gui, und schreibt alle 5 Minuten die Anzahl der empfangenen Flugzeuge in eine Datei. Diese Datei wird dann jede halbe Stunde per sFTP an den anderen Raspberry Pi gesendet und von Fhem eingelesen und als Grafik ausgegeben.

TWFlug kann auch mit Gui auf einen Rechner gestartet werden und gibt dann als Tacho die Anzahl der Flugzeuge aus.

TWFlug Tacho
TWFlug Tacho

Das nötige GPlot Script:

TWFlug schreibt die Daten in eine Logdatei mit folgenden Format, z.B.:

TWFlug kennt bisher die folgenden Parameter:

Welche fehlen noch?

Hinweise zu TWFlug TWFlug Iconund DUMP1090 können auf diesem Blog gefunden werden.

JUnit 4.12 erschienen

Nach über 2 Jahren ist nun eine neue Version von JUnit veröffentlicht worden. Die Releasenotes sind auf Github zu finden. In folgenden Bereichen gab es Ergänzungen:

Ok, dann mal gleich das aktuelle Maven Projekt TWFlug auf die neue Version 4.12 angepasst:

Und siehe da, alles GRÜN:
Bildschirmfoto 2014-12-14 um 16.47.52

Mehr über JUnit oder drei Gründe warum man keine JUnit-Tests schreiben sollte.

Wie kann der Terminalmultiplexer Screen auf einem Raspberry Pi installiert werden?

Screen gibt es nicht nur für den Mac, wie hier schon mal beschrieben. Es ist hilfreich um eine Sitzung von mehreren Personen zugleich zu benutzen oder um Progamme parallel zu nutzen.

Installiert ist es schnell mit:

Folgende Abhängigkeiten werden installiert, wie diese Mindmap zeigt:screen

Ein

gibt die Syntax und Verwendung aus:

Oder aber die Tastaturbefehle können mit ctrl+A + ? wie folgt ausgegeben werden:
Bildschirmfoto 2014-11-01 um 12.01.24Bildschirmfoto 2014-11-01 um 12.01.47

Beispiel: Wir starten in einer Konsole einen Prozess der länger dauert, hier mal htop um den Speicher und CPU Verbrauch anzuzeigen.

Einige weitere Beispiele für den Einsatz findet man hier.