Mares Puk Auslesen

Hardware- und Elektronikbasteleien, Ansteuerung von Schnittstellen und Peripherie.
Fragen zu "Consumer"-Problemen kommen in Offtopic.
Aspirant
Beiträge: 101
Registriert: 19.10.2006 12:19

Mares Puk Auslesen

Beitrag von Aspirant »

Hallo,
ich würde gern meinen Tauchcomputer ein Mare Puk mit dem USB Interface (USB2Serial) Drak selbst aus lesen um die Daten der Tauchgänge in eigenes Logbuch zu schreiben und nach belieben selber Grafisch auf zu bereiten.

Doch meine Problem ist wie bekomme ich raus wann ein Tauchgang im Datenstrom anfängt und wann hört er auf?
hier mal ein Mitschnitte der Daten der Originalsoftware
02:55:04 DRAK.exe IRP_MJ_CREATE Silabser0 SUCCESS Options: Open
02:55:04 DRAK.exe IOCTL_SERIAL_GET_BAUD_RATE Silabser0 SUCCESS
02:55:04 DRAK.exe IOCTL_SERIAL_GET_LINE_CONTROL Silabser0 SUCCESS
02:55:04 DRAK.exe IOCTL_SERIAL_GET_CHARS Silabser0 SUCCESS
02:55:04 DRAK.exe IOCTL_SERIAL_GET_HANDFLOW Silabser0 SUCCESS
02:55:04 DRAK.exe IOCTL_SERIAL_GET_BAUD_RATE Silabser0 SUCCESS
02:55:04 DRAK.exe IOCTL_SERIAL_GET_LINE_CONTROL Silabser0 SUCCESS
02:55:04 DRAK.exe IOCTL_SERIAL_GET_CHARS Silabser0 SUCCESS
02:55:04 DRAK.exe IOCTL_SERIAL_GET_HANDFLOW Silabser0 SUCCESS
02:55:04 DRAK.exe IOCTL_SERIAL_SET_BAUD_RATE Silabser0 SUCCESS Rate: 38400
02:55:04 DRAK.exe IOCTL_SERIAL_CLR_RTS Silabser0 SUCCESS
02:55:04 DRAK.exe IOCTL_SERIAL_CLR_DTR Silabser0 SUCCESS
02:55:04 DRAK.exe IOCTL_SERIAL_SET_LINE_CONTROL Silabser0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8
02:55:04 DRAK.exe IOCTL_SERIAL_SET_CHAR Silabser0 SUCCESS EOF:0 ERR:0 BRK:0 EVT:0 XON:0 XOFF:0
02:55:04 DRAK.exe IOCTL_SERIAL_SET_HANDFLOW Silabser0 SUCCESS Shake:0 Replace:0 XonLimit:0 XoffLimit:0
02:55:04 DRAK.exe IOCTL_SERIAL_GET_TIMEOUTS Silabser0 SUCCESS
02:55:04 DRAK.exe IOCTL_SERIAL_SET_TIMEOUTS Silabser0 SUCCESS RI:500 RM:0 RC:500 WM:0 WC:1000
02:55:04 DRAK.exe IRP_MJ_CLEANUP Silabser0 SUCCESS
02:55:04 DRAK.exe IRP_MJ_CLOSE Silabser0 SUCCESS
02:55:06 DRAK.exe IRP_MJ_CREATE Silabser0 SUCCESS Options: Open
02:55:06 DRAK.exe IOCTL_SERIAL_GET_BAUD_RATE Silabser0 SUCCESS
02:55:06 DRAK.exe IOCTL_SERIAL_GET_LINE_CONTROL Silabser0 SUCCESS
02:55:06 DRAK.exe IOCTL_SERIAL_GET_CHARS Silabser0 SUCCESS
02:55:06 DRAK.exe IOCTL_SERIAL_GET_HANDFLOW Silabser0 SUCCESS
02:55:06 DRAK.exe IOCTL_SERIAL_GET_BAUD_RATE Silabser0 SUCCESS
02:55:06 DRAK.exe IOCTL_SERIAL_GET_LINE_CONTROL Silabser0 SUCCESS
02:55:06 DRAK.exe IOCTL_SERIAL_GET_CHARS Silabser0 SUCCESS
02:55:06 DRAK.exe IOCTL_SERIAL_GET_HANDFLOW Silabser0 SUCCESS
02:55:06 DRAK.exe IOCTL_SERIAL_SET_BAUD_RATE Silabser0 SUCCESS Rate: 38400
02:55:06 DRAK.exe IOCTL_SERIAL_CLR_RTS Silabser0 SUCCESS
02:55:06 DRAK.exe IOCTL_SERIAL_CLR_DTR Silabser0 SUCCESS
02:55:06 DRAK.exe IOCTL_SERIAL_SET_LINE_CONTROL Silabser0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8
02:55:06 DRAK.exe IOCTL_SERIAL_SET_CHAR Silabser0 SUCCESS EOF:0 ERR:0 BRK:0 EVT:0 XON:0 XOFF:0
02:55:06 DRAK.exe IOCTL_SERIAL_SET_HANDFLOW Silabser0 SUCCESS Shake:0 Replace:0 XonLimit:0 XoffLimit:0
02:55:06 DRAK.exe IOCTL_SERIAL_GET_TIMEOUTS Silabser0 SUCCESS
02:55:06 DRAK.exe IOCTL_SERIAL_SET_TIMEOUTS Silabser0 SUCCESS RI:500 RM:0 RC:500 WM:0 WC:1000
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: <
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 5
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 1
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 2
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 8
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 8
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: >
02:55:06 DRAK.exe IOCTL_SERIAL_SET_WAIT_MASK Silabser0 SUCCESS Mask: RXCHAR
02:55:06 DRAK.exe IOCTL_SERIAL_WAIT_ON_MASK Silabser0 SUCCESS
02:55:06 DRAK.exe IRP_MJ_READ Silabser0 SUCCESS Length 68: <000709000057560056A3000B1A06070100007B08010011340001000100000000A5>
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: <
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 5
02:55:06 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 1
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 2
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 8
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 8
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: >
02:55:07 DRAK.exe IOCTL_SERIAL_SET_WAIT_MASK Silabser0 SUCCESS Mask: RXCHAR
02:55:07 DRAK.exe IOCTL_SERIAL_WAIT_ON_MASK Silabser0 SUCCESS
02:55:07 DRAK.exe IRP_MJ_READ Silabser0 SUCCESS Length 68: <000709000057560056A3000B1A06070100007B08010011340001000100000000A5>
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: <
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 5
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 1
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 2
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 2
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 8
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: A
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: >
02:55:07 DRAK.exe IOCTL_SERIAL_SET_WAIT_MASK Silabser0 SUCCESS Mask: RXCHAR
02:55:07 DRAK.exe IOCTL_SERIAL_WAIT_ON_MASK Silabser0 SUCCESS
02:55:07 DRAK.exe IRP_MJ_READ Silabser0 SUCCESS Length 68: <0120A001000101C800011E00013200FF0000000000000000000000000000FF00A7>
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: <
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 5
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 1
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 4
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 2
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 8
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: C
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: >
02:55:07 DRAK.exe IOCTL_SERIAL_SET_WAIT_MASK Silabser0 SUCCESS Mask: RXCHAR
02:55:07 DRAK.exe IOCTL_SERIAL_WAIT_ON_MASK Silabser0 SUCCESS
02:55:07 DRAK.exe IRP_MJ_READ Silabser0 SUCCESS Length 68: <010000020073760004010809181112FF0A00A04D0000087F0000000000000000C9>
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: <
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 5
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 1
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 6
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 2
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 0
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: 8
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: E
02:55:07 DRAK.exe IRP_MJ_WRITE Silabser0 SUCCESS Length 1: >
02:55:07 DRAK.exe IOCTL_SERIAL_SET_WAIT_MASK Silabser0 SUCCESS Mask: RXCHAR
02:55:07 DRAK.exe IOCTL_SERIAL_WAIT_ON_MASK Silabser0 SUCCESS
02:55:07 DRAK.exe IRP_MJ_READ Silabser0 SUCCESS Length 68: <FFFFFFFFFFFFFFFFFFFFFF4E0AFFFFFF3B00200020001B000001010000000000C0>
Also die Einstellungen bis Zeil 34 für der Port habe ich schon hin bekommen.

Wenn ich Zeile 36 bis 47 sende bekomme genau die Antwort wie in Zeile 50.

Nun meine Frage sende ich immer die Start Adressen für den nästen Datenblock?
Und wie finde ich die Informationen in den Datenblock.

Folgendes muss meiner Meinung nach enthalten sein.

ID >>> Tauchgang Kennung
Datum, Uhrzeit >>> Tauchgang beginn
Temperatur >>> min Wasser Temperatur
Dauer >>> Tauchgang dauer in min
Wasser >>> Süß oder Salz
Luft >>> Luft, Nitrox (Gemisch Verhältnis)
Tiefenmessung >>> ca alle 40sec wird die Tiefe gemessen
Tauchunfall >>> Deco, Nullzeit

Ich hoffe das Hilft weiter falls noch fragen sind versuche ich sie zu beantworten.

Ich möchte keine Lösung sondern ein weg.

ich habe selbst verständlich Google und Co bereits sehr erfolglos bemüht.

MFG Aspi

Danke an alle die zu Helfen versuchen
Ich würde mich ja gerne geistig mit dir duellieren, aber wie ich sehe bist du unbewaffnet.
================================
WinXP Pro, W2k3, Eisfair
-----------------------------
PB 4.40 auf WinXPpro kauf
Aspirant
Beiträge: 101
Registriert: 19.10.2006 12:19

