ESP32 Serial.end() beendet SerialBT gleich mit

Hallo zusammen,
mir ist gerade ein Verhalten aufgefallen, was ich noch nicht so ganz erklären kann.

In meinem Sketch kann ich wahlweise per Serial oder per Bluetooth ein paar Einstellungen vornehmen. Unter anderem die selbigen zu (de-)aktivieren.

Beende ich nun die Bluetooth-Verbindung mit SerialBT.end(); so klappt das ganz hervorragend.
Auch das Starten funktioniert.
Beende ich hingegen die Serielle Verbindung Serial.end(); beendet sich Bluetooth gleich mit.

Gibt es da einen Zusammenhang? Ist das ein Bug?
Habe noch nichts beim recherchieren zu diesem Verhalten gefunden.

Wofür soll Serial.end() überhaupt gut sein ?

Kann man machen, wenn die PIN ggfls. noch andere Aufgaben übernehmen sollen.

Habe einen großen Datenstrom, den ich irgendwohin schiebe. Je mehr Empfänger es gibt, je langsamer wird das natürlich.
Fand die Idee gut live zwischen Serial, SerialBT & einer SD-Karte umzuschalten. Und natürlich zu beenden, was ich nicht benötige.

Letztendlich reicht es natürlich auch, den ausgehenden Datenstrom entsprechend nicht weiterzuleiten und die Verbindung einfach offen zu lassen.
:thinking:
Hätte auch den Charme, jederzeit die Ausgabe über diesen Kanal wieder aktivieren zu können! So ein Serial.available() kostet auf dem ESP ja nicht viel.

"Umgeht" das o.g. Problem/Bug zwar nur, sollte aber klappen!
Danke für den Denkanstoß!

"natürlich" ist das nicht. Bei Serial ist es dem Sender völlig egal, ob jemand zuhört. Und ein paar bytes in einen Ringpuffer zu schreiben und wieder auszulesen, sollte vernachlässigbar gegenüber der eigentlichen Übertragungsgeschwindigkeit sein.

Gerne. Fragen infrage stellen ist oft Sinn eines Forums.
Für einfache Antworten gibt es Alexa, ihre Tante Google und andere Maschinen.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.