Firmware feature requests?

Well, in such countries like Germany it could be a necessity. Up until very recently, private dashcams were essentially useless there if not even "risky" to operate. In case of an accident and following lawsuit courts had no settled opinion if such evidence is even acceptable. And you could easily end up with a fine for privacy law violation.
Recently there was a decision by a high court, that dashcam evidence is legit. But the privacy laws still apply, "wholesale" recording is still forbidden except directly related to the accident.

So, the dashcam market in Germany should slowly start to pick up.
This came up for the B1W and appears to have been solved by creating a small partition.
Not sure the 0906 is quite as easy since it doesn't reserve space for locked files.
You might find the discussion on wear levelling interesting if you read the full thread:
https://dashcamtalk.com/forum/threads/firmware-with-double-click-to-format-sd-card.34588/post-411142
 
This came up for the B1W and appears to have been solved by creating a small partition.
Not sure the 0906 is quite as easy since it doesn't reserve space for locked files.
You might find the discussion on wear levelling interesting if you read the full thread:
https://dashcamtalk.com/forum/threads/firmware-with-double-click-to-format-sd-card.34588/post-411142

Very interesting discussion, thanks for the hint.

Artificially small partitions are surely interesting idea to ponder, though I still have some reservations about wear leveling. Like in the medicine, the most important imperative for wear leveling should be "do no harm", so it shouldn't touch any areas (for spare blocks) it is not absolutely sure about their state.
Now if some space is not a part of the known (to card firmware) partition table or file system it does not mean that it is unused. No idea what SD card controller developers did or assumed, but I would not be terribly surprised if they took conservative approach. There is no worse publicity as "card X corrupts my data!!".

And I would need to forget file locking since there would be no spare space for this.

So, the choice is currently either to buy some law compliant but not very good dashcam like those by garmin or wait and see what happens. Germany (and I suspect Austria too) is quite a big market, so such feature requests should slowly trickle down to China or Korea, at least via all those discounter "brands" who will surely try to seize this new "market opportunity".
 
What does the Garmin do differently that makes it compliant?

They do state that "By default, the device uses a sensor to detect possible incidents and saves video footage automatically before, during, and after the detected event. The video footage is stamped with the time, date, and location of the event."

It can be just a wording misconception on my side, I don't own this camera and can't actually verify how it technically works. It can well be, that this is just another description of "file locking". I do not fancy to go buy and test it myself, since that particular model has couple of general "no-gos" for me.
 
Very interesting discussion, thanks for the hint.

Artificially small partitions are surely interesting idea to ponder, though I still have some reservations about wear leveling. Like in the medicine, the most important imperative for wear leveling should be "do no harm", so it shouldn't touch any areas (for spare blocks) it is not absolutely sure about their state.
Now if some space is not a part of the known (to card firmware) partition table or file system it does not mean that it is unused. No idea what SD card controller developers did or assumed, but I would not be terribly surprised if they took conservative approach. There is no worse publicity as "card X corrupts my data!!".

And I would need to forget file locking since there would be no spare space for this.

So, the choice is currently either to buy some law compliant but not very good dashcam like those by garmin or wait and see what happens. Germany (and I suspect Austria too) is quite a big market, so such feature requests should slowly trickle down to China or Korea, at least via all those discounter "brands" who will surely try to seize this new "market opportunity".
The wear levelling should work at a lower level than the partitioning, the wear levelling is part of the card, the partitioning is done by the operating system using the card, so basic wear levelling should know nothing about the partitioning or formatting and whatever partitions you use the wear levelling should do its job. On SSDs there is some interaction between the OS and the wear levelling through the Trim information which helps optimise performance and lifetime, but I suspect this isn't used for memory cards in cameras, and the wear levelling must still work even if not optimally.

The lack of reserved space for the locked files on the 0906 is a problem and would mean that you need to record maybe half an hour of footage to be safe, and remove/swap cards ASAP after an accident. If that is not good enough then maybe consider a B1W rather than your "not very good dashcam like those by garmin".
 
The wear levelling should work at a lower level than the partitioning, the wear levelling is part of the card, the partitioning is done by the operating system using the card, so basic wear levelling should know nothing about the partitioning or formatting and whatever partitions you use the wear levelling should do its job. On SSDs there is some interaction between the OS and the wear levelling through the Trim information which helps optimise performance and lifetime, but I suspect this isn't used for memory cards in cameras, and the wear levelling must still work even if not optimally.

I would suspect, that this kind of "low level" wear leveling would be not very effective and rather slow. The card would be forced to resort to dumb block write counting and then just exchanging blocks with "many" writes with other blocks with substantially less writes hoping that previously "less written" logical block will not suddenly receive writes itself. It would involve "double" writes thus increasing overall wear and most probably more than halve write performance.

On the other hand, SD Association does mandate (a rather simple) file system used in SD cards, so it is just logical to interpret its control structures to determine if some particular blocks are "used" or not. Free blocks can be safely erased without backing up their contents. This would allow a much more effective wear leveling with little additional complexity. I guess, it is not terribly difficult to empirically verify.
 
I would suspect, that this kind of "low level" wear leveling would be not very effective and rather slow. The card would be forced to resort to dumb block write counting and then just exchanging blocks with "many" writes with other blocks with substantially less writes hoping that previously "less written" logical block will not suddenly receive writes itself. It would involve "double" writes thus increasing overall wear and most probably more than halve write performance.

On the other hand, SD Association does mandate (a rather simple) file system used in SD cards, so it is just logical to interpret its control structures to determine if some particular blocks are "used" or not. Free blocks can be safely erased without backing up their contents. This would allow a much more effective wear leveling with little additional complexity. I guess, it is not terribly difficult to empirically verify.
Even a PC running Windows on an SSD will need to implement your "dumb" system since on a typical PC the OS and archived files permanently occupy large areas of the disk so to get even use, stuff has to be moved. The flash chips include the logic for doing this so it's not difficult for an SD card to do it. Obviously moving stuff creates extra writes, but this can considerably extend the life of the card.
 
Back
Top