German Daten-Empfang mit unterschiedlichen Z-Code?

D

Deleted member 103

Guest
Hallo Jungs,

mein Programm empfängt Daten über ein Bluetooth-Seriell-Gerät und es läuft alles gut.
Nun habe ich probiert mit einen anderen Bluetooth-Seriell-Gerät, aber die Daten kommen in ein ganz anderen Zeichencode, und ich verstehe nicht warum!
Ich verwende dieses Code:
B4X:
Sub AStream_NewData (Buffer() As Byte)
   LogMessage(BytesToString(Buffer, 0, Buffer.Length,"ISO-8859-1"))
End Sub

Sub LogMessage(Msg As String)
   txtLog.Text = txtLog.Text & Msg
   txtLog.SelectionStart = txtLog.Text.Length
   'Log(txtLog.Text)
End Sub

Mit dem erste Gerät kommen die Daten so:
I CP520 4694
S 024 START FINISH
T 1 M1 4.223000
T 1 M2 5.551000
R 21 1 1.330000
T 101 M1 7.697000
T 101 M2 8.406000
R 19 101 0.710000
T 2 M1 10.223000
T 2 M2 10.792000
R 15 2 0.570000
T 102 M1 12.899000
T 102 M2 13.448000
R 12 102 0.550000
T 3 M1 16.623000
T 3 M2 17.112000
R 2 3 0.490000
T 103 M1 20.027000
T 103 M2 20.557000
R 7 103 0.530000
T 201 M1 25.199000
T 201 M2 25.778000
R 16 201 0.580000
T 202 M1 28.374000
T 202 M2 28.923000
R 12 202 0.550000
T 203 M1 31.379000
T 203 M2 32.198000
R 20 203 0.820000
T 4 M1 36.122000
T 4 M2 36.671000
R 12 4 0.550000
T 104 M1 38.877000
T 104 M2 39.406000
R 7 104 0.530000
T 204 M1 42.102000
T 204 M2 42.641000
R 9 204 0.540000
T 304 M1 46.595000
T 304 M2 47.134000
R 9 304 0.540000
T 404 M1 55.690000
T 404 M2 56.179000
R 1 404 0.480000
T 504 M1 58.805000
T 504 M2 59.304000
R 4 504 0.500000
T 604 M1 1:01.261000
T 604 M2 1:01.771000
R 5 604 0.510000
T 904 M1 1:05.714000
T 904 M2 1:06.233000
R 6 904 0.520000
T 1025 M1 1:10.686000
T 1025 M2 1:11.275000
R 17 1025 0.590000
T 9999 M1 1:16.577000
T 9999 M2 1:17.246000
R 18 9999 0.670000
T 9998 M1 1:22.697000
T 9998 M2 1:23.236000
R 9 9998 0.540000
T 2425 M1 12:54.848000
T 2425 M2 12:55.337000
R 2 2425 0.490000
Mit dem zeite Gerät kommen die Daten so:
????æ?øæ???????ø??????à?ø???à???æ??æ?à??à?à????à?à??ø??ø???à?à?????à?ø?à?à??à???à?????à??ø??à?æ????à??àø???ø?ø??à???à?ø????à?à??æ????àø??????à?ø??à????ø??à?????à?????æ????à?????à???ø?ø??à???????à?à??????????????à??æ??????????????ø????????????????à??æ??à????????à????????à???????????ø??????ø?æ????????ø?????æ?æ??ø????æø?????à???æ??æ???æ??æ???æ?ø???æ????à?à?????à?à????æ??à??ø??à?æ??à??ø???àø????ø???à??à???à???à?à????à??à??ø??ø?ø?ø?ø??àø????ø?ø?ø?ø???à?ø???à?ø?ø?ø?ø????ø?ø?ø??àø??ø???ø?ø?ø???à?ø????ø?ø?ø?ø????à??æø???????à??æ?æ?????ø?

Ich weis nicht was für Zeichencode verwenden soll.

Ciao,
Filippo
 

klaus

Expert
Licensed User
Longtime User
Hallo Filippo,
Ich habe auf diesem Gebiet keine Erfahrung gib Dir aber so meine Gedanken was Ich versuchen würde.
Hast Du es mal mit andern Charactersets versucht ?
Sind die Textlängen die gleichen ?
Du könntest beide Texte in Dateien speichern und sie mit TotalCommander in Hexadezimal vergleichen.

Beste Grüsse.
 
D

Deleted member 103

Guest
Danke Klaus.

Du könntest beide Texte in Dateien speichern und sie mit TotalCommander in Hexadezimal vergleichen.
Hab auch schon probiert! Die Hexadezimal Zahlen sind leider auch nicht gleich.
 

klaus

Expert
Licensed User
Longtime User
Sind die Längen der Texte gleich ?
Wenn ja heisst das dass es ein 8 Bit Encoding ist.

Versuche mal im Internet nach character set zu suchen und mit verschiedenen Encodings schauen ob da hexadezimale Codes mit Buchstaben übereinstimmen.

Beste Grüsse.
 

manios

Active Member
Licensed User
Longtime User
Sieht aus wie ein Parity-Fehler?? Oder sind beide Geräte gleich?
 
D

Deleted member 103

Guest
Hallo manios,

also die 2 Geräte sind nicht gleich aber die Parameter sind gleich eingestellt.

Ich hab jetzt die Daten bevor encondiert werden überprüft und die sehen auch nicht gleich aus.
Hier die erste 5 Bytes mit dem Gerät wo OK ist: 73,32,67,80,53
Hier die erste 5 Bytes mit dem Gerät wo nicht OK ist: 134,152,152,128,230

@Klaus
Sind die Längen der Texte gleich ?
Nein, die Länge sind auch nicht gleich.
 
Top