-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Howto delete records #1
Comments
Hi Zbrag, Thanks, great to hear you find this useful 👍 The answers to both of your questions are related to how the device stores the data. Internally it uses a ringbuffer for the tracks. Every track is sequentially inserted in the ringbuffer. Each track consists of the header and then the samples of the track following that. At the beginning of the data block, two memory positions are placed, one which has the start of the first track, the second memory location the end of the last track (the 'empty' position). Before every track's header is a memory position to the next track. This implements a linked list. Now, because the device treats the memory as a ring buffer there is no such thing as the start and the end of the data. Tracks become 'unreachable' once the header of that track has been overwritten by samples of the subsequent tracks. If the header has been overwritten, one might consider the remainder of that track to be empty storage, in reality it still holds the old samples, but without the header they are harder to read. Deleting old traces is not possible (or at least, not that I know of), if you really want to remove the data from the device your only option is to make a new track that overwrites all the old data. So in short, saying how much storage is left is hard, because the storage is always 'full'. And deleting traces is 'not' possible (I think I know what the write commands for the memory are, but that is scary business and might ruin the device, so I won't be trying that.)
I tried creating a tool that allowed me to calculate how long the memory would last when recording at 60s intervals. You can try the latest version with Sample output:
It's probably a bit hard to digest, but The tracks storage of 2750000 bytes seems to be small, it's 2.75MB only, but Suunto did a terrific job at using this data efficiently so it still lasts a pretty long time. Especially with 60s interval, with 1s interval it wraps in about 20 hours. In regards to deleting tracks / overwritten header, I've had the situation once where the pod had already overwritten the header of the track I still needed to retrieve. I've attempted to write a recovery command, this uses the header of the last track and attempts to recover as much as possible. Again, this is relatively untested and rudimentary... This time it is even more important that it is used on a dump of the memory, as it can perform up to
In this command the Please let me know if this answers your questions. |
Wow, that is a very thorough description, very interesting to read. |
No problem, based on your question I've added a line to the main readme stating that deleting tracks is not necessary and added a link to this issue. Thanks! |
Hi,
awesome tool, it works perfectly, I have only a couple of questions
keep up the good work!
The text was updated successfully, but these errors were encountered: