GIPdA / MemoAladin

Uwatec MemoMouse replacement for Aladin dive computers
BSD 3-Clause "New" or "Revised" License
2 stars 0 forks source link

transfer also for simple entries without profile information? #1

Open Foerstemann opened 4 years ago

Foerstemann commented 4 years ago

HI! Great project and program, I just built three of them for the family - works like a charm and keeps Aladins "alive" despite the serial interface going to extinction on laptops. I have one question: On my devices this program will only transfer the logbook info of dives for which detailed profile information is available (usually 3-4 dives only). With the original memo-mouse one can also transfer the dives with only the simple information from the logbook (up to 39 dives, I believe).
Would it be possible to cull and transfer this information with the blue pill device as well? Cheers, Klaus

GIPdA commented 4 years ago

Hello! Nice to hear it's working for others :)

In short, I don't know if it's possible or not :-P My guess is that the software should handle that, but as MemoAladin only handles one command it may be missing a part of the protocol for that. MemoAladin pulls data from the mouse from a time point given by the software. The data contains depth profiles, and logbooks. Maybe you read the depth profiles but not the logbooks, or not all of them? Or your Aladin is a bit different and has more data or something. Which Aladin mouse do you have? And what software do you use?

To help you, I'll need to get some dive logs from your mouse to see if the missing dives are inside or not, and record the commands from the software to see if it sends something unsupported. The Blue Pilll should support an extra serial port to output the data, so you can easily read it and save everything to a file. I'll make the software modification, and you'll need a usb-serial adapter to read the data. How does that sounds to you?

How versed are you in Arduino/electronic stuff ? Just so I know how far I could go ;) And do you still have a functioning MemoMouse and the required antique PC? :-P Sniffing the RS232 of the original MemoMouse could be useful, but it may not be easy.

Cheers, Benjamin

Foerstemann commented 4 years ago

Hi Benjamin! Thanks for the quick response. If this requires additional programming etc. then please don‘t bother – I have an old memo mouse and the corresponding PC, so this is not an urgent issue. Whatever is in those logbooks can be read in at a later time, so this doesn’t have to travel on vacation with me. I thought that this might be an easy thing to implement or activate. I’m sort of OK with the programming, potentially I could also try to work this out myself. Provided I can find the time for this… I’ll try the current program a few more times first, maybe this is just a „misunderstanding“ between datatrack (I’m using the original one) and the Aladin. Thanks again and best regards, Klaus

Von: Benjaminmailto:notifications@github.com Gesendet: Freitag, 20. Dezember 2019 22:21 An: GIPdA/MemoAladinmailto:MemoAladin@noreply.github.com Cc: Förstemann, Klausmailto:foerstemann@genzentrum.lmu.de; Authormailto:author@noreply.github.com Betreff: Re: [GIPdA/MemoAladin] transfer also for simple entries without profile information? (#1)

Hello! Nice to hear it's working for others :)

In short, I don't know if it's possible or not :-P My guess is that the software should handle that, but as MemoAladin only handles one command it may be missing a part of the protocol for that. MemoAladin pulls data from the mouse from a time point given by the software. The data contains depth profiles, and logbooks. Maybe you read the depth profiles but not the logbooks, or not all of them? Or your Aladin is a bit different and has more data or something. Which Aladin mouse do you have? And what software do you use?

To help you, I'll need to get some dive logs from your mouse to see if the missing dives are inside or not, and record the commands from the software to see if it sends something unsupported. The Blue Pilll should support an extra serial port to output the data, so you can easily read it and save everything to a file. I'll make the software modification, and you'll need a usb-serial adapter to read the data. How does that sounds to you?

How versed are you in Arduino/electronic stuff ? Just so I know how far I could go ;) And do you still have a functioning MemoMouse and the required antique PC? :-P Sniffing the RS232 of the original MemoMouse could be useful, but it may not be easy.

Cheers, Benjamin

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/GIPdA/MemoAladin/issues/1?email_source=notifications&email_token=AN3DEVPJIES7547265UP7NLQZUZNZA5CNFSM4J5SVON2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHOGMLA#issuecomment-568092204, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AN3DEVKSECA4TLWNDINOYCDQZUZNZANCNFSM4J5SVONQ.

GIPdA commented 4 years ago

Hi Klaus, As you wish! It's a minor modification, so it wouldn't take long to do. And simply out of curiosity, it wouldn't bother me at all ;) My father doesn't do a lot of dives these days so he didn't hit this issue yet AFAIK (if it actually is, as you said). He also use DataTrack (and still working with Win7, outstanding! :P ).

Let me know what you find, and happy holidays :) Cheers, Benjamin

Madotan commented 6 months ago

Hi Benjamin,

just to add to this issue -> I have the same problem and cant figure out why. I tried datatrak, subsurface and diving log 6.0. The memomouse only imports 3-4 dives of over 20. I attached the log of subsurface. maybe this helps. I dont have an original memomouse for referencing.

subsurface.log

