Ich habe mal eine Frage zu Bluetooth LE. Es gibt da diverse Profile zur Uebertragung von Daten. (z.B Health, Thermometer usw.) Wenn man jetzt eine Anwendung macht die auf keines der vorhandenen Profile passt dann muss man sich was eigenes definieren. Das scheint auf der Seite des Gerätes auch kein Problem zu sein. Aber wie sieht das auf der anderen Seite aus, also dem Smartphone oder dem PC. Muss man da einen speziellen Treiber bereitstellen oder wie läuft das? Olaf
Das ist mir schon klar. Aber würde der im Smartphone integrierte Bluetooth-Stack die Daten eines ihm unbekannten Profils durchlassen? Oder kann eine App dem Stack des Smartphone das neue Profil bekannt machen? Olaf
Das geht bei Bluetooth LE anders, soweit ich das verstanden haben. Du hast keine Profile sondern Services. Einen Service definierst du mit einer 128-bit UUID, die du dir zufällig erzeugst. Z.B. 878757E7-B428-4187-B711-4082865CD930, die kannst du am Mac mit uuidgen erzeugen lassen. Dann gibt es darunter noch die "Characteristics". Die bekommen auch eine UUID. In der App scanst du erstmal nach allen Devices, die die Service-UUID haben. Damit verbindest du dich und fragst die Characterstics ab, und machst dir einen Notify draus. Es gibt zwar vorgegebene UUIDs z.B. für Heardrate, aber die musst du nicht benutzen, solltest auch nicht, damit dein Gerät eindeutig erkannt wird. Wenn das Gerät schon vorhanden ist, musst du einfach die Service- und Characteristics UUIDs rausfinden. Wenn du von "Treibern" sprichst, verwendest du sicherlich Windows, da musst halt sehen, ob du passende Bibliotheken findest, die du nutzen kannst. Auf IOS ist das einfach CoreBluetooth.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.