Forum: Mikrocontroller und Digitale Elektronik SD Karten Auswahl Frage


von Gerhard O. (gerhard_)


Lesenswert?

Moin,

Kann mich jemand von Euch beraten mit welchen SD Karten im Angebot von 
Amazon von Euch schon gute Erfahrungen gemacht wurden? Ich brauche zwei 
Karten mit 512MB-2GB Kapazität für eine uC (Arduino) Anwendung mit dem 
1284er oder DB. Mit einer alten 2GB Kingston Karte funktioniert es 
derzeit auf dem 1284er als Referenzdesign.

Es geht um diese Auswahl in Kanada:
https://www.amazon.ca/2GB-SD-Card/s?k=2GB+SD+Card

Von welchen Marken sollte ich mich kategorisch fernhalten? Ich nehme an, 
daß das Risiko in der Bucht etwas größer ist wie bei Amazon. In welchen 
Preisgebiet hat man da noch wenig Risiko um das Lehrgeld in Grenzen zu 
halten?

Würde mich über konkreten nützlichen Hinweis freuen.

Grüße,
Gerhard

: Bearbeitet durch User
von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Meiner Erfahrung nach sind die Samsung Evo-Karten mit Abstand die besten 
(am schnellsten und die Latenz ist auch gleichförmig gering). Das 
bezieht sich aber auf SDHC-Karten (bis 32 GB). Die Arduino SD Library 
unterstützt diese auch, also kein Grund sich auf die alten SDSC-Karten 
zu beschränken.

von Gerhard O. (gerhard_)


Lesenswert?

Niklas G. schrieb:
> Meiner Erfahrung nach sind die Samsung Evo-Karten mit Abstand die besten
> (am schnellsten und die Latenz ist auch gleichförmig gering). Das
> bezieht sich aber auf SDHC-Karten (bis 32 GB). Die Arduino SD Library
> unterstützt diese auch, also kein Grund sich auf die alten SDSC-Karten
> zu beschränken.

Hallo Niklas,

Vielen Dank für Deine Gedanken dazu. Es ist beruhigend, daß SDHC bei uC 
noch funktionieren. Das hatte ich noch nie ausprobiert. Samsung sah ich 
bei Amazon allerdings (noch) nicht.

Ich machte sonst früher mit USB Memory Sticks von Sandisk, Kingston und 
Lexar gute Erfahrungen.

Naja, wenn ich mich an Markennamen halte, sollte hoffentlich bei A. 
nicht zu viel schiefgehen.

Mir geht es um einigermaßen gute Zuverlässigkeit auch über einen 
weiteren Temperaturbereich. Es wäre ärgerlich wenn alles im Zimmer 
funktioniert und dann bei Kälte (-10) irgendwie abdriftet und sich 
fehlverhält. Aber das müßte man sowieso testen. Es handelt sich übrigens 
um eine Datenlogging Anwendung.

Es ist heutzutage schwer Vertrauen zur internationalen Verkaufsszene zu 
haben da man vor Fälschungen und Ausschussware einfach nicht mehr 
verschont ist. Hoffe, daß Amazon einigermaßen aufpasst, was fundamentale 
Qualität der Waren betrifft.

Gruß,
Gerhard

von Noch ein Kommentar (Gast)


Lesenswert?

Ähmmm... ausgerechnet Amazon wird immer wieder vorgeworfen, die erwecken 
den Eindruck, du würdest bei Amazon kaufen. Aber in Wirklichkeit kaufst 
du bei einem dubiosen Chinesen, der mit Hilfe des Auslieferungslagers 
Zölle und Steuern hinterzieht.

von (prx) A. K. (prx)


Lesenswert?

Ausnahme: Das Produkt ist von Amazon selbst, nicht nur die Logistik.

von michael_ (Gast)


Lesenswert?

Und da ist es von einem Chinesen, der sich an Amazon verkaufen mußte.
Kennst du die Zwänge nicht?

Ich würde mir da eher von Privat alte Karten zulegen.

von Manfred (Gast)


Lesenswert?

Gerhard O. schrieb:
> Karten mit 512MB-2GB Kapazität für eine uC (Arduino) Anwendung

Da musst Du schon zufrieden sein, so kleine Karten überhaupt noch zu 
finden.

Wenn Du nur alle paar Sekunden ein paar Byte schreiben musst, egal. Wird 
es deutlich mehr, bekommen langsame Karten sogar den Arduino mit AT328 
ausgebremst.

Recht unbekannt, aber sehr gut sind Xmore_industrial, die Marke scheint 
einer Schweizer Firma zu gehören.

Noch ein Kommentar schrieb:
> Ähmmm... ausgerechnet Amazon wird immer wieder vorgeworfen, die erwecken
> den Eindruck, du würdest bei Amazon kaufen.

Das sehe ich nicht so, Amazon war von Anfang an ein Marktplatz, wo viele 
verschiedene Händler ihre Ware anbieten. Ob sie diese dann selbst 
versenden oder bei Amazon einlagern und über Amazon versenden lassen, 
ist unterschiedlich. Das ist in den Angeboten eindeutig erkennbar!

> Aber in Wirklichkeit kaufst
> du bei einem dubiosen Chinesen, der mit Hilfe des Auslieferungslagers
> Zölle und Steuern hinterzieht.

Primitive Polemik und schon lange nicht mehr haltbar. Natürlich lagern 
auch ausländische Firmen Ware bei Amazon ein und lassen diese von dem 
versenden, mehr aber auch nicht. Wie gesagt: Wer nicht total doof ist, 
kann das im jeweiligen Angebot klar sehen.

(prx) A. K. schrieb:
> Ausnahme: Das Produkt ist von Amazon selbst, nicht nur die Logistik.