Beitrag von Aspirant »

Ist es eigentlich möglich mit Hilfe der DLL's Schlüsse auf das Datenprotokoll zuziehen?
oder mit Hilfe der Log Datei?
[DEBUG][TrsInit] trying to open com port 3
[DEBUG][TrsInit] opened com port 3
[DEBUG][TrsClose] closing com port
[DEBUG][TrsInit] trying to open com port 3
[DEBUG][TrsInit] opened com port 3
[DEBUG][TrsClose] closing com port
[DEBUG][TrsInit] trying to open com port 3
[DEBUG][TrsInit] opened com port 3
[DEBUG][TrsClose] closing com port
[DEBUG][DimensioneProfili] called
[DEBUG]DimensioneProfili: iDCType = 7 (Nemo/NemoWide/Puck)
[DEBUG][GetTotalDives] Total samples 237
[DEBUG][GetTotalDives] Address = 83d
[DEBUG][GetTotalDives] Total bytes 529
[DEBUG][GetTotalDives] Expected bytes 529
[DEBUG][GetTotalDives] Total samples 6
[DEBUG][GetTotalDives] Address = 7fa
[DEBUG][GetTotalDives] Total bytes 67
[DEBUG][GetTotalDives] Expected bytes 67
[DEBUG][GetTotalDives] Total samples 207
[DEBUG][GetTotalDives] Address = 625
[DEBUG][GetTotalDives] Total bytes 469
[DEBUG][GetTotalDives] Expected bytes 469
[DEBUG][GetTotalDives] Total samples 155
[DEBUG][GetTotalDives] Address = 4b8
[DEBUG][GetTotalDives] Total bytes 365
[DEBUG][GetTotalDives] Expected bytes 365
[DEBUG][GetTotalDives] Total samples 119
[DEBUG][GetTotalDives] Address = 393
[DEBUG][GetTotalDives] Total bytes 293
[DEBUG][GetTotalDives] Expected bytes 293
[DEBUG][GetTotalDives] Total samples 6
[DEBUG][GetTotalDives] Address = 350
[DEBUG][GetTotalDives] Total bytes 67
[DEBUG][GetTotalDives] Expected bytes 67
[DEBUG][GetTotalDives] Total samples 57
[DEBUG][GetTotalDives] Address = 2a7
[DEBUG][GetTotalDives] Total bytes 169
[DEBUG][GetTotalDives] Expected bytes 169
[DEBUG][GetTotalDives] Total samples 136
[DEBUG][GetTotalDives] Address = 160
[DEBUG][GetTotalDives] Total bytes 327
[DEBUG][GetTotalDives] Expected bytes 327
[DEBUG][GetTotalDives] Total samples 63
[DEBUG][GetTotalDives] Address = ab
[DEBUG][GetTotalDives] Total bytes 181
[DEBUG][GetTotalDives] Expected bytes 181
[DEBUG][GetTotalDives] Total samples 2
[DEBUG][GetTotalDives] Address = 70
[DEBUG][GetTotalDives] Total bytes 59
[DEBUG][GetTotalDives] Expected bytes 59
[DEBUG][GetTotalDives] Total samples 65535
[DEBUG][GetTotalDives] Address = 3fcb
[DEBUG][GetTotalDives] Total bytes 65535
[DEBUG][GetTotalDives] Expected bytes 53
[DEBUG][GetTotalDives] 10 dives found, bytes read : 2526
[DEBUG]Puck translating samples
[DEBUG][DumpTranslatedHeader] Dive on 24/09/2008 at 17:18
[DEBUG][DumpTranslatedHeader] air/nitrox/bt/free mix flag : 0
[DEBUG][DumpTranslatedHeader] anno : 8
[DEBUG][DumpTranslatedHeader] mese : 9
[DEBUG][DumpTranslatedHeader] giorno : 24
[DEBUG][DumpTranslatedHeader] ora : 17
[DEBUG][DumpTranslatedHeader] minuti : 18
[DEBUG][DumpTranslatedHeader] dive time (p.ti acquisiti) : 237
[DEBUG][DumpTranslatedHeader] max depth (decimetri) : 100
[DEBUG][DumpTranslatedHeader] min temp (°C) : 8
[DEBUG][DumpTranslatedHeader] autozero : 1029
[DEBUG][DumpTranslatedHeader] salt/fresh setting flag : 0
[DEBUG][DumpTranslatedHeader] Vris ( m/min ) : 25
[DEBUG][DumpTranslatedHeader] altitudine setting flag : 0
[DEBUG][DumpTranslatedHeader] prog. Personale setting flag : 0
[DEBUG][DumpTranslatedHeader] set pallonata setting flag : 1
[DEBUG][DumpTranslatedHeader] buzzer setting flag : 1
[DEBUG][DumpTranslatedHeader] dive/stop setting flag : 0
[DEBUG][DumpTranslatedHeader] pallonata report flag : 0
[DEBUG][DumpTranslatedHeader] salto tappa report flag : 0
[DEBUG][DumpTranslatedHeader] violation stop report flag : 0
[DEBUG][DumpTranslatedHeader] deco dive report flag : 0
[DEBUG][DumpTranslatedHeader] % O2 : 32
[DEBUG][DumpTranslatedHeader] PPO2 / 10 : 160
[DEBUG][DumpTranslatedHeader] CNS Start Dive : 0
[DEBUG][DumpTranslatedHeader] CNS Max : 0
[DEBUG][DumpTranslatedHeader] % O2 decomix + cambio mix flag : 0
[DEBUG][DumpTranslatedHeader] Average depth : 0
[DEBUG][DumpTranslatedHeader] PPO2 decomix / 10 : 0
[DEBUG][DumpTranslatedHeader] LSB - DeepStop1; MSB - DeepStop2 : 0
[DEBUG][DumpTranslatedHeader] tessuto 1 (mBar * 8) : 7111
[DEBUG][DumpTranslatedHeader] tessuto 2 (mBar * 8) : 6850
[DEBUG][DumpTranslatedHeader] tessuto 3 (mBar * 8) : 6595
[DEBUG][DumpTranslatedHeader] tessuto 4 (mBar * 8) : 6419
[DEBUG][DumpTranslatedHeader] tessuto 5 (mBar * 8) : 6351
MFG Aspi
Ich würde mich ja gerne geistig mit dir duellieren, aber wie ich sehe bist du unbewaffnet.
================================
WinXP Pro, W2k3, Eisfair
-----------------------------
PB 4.40 auf WinXPpro kauf
Aspirant
Beiträge: 101
Registriert: 19.10.2006 12:19

Beitrag von Aspirant »

Eigentlich wollte ich den Beitag Löschen und noch mal von vorne Anfangen.
aber das geht irgend wie nicht.

Nun gut, jetzt habe ich die DLL und ihre Funktionen in MS ist es nun irgend wie möglich aus dem MS-Code den aufbau der Daten zu ersehen wie sie vom TC kommen?

MS = Maschinensprache
TC = Tauchcomputer

Achso ich Möchte keinen CODE der Original Software verwenden ich brauch blos den Aufbau der Daten wie sie vom TC kommen

MFG ASPI
Ich würde mich ja gerne geistig mit dir duellieren, aber wie ich sehe bist du unbewaffnet.
================================
WinXP Pro, W2k3, Eisfair
-----------------------------
PB 4.40 auf WinXPpro kauf
Antworten