In diesem Beitrag beschreibe ich mal den so einen quasi Standardaufbau der 1-Wire Verkabelung, den Aufbau und Anschluss der Komponenten und warum Ich in meinem 1ten Beitrag FHEM: 1-Wire Temperatur Sensoren am RPi an die Herausfordung gestoßen bin.

Anschluss

Hier mal eine Tabelle über PIN-Belegung basierent auf einen Standardisierungsvorschlag:

 * Ich habe hier den 568B benutzt, da ich diesen bei mir eingesetzt habe. A und B unterscheiden sich nur in der Vertauschung der Adernpaar 1/2 und 3/6 (orange nach grün)
Schirm wird nur auf einer Seite angeklemmt!
J45 (8pol)
EIA/TIA 568B*
Bezeichnung
8pol
RJ12 (6pol) RJ11 (4pol) Bezeichnung
 1 Orange/Weiß GND Primär  –  –
 2 Orange +5V Primär  1  –  +5V Zusatz
 3 Grün/Weiß 1-Wire GND Sec  2  1  –
 4 Blau 1-Wire Data Prim  3  2  1-Wire Data
 5 Blau/Weiß 1-Wire GND Prim  4  3  GND
 6 Grün 1-Wire Data Sec  5  4  +5V Prim
 7 Braun/weiß +12V Zusatz  6  –  –
 8 Braun GND Zusatz  –  –

Durch diese Tabelle sieht man schon das leider die 4poligen Stecker/Buchsen nicht mit den 8pol Netzwerkstecker mischen kann, sobald der 2te 1-Wire-Bus aufgelegt ist!

Wenn man die Möglichkeit hat sollte man mind. Cat5 oder bessere Kabel benutzen und auf die 8pol RJ45 Variante gehen. Das hat den Vorteil das über diesen Anschluss jenachdem wie man den benutzt und wo mna ihn  anschließt Netzwerk/Telefon/1-Wire fahren kann. Auf beiden Seiten hat man dann RJ45 Buchsen (Netzwerkdose/Patchpanel).
Wenn man Neubaut oder neue Verkabelung einzieht, werden wahrscheinlich alle Endpunkte des Netzwerks irgendwo zentral enden und man hat dadurch die volle Flexibilität der Anschlüsse.

PullUp

Der 1-Wire Bus sagt ja eigentlich das ich nur 1 Draht als Verbindung brauche, mal abgesehen von GND. Aber praktisch und Sensoren bedingt sollte man zumindest noch eine +V Versorgung zum Sensoren legen, damit:

der Port/Bus weniger Strombelastung hat
die Kabellängenweite vergrößert werden kann
die Sensoren schneller ihre Werte liefern

Weiterhin sollte eine PullUp-Widerstand eingesetzt werden von +V nach 1-Wire-Data sodass der Bus stabil über Längen arbeiten kann.
Bei mir setzte ich einen 4,7kOhm ein.

Topologien

Linear Abzweig Stern
1wire_lin 1wire_abzweig 1wire_stern
Die Leitung geht vom Master bis zum entferntesten Slave. Die zwischenliegenden Slaves sind über direkt oder über kurze Kabel angebunden. Manche Devices haben einen Ein- und Ausgang des Busses. Der Aufbau ist ähnlich der Linearen aber die Slaves sind über längere Leitungen > 3m am Hauptstrang angeschlossen. Dies ist zb wie bei einem 6fach-Verteiler der Fall der entfernt vom Master steht.  Der Bus wird in der Nähe des Masters aufgeteilt. Die einzelnen Stränge haben dann mehrere Slaves angeschlossen.

Welche nun verwenden?

Betrachtet man die Impedanz-Fehlanpassung auf den gesamten Bus, fällt die Stern-Topologie hier am negativsten auf. Die einzelnen Stränge können unterschiedlich lang und verschiedene Impedanzen haben, die sich dann gegenseitig ungünstig beeinflussen können.
Die Linear-Topologie schneidet daraufhin am Besten ab und sollte somit zum Einsatz kommen wo es geht.
Die Abzweig-Topologie ist so ein Zwischending und wird vermutlich bei ähnlichen Längen funktionieren und ein guter Kompromiss sein.
In der Praxis traten erst bei größeren Längen > 80m Buslänge vermehrt Schwierigkeiten mit der Übertragung auf.
Als Beispiel sei hier meine Verkabelung zu nennen die vom Master bis zum 6fach-Verteiler ca. 15m und dann dort 5 Slaves mit unterschiedlichen Längen verknüpft.

TIP:Also lieber mehrere kleine 1-Wire-Netze als ein großes mit unerwünschten Nebenerscheinungen!

Hinweis:Was nicht gemacht werden sollte ist ein Ring, wo irgendwie der Bus beim Master wieder zurückkommt!

Hier stelle ich ein paar Tips & Tricks vor, die mir helfen und euch helfen könnten bei dem Umgang mit FHEM.

Weboberfläche

Highlight Editor

Unterm WEB oder eure Oberfläche einen schönen, anderen, übersichtlicheren Webeditor/anzeige für Code verknüpfen:

attr WEB JavaScripts  codemirror/fhem_codemirror.js

 

sichtbares Eingabefeld verlängern

attr WEB mainInputLength 80
Hiermit wird das obere Eingabefeld auf 80 Zeichen vergrößert

weiterlesen

Hallo, ich habe mir ein paar Amazon Dash-Button’s bestellt um sie mit FHEM als (Not-) Ruftaster zu verwenden.

Als erstes müssen Sie mit eurem Netzwerk verbunden werden. Dazu muss man über die Amazon-App die Dash-Buttons einrichten.
Tja, da war mein Problem als Windows Phone Besitzer, das geht nicht mehr. Also musste das Handy von meiner Frau her, die Amazon App installieren und los gings… (Das Einrichten klappt mit iOS oder Android App.)

weiterlesen

ESP8266 Tips und Troubleshooting, ja so heißt dieser Beitrag hier, soll meine Erfahrungen weitergeben die ich  bisher gemacht habe.

Problem: Power / Versorgung bricht unter 3V zusammen

Dies ist mit einer der wichtigsten Punkte bei dem Umgang mit dem ESPs, sei es ESP01, ESP12 oder einer NodeMCU.

Die Grundversorgungspannung liegt bei 3,3Volt DC, Arbeitsbereich laut Hersteller Espressif 3,0V ~ 3,6V. Bei mir fällt bei manchen Boards die Spannung auf ~2,8V zurück, wobei das schon manchmal kritisch wird und der ESP einfach mal neu bootet bzw. dann auch nicht sauber wieder hochkommt.

Die ~2,7V liegen beruhend auf dem Spannungsstabi bzw. der USB-Absicherung, wie es bei ESPEasy beschrieben wird:

weiterlesen

Hier gehts nun rund um das Flashen des ESP (ESP8266/ESP32) unter anderem auch das Löschen vom ESP. Dies kann mit  verschiedenen Tools erfolgen.

Anfangen werde ich mit der ArduinoIDE:

  • ArduinoIDE herunterladen (1.6.12) (jenachdem welche aktuell ist), ich lade mir immer die ZIP Datei herunter, damit ich aus dieser Version dann eine Standalone mache nur für den ESP bzw. das Projekt
    • Arduino ZIP entpacken, nicht starten !
    • neuen Ordner mit Namen portable im Verzeichnis von ArduinoIDE anlegen (siehe Bild)
  • ArduinoIDE öffnen, Datei –> Voreinstellungen und unter “Zusätzliche Boardverwalter-URLs:” des pfad zum esp8266com eintragen: http://arduino.esp8266.com/stable/package_esp8266com_index.json mit OK abspeichern
  • Danach den Boardverwalter aufrufen und die esp8266 -Boards suchen und installieren (siehe Bild), die Daten sollten um die 150MB groß sein
  • Nach ein paar Minuten sollten nun die Boards verfügbar sein und die Grundeinrichtung zum Betreiben eines ESP8266 Board ist abgeschlossen

Zum Testen kann man nun eins der Beispiele nehmen (zB. Hello Server vom ESP8266WebServer-Menü).

weiterlesen

Nachdem ESP mit ESPEasy und FHEM über MQTT funktioniert, hat der User “dev0” aus dem FHEM-Forum ein neues Modul entwickelt.

Die Vorraussetzung für dieses Modul ist, das auf dem ESP eine Version > 128 installiert, da in dieser als Serverauswahl “FHEM HTTP” zur Verfügung steht.

Das Modul wird wie auf dem GitHub-Wiki beschrieben installiert. Über die FHEM WEBCMD-Oberfläche:

  • update add https://raw.githubusercontent.com/ddtlabs/ESPEasy/master/controls_ESPEasy.txt
  • update

JSON für Perl (cpan install JSON) muss auf dem FHEM Server installiert sein.

Das Device wird folgendermaßen angelegt:
define devESPFHEM ESPEasy bridge 8181
--> "define <name=frei wählbar> ESPEasy bridge <port=frei wählbar>"

Sobald nun ein ESP Daten sendet, wenn autocreate angeschaltet ist, werden die Werte in FHEM angezeigt.

Alles Weitere steht im Wiki und Forum.

ESPEasy Bridge

ESPEasy Bridge

ESPEasy WiFi Data

ESPEasy WiFi Data

Hier noch ein brauchbarer Link

Tankerkönig.de bietet eine schöne API mit JSON Ausgabe an.
Um diese in FHEM einzubinden braucht mal als Erstes einen eigenen API Key. Den bekommt man kostenlos hier. Mit diesem ist dann der Zugriff auf die Daten von Tankerkönig möglich.

Um an die ID der Tankstelle zu gelangen gibt es mehrere Möglichkeiten.
Ich beschreibe hier mal einen von diesen Wegen über die Webseite:

  1. Auf Tankerkönig.de die PLZ oder den Ort eingeben
  2. Die Tankstelle aussuchen und anklicken
  3. Meldung anklicken –> öffnet eine neue Seite
  4. Die URL kopieren und in Notepad einfügen oder direkt die ID rauskopieren
    http://www.tankerkoenig.de/MTS-K-Complaints/Complaint.php?station={"id"%3A"cfe5f775-a134-4d0f-934c-2e3c03a27675"2C"isOpen":true,"prices":{"diesel_price":"0.989","e5_price":"1.239","e10_price":"1.199"},"name":"METTMANN, DÜSSELDORFERSTR.168.","brand":"Shell","street":"DÜSSELDORFERSTR. 168","houseNumber":"","postCode":"40822","place":"Mettmann","location":{"lat":51.2542,"lng":6.95995}}

    tankerkoenig_url

    Tankerkönig URL ID

    5. ID abspeichern brauchen wir ja im FHEM Script

In FHEM legen wir nun ein neues Device an, hier der vollständige Code:

weiterlesen