NEWS
Tasmota und I2C Expander
-
@karl-0 https://github.com/arendst/Tasmota/issues/6765
Etwas weiter unten gibt es ein Link mit zip -
@karl-0 Hab das nochmal gemacht:
D1Mini flashen, evtl muss man den D1Mini mit blank_4MB vorflashen bzw reinigen. Zum Flashen ESPeasy nutzen?
tasmota_pcf8754_mcp23017.bin
, mit 192.168.4.1 ->eigenes WLAN auswählen und Passwort eingeben und Name vergeben:
Generic(0) auswählen unter Gerät konfigurieren->Neustart
D2 ->ICL SDA auswählen
D1 -> ICL SDL auswählen
Speichern Neustarti2cscan in der Konsole ausführen
->
20:09:44 CMD: i2cscan
20:09:44 RSL: stat/tasmota_B67CE3/RESULT = {"I2CScan":"Device(s) found at 0x21"}i2cdriver2 1 in der Konsole ausführen -> Neustart
Wichtig die Startadresse ändern auf 0x21, 0x20 ist belegt für MCP230xx
Falls die Werte nicht erscheinen muß man die Sonoff-Instanz einmal neustartenWarum die Eingänge nicht in ioBroker sichtbar sind weiß ich noch nicht.
Alle erstmal auf Ausgänge setzen -> Alle Ausgänge können über ioBroker gesetzt werden.
Eingänge funktionieren noch nicht. Hat jemand eine Idee?
Ist das Dein Thread?
https://forum.creationx.de/forum/index.php?thread/2650-tasmota-mit-d1-mini-und-pcf8574/Falls das so ist, hast du ja schon die neueste Version 9.2.0 drauf und musst nur noch
i2cdriver2 1 in der Konsole ausführen -> NeustartDann bitte die neueste tasmota_PCF8574_920.bin hier einstellen für andere.
Danke. -
@mcu Vielen Dank für die ausführliche Antwort!
Ich arbeite mit den Original ESP-Tools, habe also über die Konsole
und
eingegeben.
Nach Reset hat sich die Firmware auch korrekt in HTerm gemeldet:
Dort habe ich dann mit "Backlog ..." SSID und Password gesetzt.Ein I²C-Scan scheitert dort natürlich. Außerdem habe ich probiert, dort gleich den Treiber zu aktivieren:
Im Webinterface habe ich dann sowohl deine Pinkombination probiert als auch meine und jeweils noch einmal versucht, den Treiber zu die Web-Konsole zu aktivieren, aber das "Konfiguriere PCF8574" bekomme ich einfach nicht.Hier noch die komplette Modulinfo:
und die von mir generierte Firmware auf dem aktuellen Stand der Sourcen: firmware_reset_when_i2cdriver2_1.bin
Es wäre interessant, ob das Image bei dir problemlos läuft.
Bei mir ist auch hier das Ergebnis: Kein Menü:
Hab jetzt schon wieder 2 Tage meiner Lebenszeit investiert und bin für jeden Tipp dankbar! Wahrscheinlich irgendeine blöde Kleinigkeit..
-
was zeigt bei dir die Console an, bei mir werden keine Parameter angezeigt. Hatte die .bin von dir.
Was bedeutet den i2cdriver2 1 ? -
@karl-0
dreh das mal, aus i2cdriver2 1 mache i2cdriver1 2.
Dann lief das bei mir, da scheint auch der Fehler zu sein.
Jetzt läuft die Tasmota 8.50, teste jetzt mal die 9.2. -
@ralla66 die Spannung spare ich mir jz bis morgen und melde mich dann
-
@ralla66 https://tasmota.github.io/docs/I2CDevices/#look-at-pre-compiled-builds-to-see-which-driver-is-compiled-in-the-release-binarys
Warum es so bei Dir funktioniert keine Ahnung, es dürfte nicht. -
@mcu
eben zu klären wo das Command steht bei i2cdriver2 1.
Ist das Command 2 oder 1 ?
Google da auch nichts. -
0-> aus /disable
1-> ein /enable -
@mcu
Bei meiner Sonoff Bridge steht der Key zuerst dann das Command.
Was hat disabling damit zu tun . Verstehe ich nicht.Hatte das ja gedreht.
i2cdriver1 20-> aus /disable
1-> ein /enableWas ist dann 2 ?
-
@ralla66 Laut Beschreibung (s.o) hast du damit
aktiviert. Also wenn es mit Deiner Einstellung funktioniert, gut, aber hast du schon mal versucht zu schalten und geprüft, ob wirklich die Spannung geändert wird? -
@mcu
verstehe das nicht mehr, Kommentar Zeile 566 auskommentiert.
Neue .bin angelegt, rennt nicht mt der 9.2Teste ich morgen Live mit einer 8 fach Relaiskarte.
-
@mcu bei mir tut es "i2cdriver1 2" auch nicht
Ich habe auch schon probiert, andere Pins zu nehmen, aber es bleibt gleich: i2cscan geht, i2cdriver2 1 schaltet das Menü nicht ein
Zeigt eig Tasmota das Konfigurationsmenü nur an, wenn es wirklich einen PCF8574 gefunden hat?
-
@karl-0 Ja. Hier nochmal die Anschlussbilder:
GRAU->D2 (D1Mini)->SDA
WEISS->D1 (D1Mini)->SDL
ROT 3,3V
SCHWARZ GND -
@mcu So, ich habe jz mal schweres Geschütz aufgefahren und einen Logikanalyser und ein Oszilloskop angeschlossen. Verdrahtung wie bei dir im Bild. Die Signale sehen auf dem Oszi erstmal gut aus. Bei i2cscan wird ja immer ein device bei 0x27 gefunden, was ja auch genau den Erwartungen entspricht.
Bei i2cdriver2 1 und dem anschließenden Reset sucht er nach folgenden Devices, und zwar genau in der Reihenfolge
0x21..0x26, 0x39..0x40, wobei nur 0x40 mehrfach abgefragt wird. Warum nun 0x20 und 0x27 nicht abgefragt werden, ist mir ein Rätsel. Werde jetzt mal das Board so umlöten, dass die Adresse im abgefragten Bereich ist.. -
@mcu Hab A2 von +3.3V auf 0V umgelötet => Konfigurationsmenü ist da!
Läuft jz auch mit dem ESP-01 und der Belegung GPIO0=SCL und GPIO2=SDA.
Hast du einen Tipp, wo im Quellcode ich suchen muss, um den Scanbereich anzupassen? Ist das eig ein Bug oder gibt es einen speziellen Grund, den Bereich so einzuschränken?
-
@karl-0 Falls du meine bin genutzt hast liegt es daran, dass der MCP parallel eingeschaltet werden kann.
Dann hast du nicht die richtige Brücke gesetzt.
i2cdriver2 1 arbeitet nur wie man sieht von 0x20 bis 0x26
i2cdriver2 2 nehme ich an von 0x39 bis 0x3F.UNGETESTET
Es kann sein, dass wenn man den MCP deaktiviert bzw disabled, das man dann auch mit der Adresse 0x20 arbeiten kann:
Also vorher i2cdriver22 0 machen muss.
Und dann erst i2cdriver2 1.
Ich wollte mir aber den Parallelbetrieb offen halten. -
@mcu auch mit dem .bin, das ich nur mit dem PCF8574 compiliert hatte, konnte ich 0x27 nicht ansprechen, nur eben über i2cscan.
Zu Abwechselung mal eine Anfängerfrage: Ich kann ja auf der Webpage von Tasmota die Ausgänge setzen. Kann ich auch irgendwo die Eingänge sehen, wenn ich einen Kanal als Eingang konfiguriert habe?
-
@mcu Ich habe es noch nicht hinbekommen, einen Eingang zu empfangen. Man kann es einstellen, aber es kommt nichts an.
Ausgänge schalten kann man ja mit dem sonoff-Adapter.
Das war der Grund warum ich damals den MCP eingesetzt habe, dort kann man die Eingänge lesen, auch über den Sonoff-Adapter.
Genaue Anleitung hier https://tasmota.github.io/docs/MCP230xx/ -
@mcu
so läuft warum auch immer mit 1 und 2 am PCF, D1 ist SCL, D2 ist SDA,
Tasmota ist die 8.5.0
denke mal das ist ein Adressenkonflickt.
der MCP230 läuft mit welcher Tasmota bei dir.
Teste ich dann mal.