STM32F7を使ってみる17 -とっくの昔ですがCubeF7がv1.6.0になっていた-

前回少しだけ触れましたが、STM32F7向けのHALライブラリCubeF7のバージョンが
v1.5.0(CubeMXの場合v1.5.1)からv1.6.0に上がっておりました。

主な変更点はARMv8系コアのSTM32F7x27x3シリーズのレジスタ定義が追加された
事と、SDMMCドライバの大変更、さらに悲願のマルチメディアカード&eMMCサポート
の追加です。

eMMCのサポートはねむいさんも歓迎すべき事柄なのですがソースコードを読み解くと
その期待は完全に裏切られました☠なぜなら…

1.初期化シーケンスさえしっかり記述したら同一のソースコードで読み書きできる
  はずなのになぜかSDカードとMMCのソースコードがわざわざ分離されている。
  (↑まじふぁっく)

2."1."のおかげでSDカードとMMCが同時に使用できない。
  (↑まじふぁっく)

3.MMCの処理中でMMCv4以降のカードで必須のExtCSDレジスタを取得していないため
  4GB以上のeMMCが全く使用不可能。昨今のeMMCは最低8GBからなので全く無意味。
  (↑まじふぁっく)

4.DMA転送のコードが適当で使い物にならずデフォのポーリング版しかまともに
  動作しない。v1.5.0の時は私が手を加えなくともある程度まともに動いていた。
  (↑まじふぁっく)

5.SD/MMCとも両規格で指定されている電源投入->動作電圧到達後1mSec待ちその
  後74クロック空撃ちする処理が無くたまにイニシャライズすら失敗するカードが
  出る。eMMCは一部カードでbootシーケンスの際に74クロックが必須。
  (↑まじふぁっく)

6.まともなはずのポーリング版でも一見動いてるように見えるけどランダムで
  ReadもWriteもエラー発生するのが判明orz v1.5.0に戻すと全く問題なし。
  (↑馬鹿野郎)

私を含め外人さんたち憤慨していますが最終的にねむいさんのコードで動いたYO!
とのことで胸をなでおろしております。
CubeF7とは関係ないですがこちらの方は歓喜の絶叫を上げております。


ねむいさんはChaN師の「xxの上手な使い方はxxを使わないことである」と言う
格言に倣いCubeF7v1.6.0にv1.5.0のSDカードのドライバ(ややこしいですがHALライ
ブラリ自身のバージョンはv1.2.0)を無理やり移植してやりましたよオラー!

無理糞移植なものでねむいさんの環境以外で使用するには多少コツが要ります。
1."stm32f7xx_hal_conf.h"内の"#define HAL_SD_MODULE_ENABLED"をコメント
  アウトし"#define HAL_MMC_MODULE_ENABLED"を有効にする。

2.ねむいさん謹製の無理糞ドライバ"sdmmc_stm32f7.c"をプロジェクト/makefile
  のビルド対象にする。

3."diskio.c","ff_gen_drv.c"はv1.5.0の物を流用する。

4.内部変数はDTCMからとるようにリンカ/スキャッタファイルを設定しておく。
  (アライメントずれとデータキャッシュ不整合対策です)


"1."で何故本来は不必要なはずの"#define HAL_MMC_MODULE_ENABLED"を有効にして
いるかと言うと、これを有効にしておかないとstm32f7xx_ll_sdmmc.cで必要なロー
レベルの関数がビルドされずエラーになるからですファッ●ク!
ちなみに"#define HAL_MMC_MODULE_ENABLED"と"#define HAL_SD_MODULE_ENABLED"
を両方とも有効にしていると定義がぶつかって
またまたビルドエラーになりますフ●ァック!11!!1

そんなこんなでCubeF7v1.6.0でも安定してFatFsが動作するようになっております。
FatFs0.12cの最新パッチやCMSISv5の最新版ヘッダフィルを適用した4月版のソース
コード
も先行ですがアップしておりますのでどしどしご利用ください。


一方でむぎたさんは私のドライバを既に試されており残念ながら上手く動作できな
かった
とのことですがv1.5.0時代のコードでも大幅にSDMMCのクロック周波数を落と
さないと駄目
とのことでSDMMCの各信号波形そのものが変になってる可能性があります。

いわゆるインピーダンスミスマッチ状態で各信号の波形に相当なリンギングが発生
している事が考えられますのでオシロで波形を確認したのちインピーダンス整合用の
直列抵抗(最大47Ω)をSDMMC_CKの出力端(MCUの端子直近に)挿入
する、それでも駄目
ならさらに全信号ラインにフェライトビードを挿入する等の措置でクロック周波数を
落とさずに改善できるはずです。そこまでやっても駄目なら配線の引き回し自体に
根本的な問題があるのでmicronのeMMC使用時の設計ルールを参照して基板のレイ
アウト設計から見直す必要があります。

RTOSを絡めて使用されている場合はDMA転送用のメモリ領域がDTCMに割り当てられて
おらずキャッシュの整合性が崩れてこけている可能性もあるため切り分けのために
まずはDMA版ではなくポーリング版で動作確認してみてください。

STM32F7を使ってみる16 -USB-MSCを使ってみる応用編-

前回はSTM32F7のSDMMCインターフェースを用いてDELKINの工業用SDカードからSMARTの
情報をCMD56コマンドを駆使し読み出す事に成功しました。

その前にUSBカードリーダーに直接DELKINのカードを接続した時はDelkinDashboardなる
Windowsアプリを用いるとSMART値を読み出す事が出来る
のを確認しています。
そこで今回はUSB接続のカードリーダーに化ける奴でDashboardが使えるかどうか、
いくつか試してみました☆

1.OLYMPUS STYLUS TG-4
 ->SMART読み出しOK!
 
 TG-4はねむいさんが品質管理の証拠写真取る際やトレランで大活躍のでぢかめです!

2.STM32Primer2 GNSS Tracker(のUSB-MSCモード)
 
 ->SMART読み出しOK!!

いわずと知れたSTM32Primer2を用いたねむいさんのぶろぐ唯一の実用品です。
2009年から今に至るまで8年間、-10度〜+40度の過酷な環境を耐え抜き延べ3000km
以上の山道をねむいさんと共に駆け抜けてきたすごい奴です!

3.STM32F746G-Discovery(のUSB-MSC(HighSpeed))
 
 ->SMART読み出しOK!!

とりあえずSDカードが読めるUSBカードリーダー(USBマスストレージクラス)なら
何でもいけるような気がしてきましたよぅ・・・


"1."はともかく"2."と"3."についてはUSB-MSCに明示的にCMD56を発行するような
ルーチンは実装していなかったのでこれはつまりCMD56を用いなくても何か別の方法で
SMARTを読み出せられる手段があるのではないかと考えました。


そこでSTM32F746G-Discoveryを使って何が起こってるか解析してみる事にしました。
USB-MSCのSCSIコマンドを解釈するサブルーチンとSDMMCのRead/WriteにPrintfのトラップ
を仕掛けどのSCSIコマンドが発行されているか、またSDカードのどのアドレスに読み書き
を行っているのかを調べます。ファームウェアを柔軟に弄る事が出来るという市販のUSB
カードリーダーでは絶対に出来ない利点がSTM32F7にはあるのです!!



STM32F746G-DiscoveryのSTLinkV2の仮想COMを開いて待機しておいた上でDashboardの
"GO"ボタンを押すと全てが分かってしまった・・・

諸般の事情で細かい解説は省きますがある一定の順序でSDカードの特定のブロック
アドレス群に読み書きを行う事によりCMD56による取得方法と同じSMART情報を得ら
れることがわかりました・・・!

これなら特別なハードウエアを用意しなくても市販のUSBカードリーダーさえあれば
気軽にSMARTとかSDカードの寿命を確認できますね〜!
それを組み込んだこいつも更なる進化を遂げてさらに最強に強まることが出来たので
ねむいさんはこれからの近畿自然歩道の攻略に向けて燃えに燃えています!
20170308追:
このような工業用SDカードの寿命診断についてですが実際は頻繁なカードの
取り外しが困難な場所や機器に特に威力を発揮します。
性悪説的に言うとケーシングや樹脂化でSDカードを完全に隠ぺいし第三者から
"SDカードを使用している機器"と分からなくして"何らかのメモリデバイス"と
して見せることにより商売上でSDAのライセンス条件を完全に逃れている場合の
リモートメンテナンスの際にも役立ちます。
正攻法でもCMD56なりUSB-MSC経由でSMART取ればいいので品質管理の面から見て
仕事が進めやすくなるのでメリットだらけですね〜♥
20170308追:

でぢかめ向けには大容量品があるUtility+がよさそうですね。これも上記と同じくCMD56&
Windowsツール経由でSMART取れるので特にカードの寿命や動作環境を気にする
プロの人必須のアイテムだと思います。ねむいさんもお金に余裕が出来たら購入して
TG-4と併せて使った感想をレポートしてみたいと思います。


ちなみに民生品のSMART非対応のカードだと失敗しちゃいます。
TDKやApercer配布のSMART取得ツールだと非対応のカード使うと先頭1kb分のデータが
問答無用で破壊されてしまうのですがDelkinDashboardではそういうことはまったく
ありませんが興味本位で非対応のカードで試すのはやめておきましょう!!
とまぁこんなかんじで各メーカごとにSMARTの仕様がバラバラなのでSDAが早く統一
規格作るべきだと思いますよぅ。




さらにおまけですが・・・
解析途中でDELKINカードのパーティションの全容量と実容量が一致してなくてディスク
ユティリティーソフトが異常を検出してておかしいなと思っていたのですが・・・


STM32F7CubeのSDカードドライバ(v1.5.xまで)はSDHCにしか対応してなかったため
SDv1の初期化コマンドすらなかったのは周知のとおりですがUSB-MSCのサンプルも
その仕様を引きずっていたため正しい全容量を返していないのが分かりました。

20170329追:
SDv1どころかSDv2でも正しい全容量を返していないことが分かりました。
別な部分で一番最後の論理ブロックアドレスを示すよう-1している個所があり、
上記の部分で-1してしまうと余分に-1したことになるので実容量より1ブロック
分小さい値が返されてしまいます(ほとんどの場合は512Byte小さい値)。

で、SDHC/SDXC等の大容量のSDカードなら多少の容量の相違は無視できる
ほど小さいので問題はありませんでしたが、Delkinカードは1GBしかないため
ParagonHardDiskManagerではそれを見逃さず無効なパーティションと
見なしたようです。ちなみに値が微妙にずれた状態でもWin7からは普通に
読み書きできてました。
SDナビさん曰く、この値が容量偽装とかでズレが大幅になるとWindowsも
おかしいと検知してフォーマットを促すダイアログが出るようです。
20170329追:


そういえば今年になってv1.6.0が出てSDカード周りが刷新されたのですが待望のMMCが
追加されたのはイイのですがなんかいたるところが欠陥だらけで超やばいことになって
いたのですが話が長くなるので次回に続きます・・・

ESP-WROOM-32を使ってみる5 -ESP-WROOM-32が物故割れた!1!1!!-

ESP-WROOM-32の目次に戻る



ESP-WROOM-32はとっくに飽きてしまったのはずなのですがKimio Kosaka氏のブログ
とてもとても気になるエントリを見つけました。

以下引用

色々なタイミングでのプログラムの書込みをやっていたら…ESP32挙動不審な動作を
はじめ、” flash read err, 1000 “が出現しプログラムの書き込みにエラーが
発生するようになった。

引用終り

もう一つ、wakwak_koba氏のブログでも・・・・
以下引用
WiFi.h を include するだけで、漏れなく halt してしまう ESP32 に成り果ててしまいました(涙)
やったことは、2.2〜2.8V 付近の電圧で起動と停止を繰り返しただけ。(それぞれ数秒ずつ置いて)
電源の逆接とかハード的なミスならば自業自得で諦めますが、仕様範囲内の電圧で起動しなくなるってのはどうよ。
動作中に電圧を弄ったとは言え、Δ0.1V/秒 くらいの、超ゆっくりな操作だったのに。
(ハードな試験をしていたわけでもなく、実運用中にも起きえる程度の動作条件下で壊れた)

引用終り

やっぱりねねむいさんそう思ったんですよぅ電源がドロップして動作保障電圧の2.2V
どころか3.0V以下になると何か変な動作になるんじゃないの・・・って


両氏に共通する事象はESP-WROOM-32が意図せず不可逆変化を起こしたことに尽きます。


ESP-WROOM-32のメインチップESP32にはeFUSEと呼ばれるメモリ領域があり、ここに
MACアドレスやChipのID、さらにJTAGやSDIOの使用可・不可を設定できるように
なっています。AVRのヒューズビットやKinetisのFSEC領域のようなものですね。