Auch da steht Amazon in der Kritik: Angeblich lagert Amazon Ware nach 
Artikelnummer ein und differenziert beim Versand nicht deren Herkunft. 
Kann also passieren, dass ein Händler Fakes einlagern lässt, Amazon den 
gleichen Artikel aus seriöser Herkunft und Du im Endeffekt trotzdem 
Fakes bekommst.

Ich kann es nicht überprüfen, aber etwa so hat es Heise mal beschrieben.

von Gerhard O. (gerhard_)


Lesenswert?

Moin,

Danke für Eure weiteren Gedanken dazu. Hier in der Stadt kann ich keine 
Karten unter 8GB finden. Vielleicht wäre daher am vernünftigsten auf 
eine Bestellung von Amazon abzusehen und anstelle mit lokaler Markenware 
zu arbeiten. 8GB sind immerhin noch lokal erhältlich unter den 
Platzhirschen. Einen großen Grund für die Verwendung kleinerer Karten 
als 8GB gibt es ja eigentlich sowieso nicht wirklich. Die lokalen Preise 
halten sich im Ramen vom Amazon Angebot und man erspart sich die 
Versandkosten und unterstützt einen lokalen Anbieter.

Grüße,
Gerhard

von michael_ (Gast)


Lesenswert?

Hier:

ebay 192498127685
ebay 224859254952
ebay 284675017866

Übrigens habe ich mir vor einiger Zeit über ebay eine 2GB Karte von 
GLOBUS gekauft.
Zum halben Preis von privat/sonstige Anbieter.

von Cyblord -. (cyblord)


Lesenswert?

Gerhard O. schrieb:
> Hier in der Stadt kann ich keine
> Karten unter 8GB finden.

Da weiß man gar nicht ob man lachen oder weinen soll.

von Gerhard O. (gerhard_)


Lesenswert?

michael_ schrieb:
> Hier:
>
> ebay 192498127685
> ebay 224859254952
> ebay 284675017866
>
> Übrigens habe ich mir vor einiger Zeit über ebay eine 2GB Karte von
> GLOBUS gekauft.
> Zum halben Preis von privat/sonstige Anbieter.

Danke für die Links, obwohl die anscheinend nicht nach Kanada liefern. 
Interessant, daß 1GB noch erhältlich ist.

Ich werde das Visier auf 8GB kalibrieren:-)

von Gerhard O. (gerhard_)


Lesenswert?

Cyblord -. schrieb:
> Gerhard O. schrieb:
>> Hier in der Stadt kann ich keine
>> Karten unter 8GB finden.
>
> Da weiß man gar nicht ob man lachen oder weinen soll.

Nimm's doch nicht so tragisch:-) Ich wollte halt die Speicherkapazität 
an meine Anwendung anpassen. So wie es allerdings aussieht ist 8GB das 
"neue" 256-1GB Frontier.

Der Wunsch nach kleinerer Kapazität lag auch darin begründet, 
herauszufinden ob die Stromaufnahme proportional zur Kapazität ist, weil 
ich das Teil mit Batterien speisen möchte und eine geringere 
Stromaufnahme mit kleineren Größen dieser Speicherkarten wünschenswert 
wären. Andrerseits ist es durchaus möglich, daß die feineren Strukturen 
größerer Kapazitäten weniger Strom brauchen. Aber darüber müsste ich 
mich erst gescheit machen.

Jedenfalls besteht kein wirklicher wichtiger Grund um mich auf Formate 
unter 8GB festzuhalten.

Gruß,
Gerhard

: Bearbeitet durch User
von michael_ (Gast)


Lesenswert?

Gerhard O. schrieb:
> Jedenfalls besteht kein wirklicher wichtiger Grund um mich auf Formate
> unter 8GB festzuhalten.

Doch!
Du hast hier Leute in die Irre geführt.
Welche helfen wollten.

Es gibt Geräte, welche keine Karten über 2GB vertragen.
Manche Kameras/Handy wollen auch keine über 1GB.

Wenn du keine Ahnung über die Spezifikation deines Arduino kennst, dann 
vermeide solche Fragen.

von Gerhard O. (gerhard_)


Lesenswert?

michael_ schrieb:
> Gerhard O. schrieb:
>> Jedenfalls besteht kein wirklicher wichtiger Grund um mich auf Formate
>> unter 8GB festzuhalten.
Das bezog sich nur auf die Tatsache, daß die Beziehbarkeit nicht so 
einfach ist. Keine der angebotenen Produkte in Deinen Links z.B. sind 
liefermässig für mich in Kanada zugänglich. Amazon hat einige, aber ich 
habe wenig Vertrauen zur Herkunft dieser Produkte. So gesehen wäre dann 
8GB ein einfacherer Weg. Ausprobieren könnte ich natürlich deren Karten 
schon.
>
> Doch!
> Du hast hier Leute in die Irre geführt.
> Welche helfen wollten.
Das war wirklich nicht beabsichtigt. Tut mir leid, daß es jetzt so 
aussieht.
>
> Es gibt Geräte, welche keine Karten über 2GB vertragen.
> Manche Kameras/Handy wollen auch keine über 1GB.
>
> Wenn du keine Ahnung über die Spezifikation deines Arduino kennst, dann
> vermeide solche Fragen.

Mir ging es doch hauptsächlich die Leistungsaufnahme so gering wie 
möglich zu halten und wollte experimentell wissen ob kleinere 
Kartenkapazitäten hinsichtlich Stromaufnahme günstiger liegen. 
Funktionell sollte bis 32GB mit der Arduino FAT-LIB kein Problem 
bestehen obwohl ich bis jetzt nur mit 8GB erfolgreich arbeitete.