GIPdA commented 6 months ago

Hi Madotan, The mouse is sending all of its memory, so theoretically all dives should be available. Maybe the code doesn't send everything correctly. The log you joined seems to contain the mouse data, but it's being "repackaged" and probably doesn't contain everything. I would need the mouse's raw data to compare. If you're open to make and send me a dump of that data from your mouse, I may be able to find the issue.

Here's the how-to, for anyone interested, really: You would need to uncomment the line 146 ("Serial.write((uint8_t*)data, 2050);") to print all the data to the serial port. And use CoolTerm from Roger Meier https://freeware.the-meiers.org to save the data to a binary file (Set baud rate via Options > Serial Port, then set Capture Format to Raw Data in Options > Receive, then Connect, and then from menu Connection > Capture to Text/Binary file). When connected, send the logs from the mouse as normal, and the Serial.write will dump the buffer. You can try without capture to file first to check if data is incoming (you should receive about 2046 bytes). You can send me the file in private if you don't want it shared.

Madotan commented 6 months ago

Hi Benjamin,

I think i found the issue: The Aladin only saves around 200 minutes of Diving for Export with Details. The other dives can Not be exported. Now the normal memomouse makes sense, because it could save a lot more dives and is some Kind of middleman but with saving funcionality.

Edit: i Just read the other comments Here and the Memomouse can Export more dives. So i have to try your hint. But this Takes a few days.

Other Thing: can you test importing the memoaladin to Android Phones? I tried my Pixel 8 but It didnt Work. PC works fine. I tried the subsurface and the Diving log App. With Diving log the led Starts blinking fast as soon i connect. Then blinks slow after starting my Aladin and opening the Dive log. No Imports are happening.

Foerstemann commented 6 months ago

HI there, I have built the nice boxes and I ALSO have a memo-mouse. With the Memo-mouse, the information transferred is the last 200 minutes of dive profile (but only complete dives) AND the summary information for up to 50 dives. The summary is essentially what you can see when you go through the log-book on the Aladin itself plus the temperature. On the Aladin you can only go up to 36 dives, but with the memo-mouse the full 50 are read-out. I might try one day to produce a data-dump as you suggested but right now I don’t have time for that, unfortunately. [If you take the memo-mouse along on a vacation and regularly synchronize the Aladin with this, then you get the full dive profile transferred once you hook it up to a computer back home. Since the memo mouse has its own 9V battery, it can accumulate data without forgetting it.]

The USB-Box nicely transfers the 200 minutes of full dive profile, but not the summary information. In practice, this is not a big problem because instead of synchronizing with the memo-mouse, you can directly import the dive profiles into y notebook. I only take the memo-mouse along if I DON’T take my computer with me. And sometimes I don’t bother at all, typing the summary information directly into the data track logbook is not a big deal. I wish I had enough time & money to go diving so often that this would be bothersome…

So, in essence yes – the problem is solved, but mostly because it isn’t much of a problem to begin with.

Thanks again for this very nice tool! Klaus

Von: Madotan @.> Gesendet: Dienstag, 9. April 2024 11:30 An: GIPdA/MemoAladin @.> Cc: Förstemann, Klaus @.>; Author @.> Betreff: Re: [GIPdA/MemoAladin] transfer also for simple entries without profile information? (#1)

Hi Benjamin,

I think i found the issue: The Aladin only saves around 200 minutes of Diving for Export with Details. The other dives can Not be exported. Now the normal memomouse makes sense, because it could save a lot more dives and is some Kind of middleman but with saving funcionality.

So i think this issue can be closed.

— Reply to this email directly, view it on GitHubhttps://github.com/GIPdA/MemoAladin/issues/1#issuecomment-2044556501, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AN3DEVOHFOIR3CYT2ZGNQEDY4OYIZAVCNFSM4J5SVON2U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TEMBUGQ2TKNRVGAYQ. You are receiving this because you authored the thread.Message ID: @.**@.>>

GIPdA commented 6 months ago

Hello,

Ok, so the issue Madotan has is actually the same, the logbook entries that doesn't have depth profile are missing. Looking at my code, I might see the issue, kinda, because it should raise an error, stop and not send anything... which evidently is not the case.

The send code is in aladin.cpp, function sendAladin(..). I anticipated that it may not have a depth profile for a given logbook entry, but I also check if the depth profile is valid for every logbook entry, and stop if it doesn't (line 269). I guess that part has some malfunctioning edge case and end up using some garbage data that the PC software detects and ignores? Hard so say without data. My test data probably has too few dives to get to the bug (can't remember what's inside). So, if anyone can send me data with enough dives, I should be able to fix the issue. :)

Also, technically the STM coud also store dives like the MemoMouse, by throwing a bit more code at it...

Regarding Android, I don't have any android phone handy to test, sorry. I'll see if I can borrow one maybe. Have you tried to transfert from Aladin into the STM first, then launch the app ? Or does it blink fast as soon as you plug it in (rather than when connecting to it with the app)?