Pins konfiguriert als OUTPUT zum steuern eines externen Boards

Hallo zusammen.

Ich suche nach einer guten Lösung ein nicht Smart Device mit einem ESP z.B. Wemos D1 mini Smart zu machen.

Bedient wird das nonSmart-Gerät zur Zeit mit einfachen MicroTastern

Funktionen / Taster: Musik an, Lied ändern, Auto off 15min, Lauter, Leister, On/Off

Hierbei wird beim Drücken des jeweiligen Tasters eine Verbindung von GND zum jeweiligen PIN hergestellt.
Die Platine vom Gerät wird selbst mit 5 V versorgt.

Somit möchte ich die Pins vom Gerät in diesem Fall 6 Funktionen (Pins) Musik an, Lied ändern, Auto off 15min, Lauter, Leister, On/Off Taster abgreifen und zusätzlich von einem ESP ausführen (wie es auch beim Taster druck passiert.) Bedeutet kurze GND Impulse von 0,5-1 Sec
Sprich benötigt wird 6x GND OUTPUT zum Bedienen.

Das ganze würde ich dann gerne in HomeAssistant integrieren, um es von da im Lovelace zu Bedienen und mit evtl. Automationen zu erweitern.

Wer von euch kann mir sagen wie ich dies realisieren kann und was ich benötige?

Schon mal vielen Dank an alle.

einen WemosD1 oder NodeMCU
eine 6fach Relaiskarte zum Schließen der Tasten auf dem umbekannten Device.
ein Netzteil zum Versorgen von Controller und Relaiskarte

juminu:
Bedient wird das nonSmart-Gerät zur Zeit mit einfachen MicroTastern

Funktionen / Taster: Musik an, Lied ändern, Auto off 15min, Lauter, Leister, On/Off

Wer von euch kann mir sagen wie ich dies realisieren kann und was ich benötige?

Hört sich nach 'nem MP3-Player an...
ULN2803 wäre eine Option oder Optokoppler für jeden Kanal.
Dazu Steckbrett mit Kabelzubehör.

Eine bessere Information über dein "nicht Smart-Gerät" wäre hier deutlich besser und wir könnten genauere Tipps geben.

Oder ist dein Gerät geheim ?

Oder per i2c mit sowas Port-Expander

Relais sind laut und langsam.

Hierbei wird beim Drücken des jeweiligen Tasters eine Verbindung von GND zum jeweiligen PIN hergestellt.

Wenn Du die Massen des ESP mit dem nonSmart-Gerät zusammenschalten kannst dann brauchst Du 6 NPN Transistoren und 6 Basiswiderstände. Emittor auf Masse, Collektor mit Taster und Basis über 1kOhm Widerstand auf den ESP-Ausgang.
Wenn Du die Massen nicht zusammen schalten willst oder kannst dann nimm 6 Optokoppler. Die LED wird über den ESP mit Vorwiderstand angesteuert; Transistore gleich wie der oben beschriebene NPN.
Einen Pulup-Widerstand braucht es in beiden fällen nicht weil dieser im Gerät bereits vorhanden ist.

Grüße Uwe

ElEspanol:
Oder per i2c mit sowas Port-Expander

Geht nicht Du brauchst Open Collektor bzw Open Drain Ausgänge und der PCF8574 hat diese nicht. Oder Du schaltest NPN Transistoren nach oder ULN2803 / 2003
Grüße Uwe

uwefed:
Geht nicht Du brauchst Open Collektor bzw Open Drain Ausgänge und der PCF8574 hat diese nicht. Oder Du schaltest NPN Transistoren nach oder ULN2803 / 2003
Grüße Uwe

Da sagen die hier aber was ganz anderes:
https://www.mikrocontroller.net/articles/Port-Expander_PCF8574

Da der Expander mit einem Open-Drain Ausgang daher kommt, muss ein Pull-Up gegen Betriebsspannung geschaltet werden. ........... Denn es handelt sich um Open Collektor Ausgänge.

Ich spreche nicht von MCP23008

Im Zweifel gilt das Datenblatt.

Seite 3:
P[0..7] I/OP-portinput/output.Push-pulldesignstructure.

Gruß Tommy

Die Vorschläge von Uwe finde ich gut. Ja möchte die Stromversorgung der Platinen zusammen schalten somit wären Optokoppler nicht zwingend notwendig. ULN2803 Sind mehrere Transistoren in einem IC?

juminu:
ULN2803 Sind mehrere Transistoren in einem IC?

Ja.
"Datenblatt uln2803" bei der Suchmaschine Deiner Wahl...

juminu:
Die Vorschläge von Uwe finde ich gut. Ja möchte die Stromversorgung der Platinen zusammen schalten somit wären Optokoppler nicht zwingend notwendig. ULN2803 Sind mehrere Transistoren in einem IC?

Zum genauen anschließen benötigst du auch das Datenblatt, das zeigt die auch die Anzahl der Schaltein- bzw. Ausgänge.

ElEspanol:
Da sagen die hier aber was ganz anderes:
https://www.mikrocontroller.net/articles/Port-Expander_PCF8574
Ich spreche nicht von MCP23008

Ja, Du hast recht daß die dort das sagen. Ich glaube aber die sagen da was falsches, unvollkommenes, ungenaues.

Wie Tommy56 bereits gesagt hat und ein Datenblatt von TI zitiert, zitiere ich jetzt eines von NXP:

Vereinfachtes Schaltbild FIG2 auf Seite 3:
Da ist ein Totem Pole Ausgang mit einem zuschaltbaren 100µA Konstantstrom "Pullup Widerstand".
Beschreibung Kapitel 8.1 Seite 6 ff:

Better for driving LEDs since the p-channel (transistor to VDD) is small, which saves die size and therefore cost. LED drive only requires an internal transistor to ground, while the LED is connected to VDD through a current-limiting resistor. Totem pole I/O have both n-channel and p-channel transistors, which allow solid HIGH and LOW output levels without a pull-up resistor — good for logic levels.

Die beiden Transistoren des Totem Pole Ausgangs sind unsymetrisch; Der auf Masse schaltet verträgt mehr Strom als der nach Vcc schaltet. Deshalb wird angesraten LEDS zwischen Vcc und Ausgang zu schalten und nicht zwischen Ausgang und Masse.

In 10.3 Seite 14:

The GPIO has a minimum guaranteed sinking current of 10 mA per bit at 5 V.

Dann weiter auf Seite 16:

IOL LOW-level output current VOL=1V; VDD=5V min:10 typ 25-mA
IOH HIGH-level output current VOH=VSS min: 30µ max:300µA
Itrt(pu) transient boosted pull-up current HIGH during acknowledge (see Figure 8 ); VOH=VSS; VDD=2.5V typ -1mA

Vieleicht hat der geringe Strom bei HIGH, mit dem man kein LED zum leuchten bringt, den Autor bei mikrocontroller.net verleitet, anzunehmen daß der Ausgang ein Open Collektor (genau gesagt aber ein Open DRAIN) Ausgang sei.

Wegen des geringen, begrenzten HIGH Strom kann man den Ausgang als Open Collektor bzw Open Drain annehmen wenn man mehrere Ausgänge zusammenschalten will. Das gilt aber nicht in allen Fällen.

Ok, ElEspanol im konkreten Fall würde man wahrscheinlich den PCF8574 verwenden können. Meine Unsicherheit ist dadurch bedingt, daß während des Acknowledge ein Strom von 1mA in den Eingang fließen kann (Ausgang auf LOW) und dies als doppelte Tastenbetätigung interpretiert werden könnte.

Grüße Uwe