Ferner brauche ich nur Platz für einige zehn MB. 8GB+ sieht sich so 
verschwenderisch an.

Ok. Dann legen wir diesen Thread besser zur Ruhe. Danke für das 
Engagement.

Gerhard

: Bearbeitet durch User
von (prx) A. K. (prx)


Lesenswert?

Gerhard O. schrieb:
> ob kleinere Kartenkapazitäten hinsichtlich Stromaufnahme günstiger
> liegen.

Dabei könnte wesentlich der Flash-Controller eine Rolle spielen sowie 
die verwendete Flash-Technologie MLC,TLC,QLC. Und da wirds aufwändig, 
weil du nun zusätzliche unabhängige Parameter drin hast. Du müsstest 
quasi den Markt quer durch kaufen, um eine Aussage zu erhalten, die mehr 
als Zufall ist.

So steht dann vielleicht bei gleicher Kapazität eine im Lager übrig 
gebliebenen Uralt-SD gehen eine minimal bestückte und vielleicht sogar 
runtergelabelte weil teildefekte moderne.

: Bearbeitet durch User
von Gerhard O. (gerhard_)


Lesenswert?

(prx) A. K. schrieb:
> Gerhard O. schrieb:
>> ob kleinere Kartenkapazitäten hinsichtlich Stromaufnahme günstiger
>> liegen.
>
> Dabei könnte wesentlich der Flash-Controller eine Rolle spielen sowie
> die verwendete Flash-Technologie MLC,TLC,QLC. Und da wirds aufwändig,
> weil du nun zusätzliche unabhängige Parameter drin hast. Du müsstest
> quasi den Markt quer durch kaufen, um eine Aussage zu erhalten, die mehr
> als Zufall ist.
>
> So steht dann vielleicht bei gleicher Kapazität eine im Lager übrig
> gebliebenen Uralt-SD gehen eine minimal bestückte und vielleicht sogar
> runtergelabelte weil teildefekte moderne.

Das hört sich plausibel an. Das wird man individuell aufzeichnen müssen. 
Versuch macht kluch... Wenn ich eine der kleineren Karten bekommen kann, 
werde ich es messen können. Sollte es sich herausstellen, daß man mit 
der aktuellen Karte dann Strom sparen kann, dann erfüllt sich doch noch 
der Zweck der Anfrage.

Möglicherweise brauchen aber die neueren Karten von Hause aus sowieso 
weniger Strom wegen ihrer kleineren moderneren Prozessstrukturen und 
kleineren Kapazitäten.

Ich werde dann berichten.

von Olaf (Gast)


Lesenswert?

> Der Wunsch nach kleinerer Kapazität lag auch darin begründet,
> herauszufinden ob die Stromaufnahme proportional zur Kapazität ist, weil

Da kannst du interessante Ueberraschungen erleben. Groessere und 
modernere
Karten haben den Speicher in groesseren Bloecken organisiert, da 
schreibt
die Karte dann vielleicht intern gleich 16x512Byte auf einmal und 
braucht dann mehr Strom, aber dafuer kuerzer als bei einer alten Karte 
die immer nur 512B am Stueck geschrieben hat.

Im uebrigen ist dir ja hoffentlich klar das SD und HC sich in der 
Adressierung, Byteweise oder Blockweise unterscheiden.

Olaf

von Max M. (Gast)


Lesenswert?

Wenns besonders langlebig sein soll, verwende eine industrielle single 
level cell micro sd.
Klein, teuer, darauf ausgelegt lange zu halten.
https://www.syslogic.de/deu/cactus-803-series-microsd-card_41375.shtml

Ansosnten bin ich mit Sandisc gut gefahren.
Noname Karten haben auch schon mal bis zum power reset die Mitarbeit 
verweigert. Wir haben nie rausgefunden warum, nur das die Sandisk 
Tagelang durchliefen, die noname aber zu 80% binnen 24h hingen.

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Max M. schrieb:
> Ansosnten bin ich mit Sandisc gut gefahren.

Ich nicht, habe die Erfahrung gemacht dass diese Karten sich sporadisch 
lange Pausen zum schreiben gönnen (über 1sec), was bei einem Datenlogger 
schnell mal zum Pufferüberlauf führen kann.

Gerhard O. schrieb:
> Samsung sah ich bei Amazon allerdings (noch) nicht.

Hä? Ich seh da jede Menge von. Meine Samsung Karten waren auch von 
Amazon. Die kann man aber an jeder Ecke kaufen.

SD-Karten brauchen zum schreiben viel Strom in Form von kurzen Peaks. 
Man muss genug Pufferkondensatoren dafür vorsehen. Wenn man die Karte 
zwischendurch abschalten möchte zum Strom sparen muss man die 
Spannungsversorgung kappen, z.B. mit einem MOSFET, weil es kein "Shut 
down" Kommando gibt.

von (prx) A. K. (prx)


Lesenswert?

Niklas G. schrieb:
> Ich nicht, habe die Erfahrung gemacht dass diese Karten sich sporadisch
> lange Pausen zum schreiben gönnen (über 1sec), was bei einem Datenlogger
> schnell mal zum Pufferüberlauf führen kann.

Flash-Medien werden heute auch gerne in Anwendungsklassen gehandelt. 
Deren Verhalten ist dann unterschiedlich optimiert. Beim Datenlogger 
sollte man welche verwenden, die für Videos qualifiziert sind.

: Bearbeitet durch User
von Rudolph (Gast)


Lesenswert?

Max M. schrieb:
> Ansosnten bin ich mit Sandisc gut gefahren.

Ich auch, aber SanDisk gibt es seit 2016 nur noch als Marke von Western 
Digital.
Und wie ich gerade lese war SanDisk seit 2009 Fabless.

von HildeK (Gast)


Lesenswert?

