Allgemein

Magie mit der git bash

Git ist eine freie Software zur verteilten Versionsverwaltung von Dateien, die mittlerweile jeder kennen sollte, daher verliere ich hier nicht viele Worte darüber. Wer die wichtigsten git Befehle wie “git add”, “git commit” und “git push” nicht kennt ist hier total falsch. Sorry, aber Du solltest erst mal hier anfangen.

Natürlich kann man git auch ohne die git bash verwenden. Jede IDE, die etwas auf sich hält hat eine Git Integration und darüber hinaus gibt es z.B. weitere Tools, wie TortoiseGit, SourceTree, GitKraken, Tower, etc.
Alle diese Git-Clients haben ihre Daseinsberechtigung und sind sehr gut geeignet, das Tippen in der Konsole durch Mausklicks auf Klickibunti-Oberflächen mehr oder weniger gut zu ersetzen.… Weiterlesen

next.js mit Apache und Let's Encrypt https Zertifikat einrichten

Durch einen Podcast (Revision 403: Meta-Frameworks | Working Draft) bin ich auf ein JavaScript Framework gestoßen, dass mein Interesse geweckt hat. es heißt next.js und ermöglicht serverseitig gerenderte React-Anwendungen bei der jede Webseite als separate Funktion erstellt wird.

Eine Google Sucht bringt z.B. folgende Ergebnisse ans Tageslicht:

Weiterlesen
Eport-E20 und Arduino

Eport-E20 ist eine unabhängige, kompakte, integrierte Lösung, die eine einfache Verbindung zwischen der serielle Schnittstelle und einem Ethernet-LAN Kabel bietet. So können z.B. Mikrocontroller wie der Arduino mit einem Eport-E20 ausgestattet werden und einfach über das Internet aufgerufen und gesteuert werden.

Für so eine kleine Kiste hat der Eport-E20 eine sehr beeindruckende Spezifikation.

  • MIPS MCU with 2MB Flash and 128KB RAM
  • Use FreeRTOS Operation System
  • Support TCP/IP/Telnet/Modbus TCP Protocol
  • Support Serial To 10/100M Ethernet Conversion, Serial Speed Upto 921600 bps
  • Support 10/100M Ethernet Auto-Negotiation
  • Support Easy Configuration Through a Web Interface
  • Support Security Protocol Such As AES/DES3
  • Support  Web OTA Wirelss Upgrade  
  • Single +3.3V Power Supply
  • Size: 50 x 23 x 11 mm (L x W x H) 
  • CE/RoHs Certificated

Alle weiteren Details zur Spezifikation findet man unter http://www.hi-flying.com/eport-e20

Laut Hersteller ist der Eport-E20 für folgende Anwendungen geeignet:

  • Remote equipment monitoring
  • Asset tracking and telemetry
  • Security Application
  • Industrial sensors and controls
  • Medical devices
  • ATM machines
  • Data collection devices
  • Universal Power Supply (UPS) management units
  • Telecommunications equipment
  • Data display devices
  • Handheld instruments
  • Modems
  • Time/attendance clocks and terminals

Der Eport-E20 ist bei Aliexpress.com für unter 7€ zu haben.… Weiterlesen

Dem GoAccess Log Analyzer sinnvolle Daten entlocken

Mit dem GoAccess Analyse Tool kann man schnell und einfach Webserver-Logfiles z.B. vom Apache Webserver analysieren und ein übersichtliches Dashboard mit den wichtigsten Daten erzeugen, ohne ein Tracking Pixel oder Third-Party JavaScript Code auf der Webseite einzubinden.

Mit GoAccess kann man aus dem Apache-Webserver Logs eine statische HTML Datei erzeugen, die dann wie gewohnt im Browser aufgerufen werde kann um die KPI einer Webseite zu überprüfen. Dabei werden alle gängigen Log-Datei Formate wie z.B. Apache, Nginx und viele weitere unterstützt.

Die Installation von GoAccess auf einem Linux PC oder Server ist denkbar einfach und es werden alle gängigen Linux-Distributionen wie z.B.… Weiterlesen

Wasserwaage mit dem MPU6886 des M5StickC

Nach meinem M5StickC Umbau habe ich mir noch einen weiteren M5StickC bestellt und erhalten. Diese mal wollte ich mich mal intensiver mit dem eingebauten MPU6886 Chip beschäftigen.

Bei dem MPU6886 Chip handelt es sich um einen 6-Achsen-Sensor. Dabei teilen sich die 6-Achsen auf zu einem 3-Achsen Beschleunigungssensor und einem 3-Achsen Gyro Sensor.

Das Gyroskop verfügt über eine programmierbare FSR ( Full-Scale Range = Vollaussteuerung) von ±250 dps, ±500 dps, ±1000 dps oder ±2000 dps. Laut Spezifikation verfügt der Gyro-Sensor des MPU6886 über eine Auflösung von 16 Bit mit einem Empfindlichkeit von ±1% und einem Rauschen von ±4 mdps/√Hz.

