P2Sで書き込み不可になったUSBメモリを復旧しました

Bambu Labの3Dプリンタ「P2S」で使用していたUSBメモリに、書き込み不可のエラーが出ました。Windowsに接続して確認しても、ファイルの読み出しはできるものの、削除もフォーマットもできません。別のPCでも同じ状態だったため、USBメモリ側の問題を疑い、内部コントローラーの再初期化を試しました。

今回の対象は、ELECOMのMF-TPC3128GBK(128GB)です。購入から約2年で、ここ1年ほどはP2Sに接続して使用していました。調査と検証用スクリプトの作成にはCodexを使用しています。

以前からWindowsでは修復を求められていた

今回のエラーが出る前から、P2Sで使用したUSBメモリをWindowsへ接続すると、修復を求められることがありました。その都度「スキャンと修復」で解決していましたが、今回はP2S側で書き込み不可となり、Windowsからもフォーマットできない状態でした。

印刷していないときはそのまま抜いていたので、取り外しのタイミングで管理情報に不整合が生じた可能性を考えました。ただ、以前の修復要求と今回の書き込み禁止が同じ原因かは分かりません。メモリ自体の劣化も候補として残ります。

データは退避できていたため、今回は内容を消去する前提で、復旧できるか調べることにしました。

Windows側の設定か、USB本体の制限かを調べる

最初に確認するのは、どこで書き込みが禁止されているかです。Windowsの読み取り専用設定であれば、その解除で戻る可能性があります。

今回はDiskPartなどで属性の解除を試しても変化がなく、USBへの直接問い合わせでも、本体が書き込み禁止を返していました。そこで、通常のフォーマットから、内部コントローラーを調べる方針へ切り替えました。

USBメモリの製品名と、内部で使われているコントローラーの名前は別です。対応する初期化ツールを探すには、製品名だけでなく、コントローラーとフラッシュメモリの情報が手がかりになります。

今回使用したツールと役割は、次のとおりです。

ツール・方法確認・実施したこと
DiskPart/PowerShell読み取り専用属性とディスクの状態を確認。属性解除では改善しませんでした
USB Flash Drive Information Extractor/ChipEasyUSBの識別情報を取得。ただし、コントローラーの特定には至りませんでした
SCSIコマンドによる直接問い合わせ応答内の「ASolid」という文字列から、調査対象を絞りました
IS918MPTool_EN_241121A_S1内部フラッシュの情報を認識し、コントローラー側の再初期化をおこないました

診断ツールで「Unknown」と表示されても、そこで調査が終わるとは限りません。今回は直接問い合わせた応答が、対応ツールを探す手がかりになりました。

対応するMPToolで再初期化する

今回使用できたMPToolでは、フラッシュメモリを「H25G9TC18C」として認識しました。再初期化を実行すると、書き込み禁止が解除され、ファイルの作成と削除ができるようになりました。

途中で容量が約半分になりましたが、これは容量設定を見直し、「Auto Check」に変更して再初期化することで、約125.4GBまで戻りました。ツールが処理を完了しても、容量やフォーマット形式まで確認する必要があります。

MPToolは内部構成に合わせて選ぶもので、今回のツールを別のUSBメモリにそのまま使えるわけではありません。データ消失や認識不能になる可能性もあるため、データ救出が必要な段階では実行せず、入手元やセキュリティソフトの警告にも注意が必要です。

最後は全容量に書き込んで確認する

復旧後は、利用可能な全空き領域にランダムデータを書き込み、すべて書き終えてから読み戻しました。表示容量だけでなく、その領域に実際に保存できることを確認するためです。

約125.4GB、117ファイルの照合結果はすべて一致。約2時間7分の検査で、書き込み・読み戻しのエラーはありませんでした。

今回のような症状では、Windows側の設定確認、内部コントローラーの調査、対応ツールでの再初期化、全容量の検証という順序が、調査の参考になると思います。

根本原因までは確定できませんでしたが、フォーマットすらできなかったUSBメモリを、全容量で読み書きできる状態に戻せました。長期的な再発については、今後の使用で様子を見ることになります。

キャラクターにまばたきのリズムを

Unityなどでキャラクターに自動まばたきを実装するとき、頻度やタイミングをどう決めればよいのでしょうか。本記事では、瞬目に関する文献を手がかりに、あかりれっくスタジオがUnityで採用した頻度、間隔のばらつき、まぶたの開閉動作、発話に合わせた調整を紹介します。コードの手順解説ではなく、自分のキャラクターに合う設定を考えるための設計の技術報告です。

続きを読む キャラクターにまばたきのリズムを

私がNikon巻きをやめた理由

みなさんこんにちは。新年あけて初の投稿です。
今日はカメラのストラップの取り付け方についてお話したいと思います。

私の持ってるカメラはCanon EOS7Dで、いままでは
カメラはCanon、ストラップはNikon巻きという状態だったんですよね。
Nikon巻きは別名、プロ巻きとかプロスト巻きとか呼ばれてるんですが
ストラップを新調したついでに、そのNikon巻きをやめた話です。

続きを読む 私がNikon巻きをやめた理由