Welcher Datentyp ist das?

Gast #5834602
Lesenswert?

Hallo,

ich programmiere gerade einen Lopy Modul von Pycom und empfange von 
einem Sensor Daten wie im angehängten Bild. Was für ein Datentyp soll 
das darstellen? Aus den Werten werde ich nicht schlauer. Die Daten 
kommen vom einem Herzraten Sensor. Ich wollte meinen Herzschlag auslesen 
lassen.

MfG
Angehängte Dateien:
Moderator #5834994
Lesenswert?

Frag doch einfach Python:

1
>>> type(b'10496a03')
2
<class 'bytes'>

Die Werte sind also vom Typ bytes.

Edit:

Oder möchtest du den Datentyp des Return-Werts von char.value() wissen?
Dann lass in deinem Code die Konvertierung durch ubinascii.hexlify weg
und ersetze die print-Anweisung durch

1
print(type(char_value))
#5835034
Lesenswert?

Minimalist schrieb:
> Ist da jetzt jede Zeile ein call? Dann meint "char" in der Sprache was
> anderes als ich darunter verstehe.

Ist eventuell die Kurzform für "Characteristic" wie sie in BT LE GATT 
vorkommt - den BT LE Herzratensensor man hier halt erraten.

Daraus ergibt sich dann auch das Datenformat - falls der Sensor das 
Standardprofil für Herzsensoren verwendet. Steht dann auf Bluetooth.org.


Ich puzzele das mal auseinander:
1
b'10496A03' = 0x10 0x49 0x036A
Bedeutet:

Flags (1.Byte): Datenformat 8 Bit für HR, RR Wert ist präsent.
HR (2.Byte): 0x49 = 73 (dez) BpM
RR (3. 4.B): 0x36A = 874 (dez) 1/1024 sec.


Die längeren Werte enthalten mehr als einen RR, und sind daher um 2 
Bytes länger.
Gast #5839791
Lesenswert?

Jim M. schrieb:
> Ist eventuell die Kurzform für "Characteristic" wie sie in BT LE GATT
> vorkommt - den BT LE Herzratensensor man hier halt erraten.
>
> Daraus ergibt sich dann auch das Datenformat - falls der Sensor das
> Standardprofil für Herzsensoren verwendet. Steht dann auf Bluetooth.org.
>
> Ich puzzele das mal auseinander:b'10496A03' = 0x10 0x49 0x036A
> Bedeutet:
>
> Flags (1.Byte): Datenformat 8 Bit für HR, RR Wert ist präsent.
> HR (2.Byte): 0x49 = 73 (dez) BpM
> RR (3. 4.B): 0x36A = 874 (dez) 1/1024 sec.
>
> Die längeren Werte enthalten mehr als einen RR, und sind daher um 2
> Bytes länger.

Hi Jim,

vielen Dank für deine gute Erklärung. Ja, das "char" steht für 
Characteristics.
Ich habe nun das zweite Byte auslesen lassen. Es müsste der Herzschlag 
sein, den ich aus der Charakteristic mit der Nummer (10807 = 0X2A37) 
auslese. Die Werte, die ich erhalte, stimmen mit die der von der Polar 
Beat App überein.

Die Erklärung der Flags, die du beschreibst, habe ich im angehängten PDF 
File gefunden, welches ich mir auf der Homepage von Bluetooth 
heruntergeladen habe.

MfG
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren