Miese Hobbys unterbinden: Rauchen

Vorab: hier geht es um meinen Versuch mit dem Rauchen aufzuhören und nicht um Open Source, Linux oder sonstigen Krempel den ich normalerweise hier niederschreibe. Wenn das nicht so spannend ist scroll einfach weiter in Deinem Feed-Reader / Open-Source-Blog-Netzwerk oder schau Dir ein paar Kätzchen an :).

Das wohl mit Abstand dämlichste Hobby das ich mir jemals zugelegt habe ist Rauchen. Mehr als mein halbes Leben habe ich damit zugebracht bis ich vor 15 Tagen auf eine elektronische Zigarette umgestiegen bin. Ich konsumiere also noch immer Nikotin aber es geht mir wirklich unglaublich gut. Ich schreibe das hier nieder in der Hoffnung, daß ein Raucher drüber stolpert und es ihm vielleicht hilft.

Ausgangssituation

Ich habe mit ca. 13 Jahren das Rauchen angefangen. Den genauen Tag weiß ich nicht mehr, es ist ja kein besonderes Datum wie ein Geburtstag oder der Tod der Schwiegermutter. Jedenfalls habe ich gegen Ende meiner Karriere als Raucher ca. 30 Zigaretten pro Tag geraucht und leichtes Unwohlsein gefühlt, wenn ich an Orten war an denen das Rauchen nicht erlaubt ist. Gesundheitlich hatte ich mich abgesehen von morgendlichem Husten immer gut gefühlt. Ich hatte vor ca. 10 Jahren auch einmal mit einem Antidepressivum namens Zyban für 3 Monate aufgehört aber wieder angefangen.

Motivation um mit dem Rauchen aufzuhören

Seit 2 oder 3 Monaten werden aufgrund einer EU Verordnung Ekelbildchen von abgefaulten Zehen oder Frauen die Blut spucken auf Zigarettenpackungen gedruckt, was mir unangenehm war weil ich die Menschen in meiner Umgebung nicht damit belästigen wollte. Dies hatte einen Prozess der Selbstreflexion ausgelöst der mir bewußt gemacht hat wie bescheuert das alles ist. Ich gebe einen Haufen Geld aus nur damit ich keine Suchtgefühle erdulden muß. Ich verschwende Zeit und Gedanken darauf ob ich genügend Zigaretten dabei habe. In Deutschland herrscht inzwischen fast überall Rauchverbot und man muß vor die Tür gehen. Aus Rücksicht auf Dritte rauche ich selbst in meiner Wohnung nicht.

Umstieg

Aufgrund meiner Erfahrungen mit Zyban  – ich fühlte mich manchmal traurig und permanent aggressiv – wollte ich weder einen kalten Entzug machen, den ich mir nicht zutraute oder es mit Hypnose, Akupunktur oder sonstwas probieren. Ich möchte diese Methoden nicht schlecht reden. Alles was hilft ist denke ich gut aber für mich ist es nichts. Für den Umstieg habe ich mir eine günstige E-Zigarette besorgt und angefangen das Ding parallel zu Zigaretten zu rauchen. Das habe ich ein Wochenende gemacht und Urlaub für die kommende Woche eingetragen. Durch gutes Timing hatte ich am Sonntag Abend vor dem Einschlafen nur noch eine Zigarette. Die hatte ich geraucht und bin dann ins Bett gegangen. Montag morgen habe ich dann alle Aschenbecher aus der Wohnung entfernt und nur noch E-Zigarette geraucht. Das war sehr schwer, da ich morgens normalerweise einen Kaffee trinke und dazu eine Zigarette rauche. Um mich abzulenken habe ich Stichwortartig mein Empfinden mit Uhrzeit aufgeschrieben und die E-Zigarette geraucht – oder besser gesagt gedampft – dazu später mehr. So zog sich der erste Tag dahin. Ich hatte am PC für einen Kunden gearbeitet, alle 3 Minuten an dem Ding gezogen und weitergemacht.

Hilfe

Am zweiten Tag beschloss ich bei einer Suchtberatung anzurufen, was sehr geholfen hat. Ich bin 2 Stunden mit dem Rad gefahren, war schwimmen, etwas essen ohne die E-Zigarette. Lust auf Zigaretten habe ich eigentlich nicht mehr. Nur wenn ich daran denke werde ich leicht nervös. Wenn ich unter Rauchern bin bekomme ich eine leichte Angst wieder damit anzufangen aber sonst ist es OK. Zwischenzeitlich war ich auch mal etwas trinken und einmal auf dem Oktoberfest – also richtig fies saufen – ohne Rauchen.

Unterstützung

Wie schon geschrieben halte ich ab und an mein befinden Stichpunktartig in einer Datei fest. Es motiviert extrem zu lesen, wie die Sucht über die Zeit verschwindet – ein großer Teil davon findet bei mir im Kopf und nicht im Stoffwechsel statt. Ich habe mir auch ein kleines Script geschrieben, das mir beim Start der Shell einen kleinen Text ausgibt:

You stopped smoking 15 days ago. Saved 134 Euro and you didnt’t smoked 469 cigarettes

Wer zu faul ist sich das selbst zu schreiben und es in die .bashrc zu hängen kann es sich bei github clonen (Achtung PHP!).

E-Zigaretten

Ich habe mir so eine Zigarette in einem Ladengeschäft besorgt, da mir die Beratung wichtig war. Eigentlich handelt es sich nicht um eine Zigarette sondern eine Maschine zum Verdampfen und Einatmen von Flüssigkeiten. In einer kleinen Kammer ist eine Spule in der ein Wattedocht steckt. Diese Watte reicht aus der Kammer heraus in einen Tank in dem eine Flüssigkeit, das Liquid enthalten ist. Entsprechend ist die Watte mit dem Liquid getränkt. Wenn nun Spannung an die Wicklung angelegt wird erhitzt sich diese und das Liquid in der Watte verdampft. Durch einen Kamin dessen Ende in meinem Mund steckt wird nun der Rauch inhaliert. Weitere wichtige Teile des Apparats sind ein Feuertaster um den Stromkreis zu schließen, ein kräftiger Akku und ein Micro USB Port zum Laden und Aufspielen von neuer Firmware:). Liquid gibt es in den verschiedensten Geschmacksrichtungen und Nikotinstärken (auch ohne Nikotin).

In diesem Video wird das ganze sehr gut erklärt. Ich habe das Set aus dem Video nicht und kann auch die Qualität und Funktion nicht bewerten.

Auswirkungen und Folgen

Obwohl ich noch immer Nikotin zu mir nehme geht es mir unglaublich gut! Ich muß morgens nicht mehr Husten, habe unglaublich viel Luft, fühle mich wirklich viel besser. Mein Geruchs- und Geschmackssinn ist unglaublich gut. Ich kann auf 3 Meter Enfernung mit der Nase erkennen wenn jemand eine Laugen-Käse Stange in der U-Bahn futtert. Mir ist nun auch aufgefallen wie unangenehm man riecht wenn man eine Zigarette raucht. Das Dampfen an sich ist auch eine lustige Sache. Es macht Spaß im Aufzug zu dampfen, im Supermarkt oder im Auto bei geschlossenen Fenstern.

Zukunft und Nikotin absetzen

Ausflüge unter 2 Stunden mache ich immer ohne E-Zigarette im Gepäck. Langfristig plane ich die Dosierung des Liquids von 3mg / ml auf 1,5mg /ml bis 0 zu reduzieren. Liquid kann man selbst zuhause anmischen, ich halte mich grob an die Anleitung von Besser Labern ohne Grund und entsprechend einfach ist es den Nikotin Gehalt einzustellen.  Ich bin mir absolut bewußt, daß das Dampfen von E-Zigaretten nichts gesundes ist, aber mir geht es wesentlich besser als mit Zigaretten. Mit ein wenig Glück schreibe ich hier in ein paar Wochen wie es mir weiter ohne Kippen ergangen ist :).

Das Ende ist nah – Bratkartoffeln als Fertigprodukt

Dank Fernsehabstinenz, Werbeblockern und dem Meiden von Seiten wie spiegel.de, stern.de, focus.de oder gar bild.de bleiben mir die dämlichsten Auswüchse unserer Gesellschaft erspart. Ab und an kommt durch Erzählungen Dritter oder Beobachtungen leider etwas davon bei mir an. Heute waren es „Burgis Bratkartoffeln“ im Supermarkt*.

2016-09-16-18-33-15

Für den Supermarktpreis von 2,5kg Kartoffeln kann man nun das vegane Fertigprodukt „Bratkartoffeln“ erwerben.

2016-09-16-18-33-21

Wer weder mit textuellen noch  bebilderten Anleitung zurecht kommt kann sich auch mal auf Youtube anschauen wie man Kartoffeln brät.

Zum Schluss dieses Sommerlochbeitrags bleibt noch die Frage wie Du deine Bratkartoffeln zubereitest. Aus der Packung? Rohe Scheiben braten? Oder gar vorgekocht?

Guten Appetit

 

*bitte die Exif Infos in den Jpgs konsultieren um rauszufinden wo man sowas kaufen kann.

 

Bash – Touchpad bei Bedarf deaktivieren

Langjährige Büroarbeit hat mir einen ordentlichen Bauch verschafft der ab und an die Kontrolle über die Tasten meines Touchpads übernimmt. Abhilfe schafft hier Sport und ein kleines Script um das Touchpad bei Bedarf zu deaktivieren. Das Script liest den Status des Touchpads aus und invertiert ihn.

Quelle: Lenovo.com
Quelle: Lenovo.com
#!/bin/bash
 
DEVICE_NAME="SynPS/2 Synaptics TouchPad"
 
#read state of the touchpad
STATE=$(xinput list-props "$DEVICE_NAME" |grep "Device Enabled"|cut -f3)
#flip the variable
if [ $STATE = 1 ]; then
	echo disable $DEVICE_NAME
	STATE=0
    else
       	STATE=1
       	echo enable $DEVICE_NAME
fi
 
xinput set-prop  "$DEVICE_NAME"  "Device Enabled" $STATE

Doctrine Naming Strategy in Zend Framework 2

Database Table Prefixes are easy to configure with the Doctrine Naming Strategies.
Just create and register a new Strategy in your global config:

config/autoload/global.php

<?php
 
 
namespace Album\Doctrine\Strategy;
 
 
use Doctrine\ORM\Mapping\DefaultNamingStrategy;
 
class PrefixNamingStrategy extends DefaultNamingStrategy
{
    /**
     * {@inheritdoc}
     */
    public function classToTableName($className)
    {
        return '_' . substr($className, strrpos($className, '\\') + 1);
    }
}
<?php
return array(
     /* ... */
    'doctrine' => array(
        'configuration' => array(
            'orm_default' => array(
                'naming_strategy' => new \Album\Doctrine\Strategy\PrefixNamingStrategy()
            ),
        ),
 
    ),
   /* ... */  
);

References:
Doctrine Manual Implementing a NamingStrategy

WordPress, Uberspace, Https

Ich habe heute eine Stunde investiert, un diesen Blog auf SSL umzustellen. Dank Let’s encrypt kriegt man diesen Spaß nun auch kostenlos.

Im ersten Augenblick mag es sinnlos erscheinen einen öffentlichen Blog über Https auszuliefern. Diese Mentalität kommt aus der Zeit in der man jahrlich irgendeiner obskuren Zertifikatsbude eine bestimmte Summe Geld (wenig bei einer Domain bis verdammt viel für ein Wildcard Zertifikat) in den Rachen schmeißen mußte um an ein Zertifikat zu kommen, damit der normale User ein grünes Schloss in seinem Browser sieht. Dank Let’s encrypt können wir mit diesem Denkansatz brechen und alles über SSL liefern. Dank Https wird es schwieriger Malware in die Verbindung zu schleusen und das Lauschen gestaltet sich schwieriger. Manche Stimmen meinen, daß wir diversen Geheimdiensten das Leben schwerer machen, wenn die Masse an verschlüsselten Übertragungen ansteigt.  Angeblich bekommen Https Seiten in der Google Suche auch einen Bonus.

Hier schreibe ich grob nieder was ich machen mußte. Wenn ich was vergessen habe werde ich den Post anpassen. Über Tipps und Verbesserungsvorschläge freue ich mich natürlich

Der Blog läuft seit geraumer Zeit stressfrei auf uberspace.de wobei stressfrei für mich das wohl höchste Lob an einen Hoster ist, welches ich vergeben kann. Das Zertifikat wird auf dem Terminal erzeugt und aktiviert. Eine nette Anleitung gibt es im Blog. Der Apache wird per Rewrite Rule gezwugen Http Requests immer auf Https umzubiegen.

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond %{ENV:HTTPS} !=on
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Im Anschluss müssen noch ein Paar WordPress spezifische Sachen angepasst werden. Ich habe das in der Datenbank getan (vorher unbedingt ein Backup machen!).
Die Queries fand ich bei „Webongo“. Vor der Ausführung das sollte das ihreseite.de durch was sinnvolles ersetzt werden:

s/ihreseite.de/meineseite.de/g
#blog urls
UPDATE wp_options SET option_value = replace(option_value, 'http://www.ihreseite.de', 'https://www.ihreseite.de') WHERE option_name = 'home' OR option_name = 'siteurl';
#permalinks
UPDATE wp_posts SET guid = replace(guid, 'http://www.ihreseite.de','https://www.ihreseite.de');
#links, img src's
UPDATE wp_posts SET post_content = replace(post_content, 'http://www.ihreseite.de', 'https://www.ihreseite.de');
#Meta values
UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://www.ihreseite.de','https://www.ihreseite.de');

In manchen Artikeln habe ich Bilder von anderen Domains referenziert und das auch noch über http!
Solch Unfug läßt sich leicht mit LIKE finden:

select id, post_title, post_content from wp_posts where post_content like "&lt;img%src=\"http://%" AND post_status="publish";

Einfach die ID an die Post.php Url dranhängen https://www.radikalblogger.de/wp-admin/post.php?post=[HIER REIN MIT DER ID]&action=edit und das Bild anpassen.

ESP8266 debuggen

Über diesen netten Chip habe ich bereits einen Artikel geschrieben. Lief problemlos, weil die Bauteile „zusammengepasst“ haben. Ich habe mir 2 Platinen gebastelt die Raumtemperatur und Feuchtigkeit messen. Den „Weg“ zu dieser Wetterstation habe ich auf Github abgelegt – vielleicht hilft es ja jemandem weiter

2015-10-30 20.08.48
Von oben
2015-10-30 20.09.01
Und von unten

Schwer motiviert habe ich mir noch ein paar Arduino Nanos und ESP8266 bestellt und damit hat erstmal nichts geklappt! Das ist im ersten Moment ärgerlich, hat aber auch den Vorteil, daß man sich näher mit der Materie auseinander setzen muß.

Den Chip auf Breadboards benutzen

Durch den geringen Abstand der Pins kann man den ESP8266 schlecht mit Breadboards verwenden. Deshalb mußt Du vor jeglicher Art von Bastelei einen Adapter löten um Dein Leben leichter zu machen.

Benötigt werden ein Stück Lochraster Platine, eine Buchsenleiste und eine Steckerleiste mit jeweils 8 Pins. Die Steckerleiste besteht aus einem Kunststoffteil und Pins. Ich habe den Kunststoffteil ganz nach oben gedrück und dann falsch herum eingelötet. Die Buchsen ganz normal einlöten und dann auf der Unterseite verbinden. Mangels Draht und Bock habe ich die Brücken mit dem Lötkolben gemacht. Das dauert keine 10 Minuten und der Komfortgewinn ist enorm!

adapter

Probleme mit der Spannungsversorgung

Die ESP’s laufen mit 3,3V. Der Arduino hat einen 3,3V Pin der je nach verbautem Spannungsregler nicht genügend Strom liefert (wie meine neuen Arduinos). Das Problem wird sichtbar wenn die LED’s am ESP8266 dunkler werden oder die Spannung zusammenbricht. Mit einem externen Spannungsregler wie dem. AMS1117 läßt sich das Problem beheben.

Übertragungsraten

Mein erster Satz ESP8266  hat mit einer Symbolrate 9600 Baud gearbeitet. Die nächste Charge mit 115200, Baud die schafft mein neuer Satz Nanos, aber nicht die Alten.

Laut diesem Post läßt sich die Baudrate mit einer aktuellen Firmware setzen. Muß ich unbedingt ausprobieren!

Firmware ist vom Hersteller angepasst

Der gesamte Bereich Firmware ist ungemein spannend. Der ESP8266 wurde von der Firma ESPRESSIF erfunden oder produziert oder kopiert. Mein 2. Satz Chips war von der Firma AI-Thinker, die eine eigene, leicht inkompatible Firmware auf die Geräte gespielt hat und die ich nicht will weil die Sketches nicht damit laufen!

Um angenehmer mit den Chips  rumzumachen habe ich mir einen USB TTL Konverter gekauft (kostet zwischen 3€ und 8€). An Software wird nur die unsägliche Arduino IDE benötigt. Konfiguration ist unter Linux nicht nötig. Einfach die Arduino IDE starten und den Serial Monitor öffnen. Hier solange mit der Baudrate spielen, bis man auf das Kommando AT ein OK zurückbekommt. Hier mal ein Auszug aus einem solchen seriellen Gespräch – meine Kommandos sind fett, die Antworten kursiv:

AT
OK
AT+GMR 
AT version:0.30.0.0(Jul 3 2015 19:35:49)
SDK version:1.2.0
Ai-Thinker Technology Co.,Ltd.
Build:1.2.0.A Aug 7 2015 17:21:44
OK

Dies ist die Antwort der inkompatiblen Firmware. Eine schöne Übersicht über Kommandos habe ich bei Iteadstudio gefunden.

Eine nette Anleitung um die Firmware loszuwerden gibt es im Wiki von mikrocontroller.net.

Zusammengefasst (und darum geht’s in dem Beitrag) braucht man das Esptool zum Flashen und eine aktuelle Firmware. Der Chip muß dazu auch besonders beschaltet werden. Ronny Simon von Simtronyx hat das auf seinem Blog sehr nett beschrieben. Wenn die Schaltung steht alle Serial Monitors schließen und kurz Masse an Reset legen. In das Verzeichnisse der Firmware wechseln und mit esptool flashen

ms@w530: /tmp/esp_iot_sdk_v0.9.5/bin$ sudo esptool.py -p /dev/ttyUSB2 write_flash 0x00000 boot_v1.2.bin 0x01000 at/user1.512.new.bin 0x3e000 blank.bin 0x7e000 blank.bin
Connecting...
Erasing flash...
Wrote 2048 bytes at 0x00000000 in 0.2 seconds (81.7 kbit/s)...
Erasing flash...
Wrote 211968 bytes at 0x00001000 in 20.5 seconds (82.7 kbit/s)...
Erasing flash...
Wrote 4096 bytes at 0x0003e000 in 0.4 seconds (85.6 kbit/s)...
Erasing flash...
Wrote 4096 bytes at 0x0007e000 in 0.4 seconds (85.6 kbit/s)...
 
Leaving...

Zumindest bei mir hat danach alles wirklich super funktioniert 🙂

Alternative Firmware

Ein paar ziemlich coole Leute bieten eine eine Firmware an, die das Ausführen von LUA Script ermöglicht. Eine Anleitung gibts hier. Eine einfache Möglichkeit um an angepasste Firmware zu gelangen ist dieser Build Service. 

 

Dies waren soweit meine Probleme mit dem netten Chip. Falls neue auftreten werde ich diesen Beitrag entsprechend erweitern.

Wiedergabe pausieren in Kodi

Ich schaue mir gerne TV Streams mit meinem Kodi an. Um Bandbreite zu sparen ist es ganz nett diesen auch zu pausieren, wenn man das TV ausschaltet und nicht nur wenn man den Stop Befehl per Fernbedienung sendet. Dieses Verhalten läßt sich sehr leicht konfigurieren. Unter Einstellungen -> System -> Eingabegeräte die Option „Wiedergabe pausieren, wenn eine andere Quelle ausgewählt wird“ aktivieren.