これが何らかの原因(SPIフラッシュ書き込み時の急なドロップ・電源断)で不意に
書きかえれてしまうとヤバイ方向に転がってしまうのではないかと考えました。
何か電源の不安定な変化でeFUSEの秘孔を突いてしまうのではないか・・・ト・・!ピプー


Kosaka氏はESP-IDFv2(もうv2になってるのか)にあるespsecure.pyなるpythonスクリ
プトで復帰を試みました。ねむいさんもまずは健康な状態のESP-WROOM-32のeFUSEの
値を読み出しました。eFUSEの値は下のコマンドでパースされます(COM3の場合)。
ねむいさんの解説を読んでESPTOOLのパスは通しておいてください。
また、全てUARTブートモード下の操作となります。
espefuse.py --port COM3 summary


まだ健全なモジュールなので全部ゼロになってますね〜
Flash encryption mode counter の値は0です。


さて、ここからESP-WROOM-32を潰しにかかります!!
基本のLチカのプログラムを書き込んでる最中に給電元のUSBのケーブルごと引っこ
抜いて
書き込みを故意に失敗させまくります。
この時は上記のようなエラーになります。昔はPCごとお堕ちてたもんだ〜。


ちがう・・・これじゃない・・・
強化した電源ラインが仇になったのかなかなか事象が再現しません・・・
試行すること2時間と20分・・・


―――――――――!
秘孔突いた!テーレッテー
(flash read err, 1000)ってメッセージで無限ループしてます。
(実際はhaltがかかってその後ウオッチドッグリセットで無限ループにみえる)
たしかにSPI-ROMの書き換えが出来ないです・・・
20170220追:
Kosaka氏と同じエラーメッセージ出てますが氏の元で発生した不具合は
ねむいさんとこと違ってSPI-ROM完全破壊状態のようです…☠
そんな故障モードもあるのか…


ここで落ち着いて復活の呪文を唱えます
espefuse.py --port COM3 burn_efuse FLASH_CRYPT_CNT


Flash encryption mode counter の値は1→3になりました。


makeの際にsdkconfigのsecure boot configurationの項目でdisable encryptionに
なってることをしっかり確認してビルドしなおします。



やった!書けた!もちろんLEDは再び点滅をするようになりました。
無事復帰しました・・・



・・・といいたいところですがこの復帰動作は何度も出来るわけではなく制限があり、
Flash encryption mode counter の値が7の状態でもう一度復活の呪文をとなえたら
秘孔が炸裂して"Bricked(ひでぶ)"してしまいます。お前はもう死んでいる

ねむいさんの英語力は中学生レベルですのでかなり怪しいですが原文を読む限りは
復活の呪文を3回となえたら4度目はない
と思ったほうがよいですね。

公式のgithubESP32のForumでも話が持ち上がっていますが結構な確率で意図せずに
この状態に入ってしまうのでしょうか???ねむいさんも"電ぶち"で再現させまし
たがこれ貧弱な電源使って書いた貼ったしてると秘孔突き捲ってしまうのでは・・・
とくにVCCが2V付近でうろちょろするような状態がかなりやばそうです。
・・・
でもまぁいっか!あと半年くらい待てば安定するでしょう・・・
それまでSTM32F7で遊びますよぅ!








新しい事が分かったらちゃんと追記修正していきますか怒らないで〜♥

STM32F7を使ってみる15 -工業用SDカードからSMART情報をスマートに読み出そう-