Niklas G. schrieb:
> Meiner Erfahrung nach sind die Samsung Evo-Karten mit Abstand die besten
> (am schnellsten und die Latenz ist auch gleichförmig gering).

Das zeichnete sich auch in einem Test der c't in einem der letzten Hefte 
ab.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Gerhard O. schrieb:
> Von welchen Marken sollte ich mich kategorisch fernhalten?
Auf jeden Fall von reinen Consumermarken wie Intenso, Verbatim, 
Transcend...

Niklas G. schrieb:
> Meiner Erfahrung nach sind die Samsung Evo-Karten mit Abstand die besten
Es sind nicht die Schlechtesten. So wie ich das sehe, haben alle die, 
die selber Speicherbausteine herstellen, die Nase vorn. Wobei einzelne 
tragische Ausreisser diese Aussage nur bestätigen...  ;-)
https://de.statista.com/statistik/daten/studie/201746/umfrage/marktanteile-der-fuehrenden-hersteller-von-nand-flash-speichern-weltweit/

(prx) A. K. schrieb:
> Dabei könnte wesentlich der Flash-Controller eine Rolle spielen sowie
> die verwendete Flash-Technologie
Meine bittere Erkenntnis: es ist (wie üblich) die Software, die aus 
einer guten Karte eine Schlechte macht.

Mein Tipp: such mal hier im Forum nach "Xmore". Da konnte ich das am 
eigenen Leib erfahren. Die Karten waren im 
Dauerschreib-und-Powerfail-Test anfangs die schlechtesten Karten 
(Lebensdauer 3..7 Tage) und mit einer anderen Firmware sind es jetzt die 
Besten (Lebensdauer >6 Monate).
https://www.mikrocontroller.net/search?query=xmore

BTW: der Dauertest, von dem ich da immer wieder schreibe, hat mir gerade 
heute nach knapp 7 Wochen wieder zwei defekte Kingston Endurance 32GB 
beschert. Die anderen beiden tun es noch, mal schauen, wie lang.

: Bearbeitet durch Moderator
von (prx) A. K. (prx)


Lesenswert?

Rudolph schrieb:
> Und wie ich gerade lese war SanDisk seit 2009 Fabless.

WD ist aber dicke mit Kioxia.

von Manfred (Gast)


Lesenswert?

michael_ schrieb:
> Du hast hier Leute in die Irre geführt.

Aber nur die, die nicht lesen können.

> Welche helfen wollten.

Zwischen wollen und können liegen Welten, bei Dir sogar ganze Galaxien.

> Es gibt Geräte, welche keine Karten über 2GB vertragen.
> Manche Kameras/Handy wollen auch keine über 1GB.

Lass' es doch einfach, Kameras vom Uropa hat kaum noch jemand.
Die Canon Ixus117 war 2014 bereits Auslaufmodell, laut Anleitung kann 
sie SD-, SDHC- und SDXC-Karten. Die Anleitung benennet die Anzahl 
möglicher Aufnahmen bei 32Gb.

Mein Mobil-Navi hatte wirklich Ärger, vermutlich dem alten Windows-CE 
geschuldet und zerstört oberhalb 2 Gb die FAT der Karte.

> Wenn du keine Ahnung über die Spezifikation deines Arduino kennst, dann
> vermeide solche Fragen.

Es gäbe noch immer die Chance, dass hier jemand ist, der das weiß.

Ich habe auch noch ein paar Karten gesammelt und habe am Arduino maximal 
4Gb in Benutzung. Im Text der SD.h und auf Github kann ich nichts zur 
Maximalgröße finden. Die SD.h kann FAT32, man könnte also vermuten, dass 
maximal 32 Gb zulässig sind.

Gerhard O. schrieb:
> Keine der angebotenen Produkte in Deinen Links z.B. sind
> liefermässig für mich in Kanada zugänglich.

Wer hier länger liest, weiß, dass Du in Kanada ansässig bist und unsere 
zwei Koryphäen michael_ und Schlaumaier bevorzugt dummes Zeug absondern.

Niklas G. schrieb:
> SD-Karten brauchen zum schreiben viel Strom in Form von kurzen Peaks.
> Man muss genug Pufferkondensatoren dafür vorsehen.

Eine gewagte Theorie. Ich habe zwei Anwendungen mit SD-Karte, die mir 
keinerlei Ärger machen - der 3,3V-Regler auf den Kartenboard versorgt 
die zuverlässig.

(prx) A. K. schrieb:
> Flash-Medien werden heute auch gerne in Anwendungsklassen gehandelt.
> Deren Verhalten ist dann unterschiedlich optimiert. Beim Datenlogger
> sollte man welche verwenden, die für Videos qualifiziert sind.

Das kommt doch eher auf die Menge der Daten an. Tatsächlich kann ich 
belegen, dass die Dauer des Schreibens von der Karte abhängt. So wie 
hier, alle 10s einen Datensatz schreiben, ist komplett unkritisch.

HildeK schrieb:
> Das zeichnete sich auch in einem Test der c't in einem der letzten Hefte
> ab.

Daran erinnere ich mich, Heft 5 / 2022 ab Seite 100.
Ich hole die gerade mal von
https://turbobit.net/download/started/tf5pwmw2al5x
und extrahiere den Artikel:
https://filehorst.de/d/eFBEfAHw
oder
https://1fichier.com/?7fl4ovud8c0k6kzukec3

Lothar M. schrieb:
> Mein Tipp: such mal hier im Forum nach "Xmore". Da konnte ich das am
> eigenen Leib erfahren. Die Karten waren im
> Dauerschreib-und-Powerfail-Test anfangs die schlechtesten Karten
> (Lebensdauer 3..7 Tage) und mit einer anderen Firmware sind es jetzt die
> Besten (Lebensdauer >6 Monate).