Der 3-Achsen Beschleunigungssensor verfügt über eine programmierbare FSR von ±2g, ±4g, ±8g oder ±16g mit einem Rauchen von 100 µg/√Hz.… Weiterlesen

Bluetooth-Entfernungsabschätzung

Die Reichweite der Bluetooth Kommunikation hat einen verhältnismäßig schlechten Ruf. Kein Wunder, denn fast jeder, der Bluetooth nutzt, hat schon mal erlebt, wie schnell die Verbindung abreißen kann, obwohl laut Spezifikation eine Reichweite von max. 100 Meter (Bluetooth V2.1 und Bluetooth 4.0) möglich ist. Leider wird diese Reichweite nur unter unter idealen Voraussetzungen erreicht. Unter realen Bedingungen kommt man mit den meisten Consumer-Geräten selten über 20-30 Meter. Mit Bluetooth 5.0 soll das nun aber besser werden. Laut Spezifikation sind hier Reichweiten bis zu 400 Meter möglich.

Die Reichweite einer Bluetooth Verbindung wird durch viele unterschiedliche Faktoren beeinflusst. Unter anderem beeinflussen z.B.… Weiterlesen

M5StickC Umbau

Seit einigen Wochen habe ich einen M5StickC im Einsatz, dabei ist mir aufgefallen, dass der Energieverbrauch auf dauer doch recht hoch ist. Selbst wenn es ausgeschaltet ist, verbraucht es noch Energie und ich musste meinen M5StickC bis gestern alle 2-3 Tage laden, auch wenn er nur wenige Minuten pro Tag eingeschaltet ist.

Zudem hat der M5StickC mit seinem orangen Gehäuse und den vielen technischen Details auf der Rückseite einen schlechten WAF – also ein weiterer Grund, sich mal intensiver damit zu beschäftigen.

Ich habe also beschlossen, das Gehäuse des M5StickC zu öffnen und ein alternatives Gehäuse zu designen. Leider hat sich das Original-Gehäuse gewehrt und ich musste mit einem Knipex etwas nachhelfen.… Weiterlesen

Schnellere Webseite dank der robots.txt

Klingt komisch, ist aber so. Gerade wenn eine Webseite von vielen Bots besucht wird und die Bot-Requests einen wesentlichen Anteil an der Server-Load ausmachen, kann eine gute robots.txt den Server entlasten und die echten Besucher bekommen die Seite merklich schneller zu sehen.

Wichtig ist natürlich, dass dabei die Bots der “echten Suchmaschinen” wie Google, Bing, MSN, Yandex, etc. nicht ausgeschlossen werden da sonst die gewonnene Performance nicht mehr benötigt wird :-).

Bei meiner Suche nach diesne Bots in den Logfiles hat mir folgender Kleine Befehl geholfen:

grep robots.txt *.access.log | awk -F "\"-\"" '{ print $2 }' | sort -u

Damit liste ich alle Bot-Namen auf, die meine robots.txt aufgerufen haben.… Weiterlesen

Tagebuch eines Make Autors

Eines schönen Tages wacht man auf und ist Autor für das Make Magazin – das ist zwar ein schöner Gedanke, hat aber nichts mit der Realität zu tun. Daher habe ich mich entschieden, hier einen Artikel zu veröffentlichen, der den Weg von der Idee bis zum gedruckten Artikel umfassen wird.

Ich fange heute an zu schreiben, da ich gestern (30. März 2019) die Autorenvereinbarungen von der Maker Media GmbH erhalten habe und die Arbeit an dem Artikel nun etwas Fahrt aufnehmen wird. Aber ich fange am besten ganz am Anfang an.

Zuallererst muss ich gestehen, dass dies nicht mein erster Artikel für eine Computerzeitschrift ist.… Weiterlesen

Das unsigned byte Problem in Java

Seit letztem Wochenende habe ich ein nettes kleines Spielzeug zu Hause, mit dem ich gerade ein wenig herumexperimentiere. Es handelt sich um ein nRF51 Sensor Tag. Diese 3 cm. kleine Platine enthält einen BLE Chip mit nRF51822QFAA (Cortex-M0, 16kB RAM, 256kb Flash, SPI, I2C, UART, etc.), zwei Taster, RGB LED, MPU6050 3-Achsen-Gyroskop + 3-Achsen-Beschleunigungssensor, AP3216C Licht Sensor, BMP180 Luftdruck und Temperatur Sensor. Der Stromverbrauch ist extrem niedrig und daher reicht eine CR2023 Knopfzelle aus um die Elektronik mit Strom zu versorgen.

N51822 Bluetooth 4 0 BLE SOC Temperatur Atmosphärendruck Beschleunigung Sensor Modul Gyroskop Licht Sensor MPU6050 AP3216 in N51822 Bluetooth 4 0 BLE SOC Temperatur Atmosphärendruck Beschleunigung Sensor Modul Gyro

Die Elektronik habe ich durch Zufall im Internet entdeckt und für unter 10€ direkt in China bei aliexpress.com bestellt.… Weiterlesen