• IT-Karriere:
  • Services:

Verbindungsprobleme

Wir haben nun eine Lösung gebaut, bei der wir den Musikplayer über drei Wege steuern können: per Mini-Web-App auf dem Raspberry, per Mini-Web-App auf einem anderen Rechner oder Smartphone mit Netzwerkzugriff auf den Raspberry oder auch per direkten Zugriff auf die Bluetooth-Schnittstelle.

Stellenmarkt
  1. HOTTGENROTH & TACOS GmbH, Münsterland
  2. Friedrich Lange GmbH Fachgroßhandel für Sanitär und Heizung, Hamburg

Die grundlegende Implementierung dafür haben wir besprochen. Einen Faktor haben wir aber bislang nicht miteinbezogen: die Verbindungsstabilität. Sowohl die Netzwerk- als auch die Bluetooth-Verbindung kann jederzeit abbrechen. Unter Umständen ist das sogar erwünscht, um Strom zu sparen. Wir müssen damit also irgendwie umgehen.

Wir konzentrieren uns hier auf die Bluetooth-Verbindung, sie erwies sich zeitweise als relativ instabil. Außerdem kann der Server nicht einfach per F5 neu gestartet werden, die Webanwendung hingegen schon. Die folgenden Überlegungen sollten aber trotzdem bei eigenen Projekten auch auf die Websocket-Verbindung angewendet werden. In unserem Skript versucht die Webanwendung einfach, die Websocket-Verbindung bei einem Abbruch wieder herzustellen, ohne dem Nutzer dies zu signalisieren.

Auf der Seite des Musikplayers können wir bei einem Verbindungsabbruch recht wenig tun, als Bluetooth-Peripheral ist es ein reiner Befehlsempfänger und kann keine Verbindung von selbst (wieder-) aufnehmen. Bleiben der Server und die Webanwendung übrig.

Und da gilt es, eine grundlegende Entscheidung zu treffen: Soll sich der Server als Vermittlungsstelle zwischen Websocket und Bluetooth um Verbindungsabbrüche kümmern oder die Webanwendung?

Variante 1: Der Server verfügt über keine Eigenintelligenz und ist vollständig von den Befehlen des Clients abhängig. Das schließt auch den Zustand der Bluetooth-Verbindung selbst ein. Der Server muss um entsprechende Befehle ergänzt werden, die BT-Verbindung zu öffnen und zu schließen. Außerdem muss er den Client über den erfolgreichen Aufbau der Verbindung wie auch einen Abbruch informieren. Vorteil ist, dass dadurch der Benutzer maximale Wahlfreiheit hat. Der Nachteil ist: Der Client beziehungsweise der Benutzer muss sich tatsächlich um alles kümmern.

Variante 2: Der Server kümmert sich um die BT-Verbindung und gaukelt dem Client stets eine existierende Bluetooth-Verbindung vor. Vorteil: Ein Client benötigt kaum eigene Logik und ist schnell implementiert. Der Server kann optimale Stromsparstrategien umsetzen. Nachteil: Der Client und der Benutzer sind in ihrer Flexibilität eingeschränkt. Der Aufwand, den Server zu implementieren, ist höher.

Variante 3: Der Server unterstützt beide Varianten, durch die über einen Serverbefehl umgeschaltet werden kann. Vorteil: maximale Flexibilität. Nachteil: hoher Programmieraufwand und Fehleranfälligkeit.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Das Henne-Ei-ProblemDummer Client - cleverer Server 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9. 8
  10. 9
  11. 10
  12. 11
  13. 12
  14.  


Anzeige
Hardware-Angebote
  1. (u. a. Ryzen 5 5600X 358,03€)
  2. (u. a. Ryzen 7 5800X für 469€)

Anonymer Nutzer 28. Jul 2014

Ich würde sagen hier könnte man eleganter und auch verhältnismäßig preiswert mit Zigbee...

savejeff 24. Jul 2014

perfekt! die Artikel sind echt zeitlos. ich werde noch ein paar Artikel nachholen.

holminger 24. Jul 2014

Meine RasPis dienen einmal als AirPrint-Server für einen 15 Jahre alten Kyocera...

currock63 23. Jul 2014

die guten alten Zeiten der c't, als es noch in fast jeder Ausgabe etwas zum selber...


Folgen Sie uns
       


Resident Evil Village - Fazit

Im Video stelle Golem.de die Stärken und Schwächen des Horror-Abenteuers Resident Evil 8 Village vor.

Resident Evil Village - Fazit Video aufrufen
Programm für IT-Jobeinstieg: Hoffen auf den Klebeeffekt
Programm für IT-Jobeinstieg
Hoffen auf den Klebeeffekt

Aktuell ist der Jobeinstieg für junge Ingenieure und Informatiker schwer. Um ihnen zu helfen, hat das Land Baden-Württemberg eine interessante Idee: Es macht sich selbst zur Zeitarbeitsfirma.
Ein Bericht von Peter Ilg

  1. Arbeitszeit Das Sechs-Stunden-Experiment bei Sipgate
  2. Neuorientierung im IT-Job Endlich mal machen!
  3. IT-Unternehmen Die richtige Software für ein Projekt finden

Weclapp-CTO Ertan Özdil: Wir dürfen nicht in Schönheit und Perfektion untergehen!
Weclapp-CTO Ertan Özdil
"Wir dürfen nicht in Schönheit und Perfektion untergehen!"

Der CTO von Weclapp träumt von smarter Software, die menschliches Eingreifen in der nächsten ERP-Generation reduziert. Deutschen Perfektionismus hält Ertan Özdil aber für gefährlich.
Ein Interview von Maja Hoock


    Fiat 500 als E-Auto im Test: Kleinstwagen mit großem Potenzial
    Fiat 500 als E-Auto im Test
    Kleinstwagen mit großem Potenzial

    Fiat hat einen neuen 500er entwickelt. Der Kleine fährt elektrisch - und zwar richtig gut.
    Ein Test von Peter Ilg

    1. Vierradlenkung Elektrischer GMC Hummer SUV fährt im Krabbengang seitwärts
    2. MG Cyberster MG B Roadster mit Lasergürtel und Union Jack
    3. Elektroauto E-Auto-Prämie übersteigt in 2021 schon Vorjahressumme

      •  /