Xmore hatte ich gestern erwähnt, die werden in der Firma in 
kommerziellen Geräten eingesetzt.

Ein anderer Post erwähnte "cactus", die kenne ich von CF-Karten großer 
Telefonanlagen und sind annähernd die einzigen, die dort langlebig 
laufen.

von Max M. (Gast)


Lesenswert?

Manfred schrieb:
> die einzigen, die dort langlebig
> laufen.

Weil das single level cells sind.
Da muss einiges passieren bis die nicht mehr lesbar ist.
https://www.computerweekly.com/de/tipp/Flash-Speicher-im-Vergleich-SLC-vs-MLC

von Veit D. (devil-elec)


Lesenswert?

Hallo Gerhard,

die Beratung wird schwierig. Abgesehen vom miserablen 
Preis/Leistungsverhältnis von den kleinen Karten. Mit Marken wie 
SanDisk, Samsung, Lexar und Transcend machst du jedenfalls nichts 
falsch. Die haben auch spezielle Endurance Modelle im Angebot. 
Allerdings zicken meine 2 Endurance Samsung Karten in der Dashcam 
trotzdem rum. Dann hilft eine Formatierung und es läuft wieder eine 
Weile. Du siehst es gibt keine Garantie auf wirkliche Haltbarkeit.
"Zu große" Karten könnte man im Rechner vorbereiten und nur bspw. mit 
1GB formatieren. Ob das letztlich aktzeptiert wird müßtest du 
ausprobieren. Also das Prinzip der damaligen zu großen Festplatten im 
Rechner Bootfähig gefügig zu machen. Kommt letztlich auf den SD Karten 
Treiber bzw. Lib an. Meine erste Wahl wäre. 
https://github.com/greiman/SdFat

von ich frage mich (Gast)


Lesenswert?

HildeK schrieb:
> Niklas G. schrieb:
>> Meiner Erfahrung nach sind die Samsung Evo-Karten mit Abstand die besten
>> (am schnellsten und die Latenz ist auch gleichförmig gering).
>
> Das zeichnete sich auch in einem Test der c't in einem der letzten Hefte
> ab.

Getestet mit Arduino? ;-)

Rasspberry Pi 4 (!) liest seine SD-Karte mit etwa 40 MB/s. Raspberry PI 
3 mit der Hälfte davon!

Was sollen diese Karten unter Arduino(!) bringen?

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Manfred schrieb:
> Niklas G. schrieb:
>
>> SD-Karten brauchen zum schreiben viel Strom in Form von kurzen Peaks.
>> Man muss genug Pufferkondensatoren dafür vorsehen.
>
> Eine gewagte Theorie. Ich habe zwei Anwendungen mit SD-Karte, die mir
> keinerlei Ärger machen - der 3,3V-Regler auf den Kartenboard versorgt
> die zuverlässig.

Und du hast keinen Kondensator am Regler? Meinen Messungen zufolge 
vervierfacht sich der Strom beim Schreiben von ca. 50 mA im Ruhezustand 
auf etwa 200 mA.

ich frage mich schrieb:
> Was sollen diese Karten unter Arduino(!) bringen?

Es geht ums Schreiben. Wie gesagt, wenn eine Karte zwischendurch mal 
1sec braucht für einen Datenblock, kann ein Puffer eines Datenloggers 
schon mal voll laufen.

von Olaf (Gast)


Lesenswert?

> Weil das single level cells sind.

Qualitaet zahlt sich aus. Ich hab eine 512MB Karte von Panasonic die 
seit etwa 2006 als Festplatte in meinem Sharp Zaurus ist. Also mit swap 
und einem kompletten Linux inklusiv Compiler, Browser, Mail und News. 
Geht noch immer wie am ersten Tag.

Olaf

von my2ct (Gast)


Lesenswert?

Niklas G. schrieb:
> Ich nicht, habe die Erfahrung gemacht dass diese Karten sich sporadisch
> lange Pausen zum schreiben gönnen (über 1sec), was bei einem Datenlogger
> schnell mal zum Pufferüberlauf führen kann.

Wenn für die Anwendung die Latenz der Karte kritisch ist, ist die 
Speichergröße als einziges Kriterium vielleicht kein ausreichender 
Parameter.
Schnelligkeit ist nicht alles - es kommt auf die Anwendung an.

von Max M. (Gast)


Lesenswert?

Olaf schrieb:
> 512MB Karte von Panasonic

Deswegen ist alt in dem Fall besser.
Auch single level Cells, weil man damals nichts anderes draufhatte.
Moderne Multilevel Cells sind auch vom Markenhersteller viel 
empfindlicher.

Du verwendest noch den Zaurus?
Cool!
Verwendest Du den real noch oder ist das eher so eine nostalgische 
Liebhaberei?

von DANIEL D. (Gast)


Lesenswert?

Max M. schrieb:
> Ansosnten bin ich mit Sandisc gut gefahren.
> Noname Karten haben auch schon mal bis zum power reset die Mitarbeit
> verweigert. Wir haben nie rausgefunden warum, nur das die Sandisk
> Tagelang durchliefen, die noname aber zu 80% binnen 24h hingen.

An der Arbeit für die Mobotix Kameras verwenden wir auch Sandisc, die 
halten am längsten. Teilweise zeichnen die Kameras auf SD Karten auf.

von Falk B. (falk)


Lesenswert?

Niklas G. schrieb:
> Es geht ums Schreiben. Wie gesagt, wenn eine Karte zwischendurch mal
> 1sec braucht für einen Datenblock, kann ein Puffer eines Datenloggers
> schon mal voll laufen.

Stimt, aber ich bezweifle, daß die Karten 1s Pause machen. Vielleicht 
200-300ms, viel mehr eher nicht.

von Olaf (Gast)


Lesenswert?

> Verwendest Du den real noch oder ist das eher so eine nostalgische
> Liebhaberei?

Naja, ich geb zu nicht mehr jeden Tag, aber so 10x im Jahr kommt das 
noch vor.
Koennte langsam mal wieder einen neuen Akku gebrauchen...

Olaf

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Falk B. schrieb:
> Stimt, aber ich bezweifle, daß die Karten 1s Pause machen.

Ich habs nachgemessen, folgende Maximalzeiten für Operationen (schreiben 
oder löschen) kamen heraus:

- Samsung Evo: 18ms
- Toshiba High Speed Professional: 714ms
- SanDisk Ultra: 2,9s

Allerdings nur sporadisch, d.h. wenn gelegentlicher Datenverlust 
akzeptabel ist kann man das hinnehmen. Alternativ sehr viel RAM 
verwenden, oder sich mit kleinen Datenraten zufrieden geben.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

wo kommen die Pausen her? Wie getestet? Weil die Karten machen doch alle 
eine kontinuierliche Mindestdatenrate.

Und wenn ich mal für Arduino einen hohen 1MHz SPI Takt veranschlage, 
default sind 100kHz, dann komme ich auf gemütliche 122kByte/s die zur 
Karte geschoben werden. Damit kommt jede SD im Dauerbetrieb klar.

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Veit D. schrieb:
> wo kommen die Pausen her?

Wahrscheinlich vom internen Wear-Leveling-Algorithmus der Karte.

Veit D. schrieb:
> Wie getestet?

Mit einem STM32, welcher per SDIO kontinuierlich 1MiB/s schreibt 
(Datenlogger).

Veit D. schrieb:
> Weil die Karten machen doch alle eine kontinuierliche Mindestdatenrate.

Richtig, aber diese Datenrate ist ein Durchschnitt. Um den zu erreichen, 
braucht man viel RAM (in Abhängigkeit von der Datenrate), um die Peaks 
abzufangen. Mit 8 MiB (SD)RAM erreicht man auch über 10MiB/s. Bei der 
Verwendung von SPI haben SD-Karten übrigens Speed Class 0, d.h. gar 
keine garantierte Datenrate.

Veit D. schrieb:
> gemütliche 122kByte/s die zur Karte geschoben werden. Damit kommt jede
> SD im Dauerbetrieb klar.

Auch dann können einzelne Operationen sehr lange dauern - außer bei 
Samsung Evo, meiner Erfahrung nach.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

aha, Danke.

von Falk B. (falk)


Lesenswert?

Niklas G. schrieb:
> Falk B. schrieb:
>> Stimt, aber ich bezweifle, daß die Karten 1s Pause machen.
>
> Ich habs nachgemessen, folgende Maximalzeiten für Operationen (schreiben
> oder löschen) kamen heraus:
>
> - Samsung Evo: 18ms

Das wäre SEHR gut, ist wahrscheinlich aber nicht der worst case.

> - Toshiba High Speed Professional: 714ms

Naja, das ist schon mies.

> - SanDisk Ultra: 2,9s

Unbrauchbar, da stimmt irgendwas nicht.

Naja, die maximale Pause ist wohl leider nicht spezifiziert. Das öffnet 
Murks Tür und Tor.

von Manfred (Gast)


Angehängte Dateien:

Lesenswert?

Niklas G. schrieb:
>> Eine gewagte Theorie. Ich habe zwei Anwendungen mit SD-Karte, die mir
>> keinerlei Ärger machen - der 3,3V-Regler auf den Kartenboard versorgt
>> die zuverlässig.
>
> Und du hast keinen Kondensator am Regler? Meinen Messungen zufolge
> vervierfacht sich der Strom beim Schreiben von ca. 50 mA im Ruhezustand
> auf etwa 200 mA.

China-Standard, versorgt aus ordentlichen 5 Volt. Da sind nur die ???nF 
am 3v3-Regler, die das Board eben mitbringt.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

aus den Pausen folgt nun noch eine Frage. Wenn die Pausen unkontrolliert 
sind, wie stellt man dann sicher das der Schreibvorgang fehlerfrei 
abläuft? Die SD Karte gibt ja keine Rückmeldung ala, lieber µC warte mal 
kurz, ich mach gerade Pause ...
Gibt es irgendeinen Trick?
Mein Datalogger schreibt nur paar Bytes aller paar Minuten, da fällt das 
nicht auf.

von Manfred (Gast)


Lesenswert?

ich frage mich schrieb:
> Rasspberry Pi 4 (!) liest seine SD-Karte mit etwa 40 MB/s. Raspberry PI
> 3 mit der Hälfte davon!

Das interessiert hier nicht: Zügig lesen kann fast jede, Schreiben ist 
die zeitkritische Aktion.

Niklas G. schrieb:
>> wo kommen die Pausen her?
> Wahrscheinlich vom internen Wear-Leveling-Algorithmus der Karte.

Bei USB-Medien für Videoaufnahmen fragt man doch nach dem 
Isochron-Modus, also Pausenfrei schreiben. An meinem SD-Sat-Receiver 
habe ich seit Jahren einen USB-Reader mit SD-Karte, geht weitaus 
zuverlässiger als USB-Sticks.

Gibt das SD-Karten, die das garantieren wollen?

von Falk B. (falk)


Lesenswert?

Veit D. schrieb:
> Hallo,
>
> aus den Pausen folgt nun noch eine Frage. Wenn die Pausen unkontrolliert
> sind, wie stellt man dann sicher das der Schreibvorgang fehlerfrei
> abläuft? Die SD Karte gibt ja keine Rückmeldung ala, lieber µC warte mal
> kurz, ich mach gerade Pause ...

Doch. Sie antwortet entsprechend auf Befehle. Wie genau, weiß ich jetzt 
nicht. Das Timing dieser Pausen (wie lang, wie oft) ist nicht 
spezifiziert, die Kommunikation DAß es gerade eine Pause gibt schon.

> Gibt es irgendeinen Trick?

Nö. Man braucht einen ausreichend großen FIFO oder genug Wartezeit.

> Mein Datalogger schreibt nur paar Bytes aller paar Minuten, da fällt das
> nicht auf.

Sieht so aus.

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Falk B. schrieb:
> Das wäre SEHR gut, ist wahrscheinlich aber nicht der worst case.

War das längste nach Langzeittests. Man muss aber relativ große Blöcke 
schreiben.

Falk B. schrieb:
> Unbrauchbar, da stimmt irgendwas nicht.

Ich glaube schon dass der Test korrekt war.

Manfred schrieb:
> Da sind nur die ???nF am 3v3-Regler, die das Board eben mitbringt.

Bei dem kurzen Abstand reicht es wohl.

Veit D. schrieb:
> Wenn die Pausen unkontrolliert sind, wie stellt man dann sicher das der
> Schreibvorgang fehlerfrei abläuft? Die SD Karte gibt ja keine
> Rückmeldung ala, lieber µC warte mal kurz, ich mach gerade Pause ...

Bei SPI weiß ich nicht, bei SDIO signalisiert die Karte über DAT0 "busy" 
für kürzere oder längere Zeit.

Veit D. schrieb:
> Mein Datalogger schreibt nur paar Bytes aller paar Minuten, da fällt das
> nicht auf.

Okay, dann ist das sowieso alles völlig unkritisch.

Manfred schrieb:
> Bei USB-Medien für Videoaufnahmen fragt man doch nach dem
> Isochron-Modus, also Pausenfrei schreiben.

Wie funktioniert das? Das Device gibt doch die Endpoint-Typen fix vor. 
100% Pausenfrei geht sowieso nicht. Ich wüsste nicht dass USB-MSC 
isochrone Endpoints vorsieht?!

Manfred schrieb:
> Gibt das SD-Karten, die das garantieren wollen?

Die Speed Class garantiert ja eine Geschwindigkeit, aber man braucht 
halt viel RAM um das zu nutzen. Das ist ja auch für Videoaufnahmen 
gemacht.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

interessant. Also müßte man sich schlau machen wieviele Bytes maximal 
hintereinander gesendet werden dürfen und dann muss man die Karte fragen 
wann es weitergeht? Nach jedem gesendeten Byte fragen würde ja die 
Datenrate nie hochkommen lassen. Oder kann man die Cachegröße jeder 
Karte auslesen und danach richtet sich die Datenmenge für ein "Paket"?

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Veit D. schrieb:
> Also müßte man sich schlau machen wieviele Bytes maximal hintereinander
> gesendet werden dürfen

Das ist IIRC nicht limitiert.

Veit D. schrieb:
> und dann muss man die Karte fragen wann es weitergeht

Die Karte signalisiert es bei SDIO automatisch auf DAT0, und der 
SDIO-Controller im uC reagiert automatisch darauf.

Veit D. schrieb:
> Oder kann man die Cachegröße jeder Karte auslesen

Das macht wenig Sinn, die Dauer von Schreiboperationen kann ganz 
unterschiedlich sein, abhängig vom Wear Leveling Algorithmus.

Generell gilt, je mehr man auf einmal schreibt, desto schneller. Wenn 
man ganze Allocation Units (max 4 MiB) auf einmal schreibt hat man die 
maximale Datenrate.

: Bearbeitet durch User
von Veit D. (devil-elec)


Lesenswert?

Hallo,

okay, Danke. Jetzt ist mir vieles klarer. Leider haben meine µC kein 
solches SD Karten Interface mit allen drum und dran. Da gibt es nur 
einfaches SPI.  :-) Wieder was gelernt.

von Falk B. (falk)


Lesenswert?

Veit D. schrieb:
> Hallo,
>
> interessant. Also müßte man sich schlau machen wieviele Bytes maximal
> hintereinander gesendet werden dürfen und dann muss man die Karte fragen
> wann es weitergeht?

Nö. Die Daten werden immer Sektorweise (512 Bytes) geschrieben, ggf. 
auch multisektor nx512 Bytes.

> Nach jedem gesendeten Byte fragen würde ja die
> Datenrate nie hochkommen lassen.

Macht man auch nicht. Die Rückmeldung "busy" kommt am Ende eines 
Sektors.

> Oder kann man die Cachegröße jeder
> Karte auslesen und danach richtet sich die Datenmenge für ein "Paket"?

Nö.

von Falk B. (falk)


Lesenswert?

Veit D. schrieb:
> okay, Danke. Jetzt ist mir vieles klarer. Leider haben meine µC kein
> solches SD Karten Interface mit allen drum und dran. Da gibt es nur
> einfaches SPI.  :-)

Da läuft das logisch genau so!

von Veit D. (devil-elec)


Lesenswert?

Hallo,

Danke. Das heißt man kann jederzeit 512 Bytes am Stück schreiben ohne 
das man sich Gedanken machen muss? file.open, maximal 512 Bytes senden, 
file.closed. Kurz warten und/oder busy abfragen. So stell ich mir das 
derzeit vor. Für meine Anwendungen würde das locker reichen.  :-)  Gut 
zu wissen für den Fall wenn ich mal wirklich paar Bytes mehr speichern 
möchte.

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Veit D. schrieb:
> file.open, maximal 512 Bytes senden, file.closed. Kurz warten und/oder
> busy abfragen.

Das sollte der Treiber (für FAT bzw. SPI-Interface) schon automatisch 
machen. Auf Anwendungsebene musst du da nicht warten. Wobei das "write" 
auch mehrere Blöcke schreiben kann, weil ja auch die FAT aktualisiert 
und durchsucht werden muss. Bei deinen kleinen Anforderungen kannst du 
open/read/close ganz normal aufrufen und musst dir keine weiteren 
Gedanken machen, wenn du eine fertige Library wie die von Arduino oder 
z.B. FatFs nutzt.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

Danke für die Erläuterung.

von Falk B. (falk)


Lesenswert?

Veit D. schrieb:
> Hallo,
>
> Danke. Das heißt man kann jederzeit 512 Bytes am Stück schreiben ohne
> das man sich Gedanken machen muss? file.open, maximal 512 Bytes senden,
> file.closed. Kurz warten und/oder busy abfragen.

Mein Gott, hast du jemans schon mit einer SD-Karte gearbeitet?
Man ruft die Funktion zum Schreiben auf, die kümmert sich um alles. Man 
muss halt nur bedenken, daß da beim Schreiben Zeitverzögerungen 
auftreten können.
Der Funktion und dem Schreibvorgang tut das nicht weh, ggf. aber deinem 
Logger. Also muss alles, was zeitkritisch ist, in einen Interrupt. 
Der kann die Schreibfunktion unterbrechen.
Man kann auch beliebig viele Bytes schreiben, die Funktionen kümmern 
sich darum, daß das alles paßt. Die meisten FAT-Libs haben einen Puffer 
für einen Sektor, 512 Bytes. Erst wenn der voll ist, wird wirklich auf 
die SD-Karte geschrieben. Dito beim Lesen.

http://elm-chan.org/fsw/ff/00index_e.html

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Wenn ich das richtig sehe ist hier das Warten auf das Schreibkommando in 
der Arduino SD Library implementiert:

https://github.com/arduino-libraries/SD/blob/9556ca304888011edc64ec825ad73e8054925af2/src/utility/Sd2Card.cpp#L637

Das muss auch da sein, denn die FAT-Implementierung schreibt, wenn man 
Bytes in eine Datei schreibt, an verschiedene Stellen auf der Karte (die 
FAT-Tabelle, mehrere Blöcke, Verzeichnis-Eintrag). Wenn da nicht 
gewartet würde, würde das nicht klappen. Daher muss man 2 Ebenen drüber, 
d.h. in der Anwendung, da nicht warten. Man muss nur wissen dass die 
write-Funktion halt mal länger brauchen kann, aber wenn sie rückkehrt 
ist sie fertig und die Daten sind sicher.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

Danke Niklas, so genau hatte ich mir die Lib noch nie angeschaut. Hatte 
die einfach nur benutzt. Dafür sind Libs ja da.  ;-) Damit wäre erstmal 
alles geklärt.

von Gerald B. (gerald_b)


Lesenswert?

Hallo Gerhard,

in einem anderen Thread, wo jemand zwingend für eine alte Digicam eine 2 
GB Karte braucht, habe ich TME empfohlen.
https://www.tme.eu/de/katalog/speicherkarten_113644/?id_category=113644&mapped_params=756%3A1454062%2C1454080%3B1365%3A1472399%3B
Als  industrial grade  für langlebige Sachen, wie Datenlogger und 
Industriesteuerungen gibt es die 2 GB Karten noch.
Ich habe mal bei Digikey geguckt, da die näher bei dir vor der Tür 
sitzen, aber dort kosten die Karten das doppelte und aufwärts!

von Gerhard O. (gerhard_)


Lesenswert?

Gerald B. schrieb:
> Hallo Gerhard,
>
> in einem anderen Thread, wo jemand zwingend für eine alte Digicam eine 2
> GB Karte braucht, habe ich TME empfohlen.
> 
https://www.tme.eu/de/katalog/speicherkarten_113644/?id_category=113644&mapped_params=756%3A1454062%2C1454080%3B1365%3A1472399%3B
> Als  industrial grade  für langlebige Sachen, wie Datenlogger und
> Industriesteuerungen gibt es die 2 GB Karten noch.
> Ich habe mal bei Digikey geguckt, da die näher bei dir vor der Tür
> sitzen, aber dort kosten die Karten das doppelte und aufwärts!

Hallo Gerald,

Danke für Deine Hinweise. Ein Kollege schenkte mir mittlerweile eine 
Delkin Industrial Extended Temperature Range Karte mit 512MB. Ich werde 
mir aber auch noch eine 2GB Größe für Vergleiche zulegen. Die 
Delkinkarte dürfte höchstwahrscheinlich unbezahlbar sein und nicht 
leicht beziehbar. Dann kann ich vergleichen und experimentieren.

Deinen TME Link finde ich sehr nützlich - Danke. Die Preise sind 
bezahlbar.

Obwohl es wahrscheinlich möglicherweise redundant ist, dachte ich, man 
könnte zwecks Energieersparnis die Daten zuerst auf einem FRAM 
vorübergehend speichern und dann die Karte nur Sektor für Sektor zu 
beschreiben. Das hätte den Vorteil, daß bei Stromausfall nicht die 
gepufferten Daten im Puffer des FAT Systems verloren gehen würden. Aber 
da muß ich mich erst einmal hineinknien, weil ich bis jetzt noch nicht 
viel mit FAT und SD gemacht habe.

Ja, Digikey.ca ist bei mir gut zugänglich. Über CDN$100 Bestellwert, 
sogar freier Versand, sonst nur $8.95 für Versand nach Kanada.

Grüße,
Gerhard

P.S. Danke auch an alle von Euch für Eure Beiträge?

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.