screenshot002

 

Screenshots mit Kodi

Ich nutze Kodi auf einem Raspberry Pi2 ohne Keyboard.In dieser Konstellation erstellt man Screenshots am einfachsten per API Request.
http://192.168.0.148:8080/jsonrpc?request={%20%22jsonrpc%22:%20%222.0%22,%20%22id%22:%201,%20%22method%22:%20%22Input.ExecuteAction%22,%20%22params%22:%20{%20%22action%22:%20%22screenshot%22%20}}

Damit das klappt muß in den Settings ein Pfad gesetzt werden.

Einstellungen -> System -> Debugging
Einstellungen -> System -> Debugging

Ich ziehe die Bilder danach bequem scp oder Nautilus Caja auf den Rechner.

Arduino mit Wlan Modul ESP8266

Vor ca. 9 Monaten hat mein Feedreader mir einen interessanten Artikel präsentiert. Er handelte von einem Elektronik-Modul namens ESP8266 der TCP/IP Kommunikation über WLAN mit Arduino Controllern ermöglicht. Low-Level Geschichten interessieren mich normalerweise nicht, weil es meist aufwändig und kostspielig war die Hardware ins Netz zu bringen- vor allem ohne Kabel. Dank der netten Ebay Händler aus Shenzhen bekommt man die Hardware für solche Unterfangen inzwischen unter 10€. Ich hatte das Teil sofort bestellt, aber habe es nie geschafft es in Betrieb zu nehmen weil immer was dazwischen kam und mir die Muße fehlte – bis vor ca. 1h. Warum meine ersten Versuche das Teil in Betrieb zu nehmen fehlschlugen kann ich leider nicht mehr sagen. Als ausgebildete Fachkraft bin ich zu 100% sicher die Schaltung 1:1 nachgebaut zu haben aber es wollte nicht klappen. Aufgrund solcher Gedächtnisslücken schreibe ich jetzt diesen Artikel:).

 

 

Auf der Website Instructables.com bin ich auf eine vergleichbare Anleitung gestoßen, die eine Verkabelung ohne Spannugnsteiler und Stützkondensator vorsieht und auf einmal hatte es funktioniert! In dem Tutorial dreht sich alles darum per Http Request Sensordaten von einem DS1820 Temperatursensor per HTTP auf eine recht interessante Seite namens Thingspeak zu übertragen. Ich habe den Code ein wenig angepasst, da ich weder die Hardware dafür besitze noch die Libraries einbinden wollte. Wenn Du das nachbauen möchtest benötigst Du einen Account auf der Seite und mußt den Präprozessor neben SSID und Passwort mit einen API-KEY für Thingspeak füttern.

#include
#include 
 
 
#define SSID "SSID"
#define PASS "PASSWORD"
#define IP "184.106.153.149" // thingspeak.com
String GET = "GET /update?key=[APIKEY]]&amp;field1=";
SoftwareSerial monitor(10, 11); // RX, TX
 
void setup()
{
  monitor.begin(9600);
  Serial.begin(9600);
 
  sendDebug("AT");
  delay(5000);
  if(Serial.find("OK")){
    monitor.println("RECEIVED: OK");
    connectWiFi();
  }
}
 
void loop(){
 
  //float tempC = sensors.getTempCByIndex(0);
 
  char buffer[10];
  String tempF = dtostrf(989, 4, 1, buffer);
  updateTemp(tempF);
  delay(60000);
}
 
void updateTemp(String tenmpF){
  String cmd = "AT+CIPSTART=\"TCP\",\"";
  cmd += IP;
  cmd += "\",80";
  sendDebug(cmd);
  delay(2000);
  if(Serial.find("Error")){
    monitor.print("RECEIVED: Error");
    return;
  }
  cmd = GET;
  cmd += tenmpF;
  cmd += "\r\n";
  Serial.print("AT+CIPSEND=");
  Serial.println(cmd.length());
  if(Serial.find("&gt;")){
    monitor.print("&gt;");
    monitor.print(cmd);
    Serial.print(cmd);
  }else{
    sendDebug("AT+CIPCLOSE");
  }
  if(Serial.find("OK")){
    monitor.println("RECEIVED: OK");
  }else{
    monitor.println("RECEIVED: Error");
  }
}
void sendDebug(String cmd){
  monitor.print("SEND: ");
  monitor.println(cmd);
  Serial.println(cmd);
} 
 
boolean connectWiFi(){
  Serial.println("AT+CWMODE=1");
  delay(2000);
  String cmd="AT+CWJAP=\"";
  cmd+=SSID;
  cmd+="\",\"";
  cmd+=PASS;
  cmd+="\"";
  sendDebug(cmd);
  delay(5000);
  if(Serial.find("OK")){
    monitor.println("RECEIVED: OK");
    return true;
  }else{
    monitor.println("RECEIVED: Error");
    return false;
  }
}

Die Verdrahtung gestaltet sich sehr einfach und funktioniert mit meinem Arduino UNO- und dem Arduino NANO 328-Klon:

ESP8266 Arduino
TXD RXD
CH_PD VCC 3V3
VXX VCC 3V3
GND GND
RXD TXD

Die Pins auf dem WLAN Chip sind so belegt:

Bild von http://mcuoneclipse.com/2014/10/15/cheap-and-simple-wifi-with-esp8266-for-the-frdm-board/

Hier 2 Bilder die zeigen wie die PINS auf den Arduinos herausgeführt sind:

 

Der Arduino Nano mit 328 Mega Chip

uno

Tükisch waren 2 Dinge an der Geschichte:

  1. Nmap findet das Gerät nicht im Netzwerk. Ich bin der Sache noch nicht nachgestiegen, aber mit <ahref=“http://linux.die.net/man/8/arp“>arp ist es kein Problem. Das muß ich mir anschauen
  2. Der Arduino kann nur programmiert werden, wenn man das WLAN Modul spannungsfrei macht. Auch ein Trennen der Verbindungen WLAN Modul Arduino und Arduino PC erleichtert das übertragen…

In den kommenden Tagen werde ich wohl ein kleines Programm schreiben, daß auf Port 80 lauscht und entsprechenden POST Requests analoge und digitale Ports schaltet und Stati ausgibt. Auch eine Anbindung an mein Openhab wäre sehr nett…

Bequem Phar Files erzeugen

Ich schreibe sehr gerne Bash Scripte, aber noch lieber Scripte in PHP. Solange man alles in ein File bekommt ist das auch kein Problem. Bei größeren Geschichten oder bei der Verwendung von Libs streut das Script leider auf mehrere Dateien. Entsprechend sind Installation und Updates dann auch aufwendiger. Irgendwer hat sich für diese Problematik Phar (PHP Archive) ausgedacht. Dabei werden alle Abhängigkeiten in ein komprimiertes Archiv gepackt – vom Prinzip her wie ein Jar in Java. Das manuelle Erzeugen von diesen Dateien ist leider recht unangenehm und verbraucht nach zuviel Zeit. Viel schneller geht’s mit dem PHP PHAR Compiler von Christian Neff. Bevor man loslegen kann muß die php.ini angepasst werden:

phar.readonly = 0

Anschließend den Compiler via Composer installieren und ein Script zum Bauen anlegen:

<?php
/**
 * User: ms
 * Date: 29.08.15
 * Time: 20:22
 * @see https://github.com/secondtruth/php-phar-compiler
 */
require_once dirname(__FILE__) . DIRECTORY_SEPARATOR . 'vendor/autoload.php';
use Secondtruth\Compiler\Compiler;
$compiler = new Compiler('./');
$compiler->addIndexFile('cli.php');
$compiler->addFile('vendor/autoload.php');
$compiler->addDirectory('vendor/composer', '!*.php');
$compiler->addDirectory('vendor/electrolinux', '!*.php');
$compiler->addDirectory('vendor/zendframework', '!*.php');
$compiler->addDirectory('src', '!*.php');
$compiler->compile("build/mvv-cli.phar");

Fertig.