あれ?ESP-WROOM-32が秋月から発売されて絶好のチャンスなのにESP-WROOM-32の
記事書かないのですって?
あああれね…去年の時点で飽きました・・・今更になって弄ってるとか時代遅れですよぅ!(挑発


今回はS.M.A.R.T.(以下SMARTと記)対応のSDカードからSMART情報を読み出してみます。
別にF7じゃなくてもよいのですけど次回以降のネタに繋がる内容なのでしばし御静観願います。
今回もSTM32F746G-Discoveryを使います

工業用のSDカードの中にはSSDやHDDのようにSMARTの情報が取れる希有なものが存在
しております。残念ながら一般に購入出来る民生向けSDカードではそのような機能は
搭載されておらず、SMART対応どころか工業用SDカードも入手がごく限られております。
もちろん値段も民生品に比べ極めて高価です。

なんで高価かと言うとカードの動作に関する"信頼性"を保証しているからにつきます。
皆さんご存知の通り2017年現在市販で流通しているSDカードは明記が無い限りはTLC
タイプのNANDフラッシュメモリが使用されており、TLCというのはSLCやMLCに比べて
大容量が取れる割にデータ保持のための寿命が短い、また書き換えできる回数も極端に
短いという代物となっております。

一方工業用SDカードは4GB以下はSLC,それ以上の容量でもMLCを保証しており(容量を
犠牲にして疑似的にSLC風の動作をするpSLCやaMLCなんで奴もありますが) さらにSDカ
ード内コントローラのファームウェアもデータ保護に特化した特別となっております。
たとえばECCチェック機能とかパワーダウンプロテクションとかオートリフレッシュ機能
とかバッドブロックマネージメント、ダイナミック+スタティックウエアレベリング等々
いろいろありますが、実はこれTLCカードを世に出すために必須の技術でそれが耐久性が
もともと高いSLCやMLCを使用した工業用製品にフィードバックされて最強に強まった
信頼性を謳うわけです。

というわけでこれらの機能実装は最早当たり前となった今、カードの健康情報を
把握するための機構を仕込む事が新たな付加価値として注目されており、各社で
SMARTもしくは独自の寿命診断を組み込んだ工業用SDカードが販売されております。


で、われわれホビイストが問題となるのはその工業用SDカードの入手から始まりさらに
SMART情報を取得するための"情報"を入手し利用せしめるまでに多くの壁がある
ことです!

まずDigikeyやmouser,RSの海外在庫くらいからしか工業用カードの入手法が日本
国内からではまず困難で、さらにSMART対応と謳っていてもカタログの隅っこに(※オプシ
ョン対応)とか書いてあったりして高い金出して購入したのに目当てのSMART機能が
実は搭載されてなかったとか悲惨なことがほとんどです。

それでやっと入手にこぎつけたとしてもSMART情報を取得するための手段やツールは
公開されておらずメーカに直接問い合わせることになりますがほとんどの場合対企業間
の問い合わせにしか対応してなかったり(もちろん個人事業主として問い合わせても
THE・シカト)、SDAのライセンスに加入していないと情報を渡すことができないよなど
つっけんどんの反応しかもらえません。

ねむいさんも方々に手を尽くしましたが個人レベルではなしのつぶてて困り果てていまし
たが灯台下暗し、DELKINというメーカの工業用SDカードを扱っている代理店が日本
国内に存在しておりました
。こちらは在庫があれば一枚から対応(無ければ受注生産
20枚単位)というホビイストにもうれしい対応でしたので早速1GB品を注文し、ゲッツ
しました。



でかいDELKIN箱に小さいMicroSDが対照的です。


今となっては微々たる容量の1GB、見た目も普通のMicroSDカードですが…
このDELKINのU331というシリーズは中身は某粉飾決算にチャレンジしたおかげで
倒産寸前の日本メーカのSLC型NANDフラッシュが使用されております!
なにルネサスより先に死んでんだよ東芝!!11!11!!1!!!!!!
動作温度範囲もやたらと広くて-40~+85度まで保証しております。

ひとまずUSB接続のカードリーダーに接続してパフォーマンスを見てみました

規格的には"2GB以下のSDSC"に位置するカードなのでUHS-1とかには対応しておらず
理論上最大でも25MB/Secの転送スピードとなりますがマイコンで使用する限りでは
ハイスピードモード(最大SCLK=50MHz)に対応さえしてれば全く問題ないです。


SMART情報をPC経由で取得するために"USBカードリーダ"を用いて"DELKIN DashBoard"
なるアプリケーションを使用する必要があります。
ねむいさんの持っているTranscend製のUSB3.0カードリーダーは無事にSMART情報を
読み出すことができました。やったぜ!
どういう理屈でSMART読み出してるかしらないけど(伏線)

ちなみに"DELKIN DashBoard"の動作保証しているDELKIN製カードリーダーは上記の
ねむいさんのもってるTranscendのとまったく同じチップが使用されております。



お次はSTM32を使って動作させてみます。

FatFs module test terminal for STM32F427IIT6
LFN Enabled, Code page: 932
AppVersion : W.I.P
Build Date : Dec 6 2016
>fg piano
rc=0 FR_OK
>fo 1 ftbt.mp3
rc=0 FR_OK
>fr 132949600
132949600 bytes read with 14338 kB/sec.
>ds 0
rc=0
Drive size: 1947648 sectors
Erase block size: 8192 sectors
Default r/w block size: 512 bytes
Card type: SDv2(Byte)
SpeedMode: HighSpeedMode(51.43MHz)
DataBusWidth: 4bit

CSD:
00000000 00 5E 00 32 5B 59 A3 B6 FF FF FF 80 0A 40 00 6D .^.2[Y.......@.m
CID:
00000000 58 44 44 44 44 49 4E 43 30 6D 6D D4 59 01 0C 49 XDDDDINC0mm.Y..I

Parsing SD CID Register
Manufacturer ID :0x58
OEM/Application ID :DD
Product Name :DDINC
Product HwRev :3
Product SwRev :0
Serial Number :0x6D6DD459
DateCode.Month :12
DateCode.Year :2016

OCR:
00000000 80 FF 80 00 ....
SD Status:
00000000 80 00 00 00 00 00 00 28 03 03 90 02 00 AB 00 00 .......(........
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
SCR:
00000000 02 25 80 00 01 00 00 00 .%......

Parsing SCR
SD Spec Version :2
SD Spec Version 3 :1
SD Spec Version 4 :0
SD Spec Version X :0
SD Security :2
SD Bus Width :5

SD_Spec V3.0x!
Detected as SDSC Card!
Available NS(or HS) Mode Only.
>

先ずはいつものでSDカードの情報を読み出してみました(これだけSTM32F429を使用)
2016年製!
ATPの工業用カードでもそうでしたが現在はW/R性能はSDカード内コントローラの
ファーム次第なのでSLCとはいえ転送速度がめちゃくちゃ早いとは言えません。
どちらかと言うとSLCを使う理由は速さよりもデータの確実性を求める方向に概念が
遷移していると感じます。


そしてついにSTM32F7-Discoveryを使いSMART情報の読み出しに掛かります!
このDELKINのカードはSDカードに昔から存在するCMD56という"汎用コマンド"を用い
てSMART情報の取得を行います。SMART情報を取得する方法は各社バラッバラで門外
不出の所もありますがDELKINは"CMD56でSMART採れるYO!"と公言しているためかなり
フレンドリーと感じます。

この"CMD56"は引数によってデータの受信送信を変えることができるコマンドでCMD17等の
シングルブロック転送と同様最小512Byte単位でやり取りをおこないます。
DELKINカードにおいては特別な引数で、ある一定の順番で、CMD56の送受信動作を
行うことにより目的とするSMARTの情報を得ることができました。





DelkinDashboardとCMD56で読みだしたSMART直値をUARTに吐かせて値の
比較です。カードに何らかの書き込み動作を行うと電源再投入時にDashboardの
"TotalPowerupCount"に相当するSMART直値が更新されているので正しく
SMARTが読めていると判断しました。
ところで具体的にどうやってCMD56投げたのと知りたい方がいると思いますが対価を
払って得た情報ゆえこのぶろぐ上で詳しく公表できませんが…
…おや?このデータシートDELKINと関係ないのになんだかそっくりだー(棒読み


詳しくは言えませんが512バイト分のSMART情報のフッタに相当する部分のデータが
CIDの情報と一致しておりました。何かのvalidationに使うのでしょうか(棒読み
まぁあまり重要な情報ではないでしょう(伏線




このDELKINカードを選んだ理由は拙作のSTM32Primer2を使ったGNSSロガー
信頼性向上につきます。一度Primer2の筐体中に組み込んでしまうと構造上
ケースの中にカードが封印されてしまうため簡単に取り出せなくなるのでSDカードの
寿命診断を何らかの形で外部から行いたいと思いSMARTが取れるカードを選んだ…
と言う経緯です。
次回のちょっとネタバレになりますがこのGNSSTrackerのマスストレージモードでも
DelkinDashboardを使いSMARTの取得に成功しています。
なんでCMD56発行してないのにSMART採れるんでしょうね(意味深


願わくばSMARTを利用した寿命診断機能がSDAで正式に規格化され、民生用の
SDカードでも気軽に寿命診断できる素敵な時代が来るようになることを願います。

だからSDAの中の人のPanasonicさん頼みますよ!
なぜか不自然なくらいパナ推しのねむいさん。






ここでねむいさんFAQ特別編
Q:ねむいさんねむいさん、確実にSLCのカードを見極める方法を教えてくださいっ!
A:
 SLCってカードにでかでかと書いてあるカード選べばOKです☆

Go to top of page