ESP8266 als Tasterersatz

  • Einige der hier gestellte Fragen hast Du tutter leider nicht beantwortet. Es wurde z.B. u.a. auch nach der Spannung an den Tastern gefragt. Diese Frage hatte einen Sinn, denn wenn die Funktionsweise der Taster nicht klar ist, kann es passieren dass es mit dem Schalten der Taster durch Transistoren nicht so einfach wird. Es wäre z.B. auch möglich, das die 4 Taster einen von 4 in reihegeschalteten Widerständen überbrücken, so kann man mit nur einem Pin + GND (analog) verschiedene Taster auswerten. Ich würde aber nicht den Weg über die Taster gehen, wenn der Hersteller andere Wege zur Umschaltung anbietet.

    Fotos vom Innenleben der Switche hast Du leider auch nicht gemacht. Mich würde es z.B. nicht wundern, wenn die Elektronik des Switches mit 3,3V arbeitet und für die RS232 Schnitstelle ein TTL zu V24 Pegelwandler eingebaut ist.

    Die Frage, ob Du die Anleitung gelesen hast und ob sich damit durch die Programmierung der Switche nicht Funktionen (teil-) automatisieren lassen, bzw. ob denn alle Switche per ESP (gleichzeitig) gesteuert werden sollen sowie die Frage nach den Geräten welche geschaltet und mit welchem Gerät geschaltet werden soll, bist Du auch schuldig geblieben. Vielleicht würde es ja noch andere Wege zu Umsetzung, wie z.B. per Bluetooth (BT Serial Module) geben.


    Franky hat sich einiges an Arbeit mit der Schaltung gemacht, ich persöhnlich würde die Schaltung auf den ersten Blick für zu komplex halten. Vielleicht sollte man auch ersteinmal schauen ob eine Umschaltung per RS232 klappt und ob die Switche ständig Daten senden, bevor man sich mit einer Schaltung befasst.

  • Also, ich für meinen Teil würde - egal mit welchem µC - im Zweifel neben dem HW-UART zwei SoftSerials auf extra Pins legen, bevor ich einen Miltiplexer anschließe. Da die drei Verbindungen ohnehin nicht gleichzeitig benötigt werden, sehe ich da kein Problem. Mit einem ESP32 ginge es mit 3 Hardware-UARTs, mit einem ESP8266 halt nur mit einem HW-UART und zwei SoftSerials. Wozu so einen Aufwand betreiben...

    PS: Der ESP32 hat auch dann 3 HW-UARTs, wenn man die Überschrift gelesen hat. Bevor man deine weltmeisterliche Schalltung zusammenschustert, ist es wohl weniger aufwändig und auch billiger, den ESP8266 durch einen ESP32 zu erstzen. Deine Art, beinahe jeden Beitrag anderer Leute schlecht zu reden, selbst aber seitenlang Abhandlungen zu schreiben, die teilweise weit vom Thema wegdriften, ist mehr als nur anstrengend! Das Thema lässt sich mit einem ESP8266 und SoftSerial ohne Probleme erschlagen. Und selbstverständlich kann man mehrere SoftSerials betreiben - nur nicht gleichzeitig, aber das ist ja hier auch gar nicht notwendig. Abgesehen davon ging und geht es dem TO auch immer noch um die Brückung der Taster, was du beim Thema Optokoppler total mit dem Thema serielle Steuerung vermengt hast. Bevor du also anderen auf die Füße trittst, darfst du auch mal einen Blick auf deine eigenen Beiträge werfen. Deine Art, andere anzugreifen, ist mir unverständlich. Ich hab dich ja in #54 auch nicht so blöde angemacht, obwohl dein Beitrag ziemlich alles durcheinander geworfen hat. Warum musst du eigentlich immer so um dich treten? Wenn dir hier alles zu blöd ist, musst du dich nicht beteiligen.

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

    Einmal editiert, zuletzt von Gnom (4. Januar 2023 um 11:42)

  • Moinsen,

    mit einem ESP8266 halt nur mit einem HW-UART und zwei SoftSerials.

    Ich weiss zwar nicht mit welcher der vielen ESP8266 du hier schon gearbeitet hast, aber ich kann dir aus eigener Erfahrung sagen, wenn zudem die WebSchnittstelle aktiv wird, kannst du auf einem ESP8266 in den von mir genutzten Varianten kein zweite via "Softserial" bereitgestellte Schnittstelle betreiben. Das Init klappt noch, aber wenn du dann Senden und in der Folge auch wieder Empfangen willst, kackt dir das ESP8266 ab ! Da hilft dann nur noch die Gewalthammer-Methode Stromverbindung trennen. Deswegen ist die Entscheidung für ein ESP32 schon richtig. Und außerdem so habe ich gelesen, oder es zumindest verstanden, will er nun mit dem ESP32 über Optokoppler getrennt, drei dieser MAX232 Platinen wie aus Beitrag #51 nutzen. Damit hat sich nun und ohnehin die ganze Diskussion über einen Switching-Methode einer einzelnen seriellen Schnittstelle erledigt. Das Thema Multiplexer, oder Eigenbauschaltung ist, so habe ich den TO verstanden vom Tisch. Und damit wird der Aufbau und die Anzahl der Platinchen auch kleiner. ESp32 dreimal raus über die Optokoppler in diese MAX232 RS232 Platinen, diese gesondert versorgt, wegen Aufrechterhaltung der galvanischen Trennung, und fertig ist der LACK. Was gibt es da noch groß zu diskutieren ?

    Franky

  • Moinsen

    Franky hat sich einiges an Arbeit mit der Schaltung gemacht, ich persöhnlich würde die Schaltung auf den ersten Blick für zu komplex halten. Vielleicht sollte man auch ersteinmal schauen ob eine Umschaltung per RS232 klappt und ob die Switche ständig Daten senden, bevor man sich mit einer Schaltung befasst.

    Das Problem ist nun einmal dieses gewesen, was aber mit der Entscheidung des TOs vom Tisch ist, wenn man mit nur einer seriellen Schnittstelle 3 getrennte Ausgänge versorgen will, muss man auch an den Rückkanal denken, und hierbei darf es dann nicht zu einer Signal Vermischung aus 2 unterschiedlichen Eingängen kommen. Deswegen ist diese von dir via "UND" Gatter vorgeschlagene Lösung ohne einen ext. Multiplexer dann auch auf den Rückkanal RX angewendet worden, oder muss werden, damit falls es zu unerwarteten Rückmeldungen von den Switches zu keiner Signal Störung kommt. Und wenn alle 3 Steuer-GPIOs auf LOW sind, kommt aus dem RX- OUT der Logikgatter auch kein Signal heraus. Erst "UND" mit der Portzuweisung verknüpft, und dann als "ODER" zusammengeführt auf eine RX Leitung. Das passt ganz locker auf eine EURO-Lochraterplatine. Aber ich glaube das Thema ist ohnehin durch, und Ad acta gelegt, denn bei einer 3 Port / Schnittstellenlösung macht es auch nichts wenn der Switch etwas sendet, und das ESP nicht auf diesem Kanal lauscht. Dann geht das Signal einfach unter.

    Franky

  • Herzlichen Glückwunsch, dass du hier entscheidest, was der TO will und wann die Diskussion beendet ist. Du merkst nicht so wirklich, auf welchem Gleis du fährst, oder?

    Die Optokoppler hatte tutter in Verbindung mit der Tasterbrückung ins Spiel gebracht. Eine galvanische Trennung der seriellen Verbindung war dabei nicht seine Idee. Ob die nötig oder geboten ist, darüber kann man sicher wieder trefflich streiten.

    Und beim ESP8266 würde es mich schon sehr wundern, wenn man es nicht schaft, Serial und Webinterface irgendwie so zur Zusammenarbeit zu bewegen, dass sie die hier gestellte Aufgabe bewältigen. Dann könnt man den Chip nämlich eigentlich auch gleich einstampfen.

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

  • Franky hat sich einiges an Arbeit mit der Schaltung gemacht, ich persöhnlich würde die Schaltung auf den ersten Blick für zu komplex halten. Vielleicht sollte man auch ersteinmal schauen ob eine Umschaltung per RS232 klappt und ob die Switche ständig Daten senden, bevor man sich mit einer Schaltung befasst.

    Damit würde sich die Schaltung eines ESP8266 mit 3 steuerbaren TTL zu RS232 Pegelwandlern, vom Typ MAX3222 vermutlich sehr vereinfachen lassen.

    Der MAX3222 hat zur Steuerung eine Poweroff bzw. EN Funktion. Gehen die RS232 Daten vom ESP8266 an alle 3 Pegelwandler, könnte man mit diesen Signalen steuern, welcher Pegelwandler an ist bzw. ob dieser auf Empfang ist. Ob man die TTL Signale einfach zusammen schalten kann müsste man testen, ggf. braucht es noch etwas Hühnerfutter zum Entkoppeln der Signale. Bei einer geringen Baudrate & Entfernung wäre ich optimistisch, aber vielleicht habe ich auf die Schnelle auch ein Detail übersehen.

  • Moinsen,

    Herzlichen Glückwunsch,

    Und du bist der alleinige GOTT, der bestimmt was der TO macht. Vor allem weil es dir an der Fähigkeit fehlt, verstehendes Lesen anzuwenden.
    Der TO hat geschrieben, das er sich für diese RS232 Platinen mit MAX232 entscheiden hat. Das ist in #51 zu lesen. Dann hat er sich für eine galvanische Trennung ebenfalls in diesem Beitrag entscheiden, und erst im #58 hat er bekannt gegeben, dass er sich nun doch für ein ESP32 entschieden hat. Damit war schon mit dem Beitrag 51 das Thema Taster oder deren Umgehung mittels Relais alternativ Transistoren / Optokoppler vom Tisch.
    Man muss dann halt auch mal alles lesen, und die Reihenfolge der Posts beachten, sowie welche Entwicklung sich dann aus diesen darin gemachten Aussagen ergibt.
    Vielleicht solltest du mal etwas runter kommen, un auch mal akzeptieren, dass der TO selber Entscheidungen getroffen hat, die er uns auch so mitgeteilt hat. Da kannst du weiter mit dem Kopf durch die Wand :wallbash: so lange und so viel wie du willst.

    Franky

  • Wofür die Optokoppler nun genau sein sollen, ist mir auch nicht ganz klar. Ich hab dass so verstanden, das diese für die Taster sein sollen, deshalb hatte ich auch etwas in Beitrag #61dazu geschrieben.

    M.E. entsteht die meiste Verwirrung, wenn ein TE zu wenig bzw. ohne ausreichende Infos schreibt und die anderen eher zu viel schreiben.

  • TO hat eine Idee, kann diese aber nicht richtig ausdrücken und es fehlen Kenntnisse.

    Andere, die dann helfen, setzen es so um, wie sie es nach ihren Vorstellungen machen würden.

    Deswegen kommen oft Sachen bei raus, die niemand braucht.

    In der Softwareentwicklung ist es ganz schlimm. Wenn man irgendeine Bude beauftragt ein Programm zu schreiben und nicht von Anfang an pedantisch definiert, was das Programm alles können muss, bekommt man am Ende einfach irgendwas, aber nicht das, was man eigentlich haben wollte.

    Also, das, was hier im Forum stattfindet, findet auch außerhalb in großen Unternehmen statt.

    Der Unterschied ist, dass das einen Haufen Geld kostet und wenn sich hier jemand irrt, können die anderen daraus lernen.

  • @DeaD_EyE sehr schön formuliert!

    Also der TO staunt hier die ganze Zeit Bauklötze! Das könnt ihr mir glauben! Also der gute TO hat sich dafür entschieden irgendwie alles zu machen ;-).

    Was bedeutet das? Ganz einfach die Oktokopller Boards sind heute angekommen. Auf die Eingangsseite habe ich einen notwendigen Wiederstand von ca 100Ohm ermittelt.

    Warum:

    ESP 8266 liefert 3,3 V bei geschalteten Port. Das Board hat Pc817 Bestückung. Somit benötigen diese 1,2 V . 3,3V -1,2V = 2,1 V

    2,1V / 0,02 A = 105 Ohm

    Die Gegenseite messe ich gleich noch mal durch und halt euch auf den laufenden.

    PS: die Vorgehensweise mit RS232 ist noch nicht vom Tisch ;)

  • Das ist ganz einfach. Der ESP8266 hat eine UART Schnittstelle mit TTL-ähnlichen Pegeln. Damit man wenn man die Pegel der Gegenstelle nicht kennt, immer schön Kompatibel bleibt, setzt man das TTL Signal über einen MAX232 auf die Spannungen um, die normal für eine RS232 Übertragung vorgesehen ist. Damit kann man aus den über beide GPIOs RX / TX eine serielle Kommunikation aufbauen.

    und leider so unvernünftig!

    hat hier im PI forum nichts zu suchen da alle xx232 (z.B. MAX232, ST232) Chips erst ab 4,5V arbeiten und somit 3,3V unverträglich sind, kann Fehler, Nichtfunktion oder kaputte Bauteile bedeuten!

    Für PI, Pico und ESP32 gibt es verträgliche MAX3232 3,3V Alternativen

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Moinsen,

    und leider so unvernünftig!

    Ich weiss zwar nicht weil die Details in dem Satz nicht genannt werden wie du zu dieser Aussage kommst.
    Wenn man einen MAX232 verwendet, und das trifft auch auf diese Fertigplatinen zu, die der TO verwenden will, dann ist dieser Aussage Falsch. Wenn du auf das Schaltbeispiel dich beziehst, dann ist zwischen der HPIO Seitigen Schaltung und dem MAX232 ein Optokoppler zur Spannungstrennung vorgesehen. Auch hier würde ich dich bitte die immer von dir genannte Gründlichkeit der Datenanalyse anzuwenden.
    Nirgendwo habe ich geschrieben, dass man den MAX232 der mit 5 Volt betrieben werden muss, direkt mit einem GPIO welcher nur 3,3 V Kompatibel ist verbunden wird. Und zum Ausgangsszenario zurückzukommen, das ESP8266 gibt es in den Varianten 5,0 V verträgliche GPIOs.
    Würdest du das bitte mal aus deiner Betrachtungsweise aufklären ! Danke

    Franky

  • der Ruhepegel ist VCC und 5V ICs wie der ST232 oder MAX232 geben dann 5V auf den GPIO!

    Schaut ins Datenblatt!

    Wer das nicht versteht sollte nicht solche Chips wählen und darüber schreiben!

    An PI, Pico und ESP Ports gehören nur Chips die mit 3,3V laufen (ausgenommen Unidirektionale Pegelwandler oder mit 2 VCC)

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Liebe Nutzer, euer RPi arbeitet mit 3.3V und wenn ihr an den GPIO eine höhere Spannung einspeist, kommt manchmal der magische Rauch.

    Höhere Spannungen können tolle Rauch- und Blitzeffekte hervorrufen, aber leider nur einmal.

    Manchmal ist es aber auch so langweilig, dass nichts passiert und nichts mehr funktioniert.

    Manchmal hat man Glück und kann den RPi mit einem defekten GPIO weiterhin nutzen. Da muss man aber schon viel Glück haben.

  • Moinsen

    Wer das nicht versteht sollte nicht solche Chips wählen und darüber schreiben!

    Wenn wie vorgesehen und vom TO auch gesagt, das er mit dem GPIO-OUT 3,3 V eine Optokoppler Eingang speist, bzw auf der Gegenseite ( RX ) den Optokopplerausgang auf den GPIO RX schaltet, die Einspeisung des für den TX Ausgang des OpKo mit 5,0V und des RX Ausgang des OpKo mit 3,3 V der darin enthaltenen Fototransistoren betreibt, und somit Ausgansgseitig zum MAX232 immer 5,0 Volt anliegen, was soll da passieren ?

    Franky

  • Wenn wie vorgesehen und vom TO auch gesagt, das er mit dem GPIO-OUT 3,3 V eine Optokoppler Eingang speist,

    dazu braucht man hi speed Optokoppler und getrennte DC/DC Wandler, hatte ich mal gebaut, aber der Aufwand muss erst mal gerechtfertigt sein.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Moinsen,

    dazu braucht man hi speed Optokoppler und getrennte DC/DC Wandler, hatte ich mal gebaut, aber der Aufwand muss erst mal gerechtfertigt sein.

    Ich möchte dir jetzt nichts vorwerfen, aber als das Thema RS232 angesprochen wurde, wurde auch auf das Protokoll verwiesen. Ich weiss jetzt nicht inwieweit du das verfolgt hast, und dir auch nichts unterstellen, aber wir sprechen hier nur von 19.200 Baud für diese HDMI Switches. Das schafft fast jeder gewöhnliche Optokoppler, wenn ich von 8 Bit = 1Byte = 1 Baud ausgehe.

    Franky

  • aber wir sprechen hier nur von 19.200 Baud für diese HDMI Switches. Das schafft fast jeder gewöhnliche Optokoppler, wenn ich von 8 Bit = 1Byte = 1 Baud ausgehe

    dummerweise muss invertiert werden (RS232 Ruhepegel ist high) und wenn man einen Optokoppler als Inverter einsetzt werden die Flanken rund weil von high auf low keiner die Ladung ausräumt. Ich musste mir damals mit 4 Mbit Optokoppler behelfen die aber Versorgung auf der Trennseite brauchte!

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Hallo an alle, also hier der aktuelle Stand. Die Lösung mit den Oktokopplern funktioniert und darüber bin ich sehr froh. Da mein ESP32 noch immer nicht da ist liegt die weitere Lösung über RS232 erstmal auf Eis - zumindestens bis die Hardware da ist!

    Danke noch mal an alle die geholfen haben.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!