AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Bluetooth Serieller Port Status-Abfrage
Thema durchsuchen
Ansicht
Themen-Optionen

Bluetooth Serieller Port Status-Abfrage

Ein Thema von TERWI · begonnen am 26. Mär 2023 · letzter Beitrag vom 31. Mär 2023
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.398 Beiträge
 
Delphi 12 Athens
 
#1

AW: Bluetooth Serieller Port Status-Abfrage

  Alt 26. Mär 2023, 12:37
Prüfst du immer ALLE Ports?

Wenn du zu etwas Bestimmten dich verbinden willst, dann vorher einfach im BT nachsehen, ob es da ist.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
381 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Bluetooth Serieller Port Status-Abfrage

  Alt 26. Mär 2023, 13:02
Ja, ich prüfe zunächst alle verfügbaren COM's in der REG unter '\HARDWARE\DEVICEMAP\SERIALCOMM\'.
Je nach dem, was da sonst noch mittels USB verfügbar ist, sehe ich IMMER (oder nur) die "ge-Pairten" BT-COM's.
Hier aktuell COM 3/7 und 8/9 für die OBD-II BT-Adapter.


Hab schon in den BT-Demos rumhestöbert, aber nicht wirklich was brauchbares gefunden.
Ich weiss / hab ja 2 Geräte als Paired drin .... aber woher bekomme ich die Info, das es auch "Funk-Kontakt" gibt ?

Die Idee ist, vor evtl. Comport.Open nachzusehen, ob überhaupt was da ist.

Für WLAN hab ich da schon entsprechendes und suche für einen Connect vorhandene SSID's nach gewünschtem Namen, bzw. scanne da explizit noch mal sofern nicht(s) vorhanden.

... das gleiche hätte ich auch gerne für BT.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.398 Beiträge
 
Delphi 12 Athens
 
#3

AW: Bluetooth Serieller Port Status-Abfrage

  Alt 26. Mär 2023, 13:55
Auch ein realer Comport ist immer da, egal ob etwas am anderen Ende des Kabels hängt. (OK, dort gibt es beim Öffnen keinen Timeout, weil der Port ja da ist)

Hmmm....

Ob ein BT-Gerät einen Comport hat, findet man in den Profilen.

Welche gräte gerade da sind ... sollten bei der Suche nicht nur die Aktiven gefunden werden?
OK, ob das Gerät dann selber in sich den Port wirklich grade aktiv hat .... joar
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
381 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Bluetooth Serieller Port Status-Abfrage

  Alt 26. Mär 2023, 14:32
Damit wir uns nicht miss-verstehen:
Was da real (von WinDoof aktuell [online] gemeldet wird, ist ja bekannt.
D.h., was z.Zt. an COM's verfügbar ist, kann man ja wie o.g. per Registry mit dem Key '\HARDWARE\DEVICEMAP\SERIALCOMM\' auslesen.
Und wie ich bereits sagte, ist die "Ansprache" und oder Nutzung der verfügbaren COM's auch nicht das Problem.

Hier geht es explizit und dezidiert darum, das einmal "ge-PAIR'te" COMS's per BLUETOOTH eben IMMER "DA" sind.
Bumms-Täterä egal, ob aktiv / vorhanden / in Rechweite des jeweiligen Rechners !

Meine Frage / das Problem / mein Ansinnen war & ist:
-> Wie ermittle ich, ob ein BT-Gerät wirklich "Funktechnisch" erreichbar und überhaupt ansprechbar ist ?

... weil: Wenn nicht, dann kann ich mir den Versuch, zugehörigen COM-Port zu öffnen ohnehin sparen.

Also nochmal:
Für WLAn hab ich das (fast perfekt) implementiert:
- Nach gewünschter SSID suchen ...
- Falls nicht vorhanden, explizit noch (mehrmals) scannen.,
- Connecten ...

... und eben das gleiche für den BlauZahn in grün.
  Mit Zitat antworten Zitat
Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
381 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Bluetooth Serieller Port Status-Abfrage

  Alt 27. Mär 2023, 20:13
Zwischenmeldung:
Ich hab mir mal von den JEDIs die Bluetooth-API gezockt und minimalistisch geschrumpft.
Funzt zumindestens anscheinend besser (?) & schneller (!) als System.Bluetooth.
Ich sehe, was:
- ge-pairt ist ... oder eben nicht mittels Scan
- die Stati
-> AUTHENTICATED (wenn Paired immer true, sonst nicht)
-> REMEBERED (dito ...)
-> CONNECTED (immer false, ausser ich öffne "auf gut Glück" erfolgeich einen Serial-Port)

Leider fehlt (NICHT NUR MIR ?) irgendwie die Möglichkeit zu erkennen, ob:
- sich ein BT-Gerät "in Reichweite" befindet.
- geschweige denn, das es sich "zu weit entfernt"
D.h., ein erkennbarer Status ala "ist ansprechbar"
oder mittels einer CallBack-Proc "OnArrive" / "OnLeave" wie es das für USB-Geräte gibt ?

Muss man das wirklich "old-fashioned" im Polling abfragen ?

Bin ich nur zu doof da was zu finden ?
Oder gibbet dat garnich ?

Geändert von TERWI (27. Mär 2023 um 20:20 Uhr)
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.076 Beiträge
 
Delphi 12 Athens
 
#6

AW: Bluetooth Serieller Port Status-Abfrage

  Alt 28. Mär 2023, 20:16
Hast du schon mal die in Delphi enthaltenen BT Komponenten getestet?
Evtl. bieten die was?
  Mit Zitat antworten Zitat
Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
381 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Bluetooth Serieller Port Status-Abfrage

  Alt 29. Mär 2023, 09:33
Ja, hab ich.
Aus dem Demo's zu Bluetooth Classic und BT-Chat hab ich mir elementares in eigenen BT-Wrapper gebaut.

Hatte vor einiger Zeit auch mal einen WLAN-Wrapper gebastelt. Dort gibt es vom System her eine Ereignis-Routine, welch alle möglichen Events zurückliefert (Gerät connected/disconnected, Scan startet/end, Level changed, ...).
Damit kann man ganz wunderbar ermitteln, welches "Funkgerät" in der Nähe ist und wie gut / dünn dessen Signal ist.

In der System.Bluetooth oder auch JwaBluetoothAPIs.pas gibt es nur so etwas wie "Discover", was auch nur Geräte listed, die noch NICHT ge-pairt sind.

Bereits ge-pairte Geräte sind und bleiben vorhanden - ob diese ansprechbar / erreichbar sind oder nicht.
.... und genau das hätte ich gerne gewusst.

Die aus den "Devices" auslesbaren Stati sind auch nicht wirklich hilfreich.

Das ist echte KI: KEINE INTELLIGENZ !

Geändert von TERWI (29. Mär 2023 um 09:45 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz