チラシの裏の電子工作

電子工作、PC関係の備忘録というか、チラシの裏

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

カテゴリ:スポンサー広告

東芝LIF(ZIF)HDDのデータ復旧

SONYのハンディカムHDR-SR11を水没させてしまい、再起不能になって助けを求められました。

本体は捨ててしまって構わないけど、中に入っている映像をなんとか救出して欲しい!との事。

カメラを分解してHDDを取り出す。東芝のHDD MK6014GALが入ってました。
LIFなので、そのままではPCに接続できないので、変換アダプタを入手。

変換名人 ZIF接続1.8"HDD(東芝/日立) → 2.5"IDE変換アダプタ IDE-ZIFB25A




これがまた、のっけから不親切。
流石不親切で定評のあるプロ用の変換名人です。
なので、重要なポイントをまとめておきます。

フィルムケーブルは2種類標準添付
商品写真に写ってないけど、ケーブルは標準添付でした。

青-白:今回はこちらを使いました。おそらく東芝用?
青-青:東芝HDDには太すぎて刺さらなかった。恐らく日立用?


用途不明のジャンパは罠
今回、このジャンパをOPENにしないとPCが認識しませんでした。
マスター/スレーブに切り替えかとおもったけど、2.5IDE側に直接結線されているように見えません。
ひょっとしたら日立用?

と言うわけで、今回使った物は、変換器本体+青白ケーブル。
DSC_0627.jpg


HDDのラッチが非常に小さい
小さいけど爪で起こしてやると既存のケーブルがスポッと抜けます。

起きてる状態
DSC_0629.jpg

ロック状態
DSC_0630.jpg

ラッチを起こした状態でフィルムケーブルを差し込み、ラッチをロックします。
DSC_0631.jpg

反対側から見ると端子が結構はみ出て見えるけど、これでOKぽい。
DSC_0632.jpg

変換器側のラッチオープン。
DSC_0628.jpg

変換器も同じようにラッチでロックして接続。
このとき、1PINを目印にして表裏を確認。
DSC_0633.jpg


あとはPCに接続して認識してしまえば大勝利。
HDR-SR11の中身はFAT32なので、Windowsから認識できてしまえば簡単です。

と言いたいところですが、このHDDは水没したせいか、先頭セクタ付近に重大な問題があったようで、中身を覗くのに時間がかかりました…
色々試した結果、最終的にLinuxマシンを用意して、testdiskを使ってファイルだけ復旧させ、HDDそのものの修復は諦めました。



スポンサーサイト

カテゴリ:修理&分解 - テーマ:ハードウェア - ジャンル:コンピュータ

ArduinoHelper

Arduinoを少しだけ使いやすくするツールを公開しました。
なお、感想には個人差があります

ArduinoのIDEでのコンパイルを自動的に検知して、以下の情報を表示します。
  • HEXファイルのフルパス
  • ELFファイルのフルパス
  • AVRのメモリ使用状況

また、以下の機能を有します。
  • コンパイルに仕様したディレクトリをExplorerで開く
  • HEXファイルをクリップボードにコピー
  • ライターアプリを起動する

Arduinoで作ったHEXファイル単体を取り出したい事が多いけど、その都度探すのがめんどくさい!って人におすすめです。
そんな人が世の中に何人居るのか知りませんが
殆どの機能が1.6.xで実装されたみたい。


ダウンロードはこちらから


ArduinoHelper000.png
実は公開(2014/11)よりも遥か以前…数年前に作成したのですが、公開するのが面倒で数年間放置してました。
Arduinoが案外世の中で流行っているようなので、改めて公開しようと思った次第です。


コンパイル出力を検出すると、自動的にDEVICEに指定されたマイコン上でのメモリ消費量を表示します。



ご注意
  • 本アプリ単体では何の役にも立ちません
  • Arduinoを既に使用されている方が対象です。
  • 本アプリにライターの機能はありません。
    (ライターのアプリを起動する機能はあります)
  • 主にHIDspx-GUI、avrdude-guiと連携
    (むしろそれ以外のアプリの事は考えてないレベル)


非常にざっくりとした使用手順

  1. ArduinoHelperを起動します。
    (設定がまだなら設定を行ってください)
  2. ArduinoIDEを起動して、適当にスケッチを書きます。
  3. ArduinoIDEでコンパイルします
    (三角マークをクリック)
  4. コンパイルが終わると、ArduinoHelperに色々表示されます。
    この状態で、
    copyをクリックすればhexファイルがクリップボードにコピーされます。
    writeをクリックすれば設定されているライターアプリを起動します。


非常にざっくりとしたFAQ

Arduino1.6.x系で使えない

ArduinoHelperSetting.xmlをエディタで開いて編集してください。

変更前

  <HexFilter>*.cpp.hex</HexFilter>
  <ElfFilter>*.cpp.elf</ElfFilter>

変更後

  <HexFilter>*.???.hex</HexFilter>
  <ElfFilter>*.???.elf</ElfFilter>




HEXファイルって何やねん

コンパイルして出来上がった成果物です。
windowsで言うexeファイルみたいなもんです。


HEXファイルだけ抜き出して何すんの?

AVRマイコンに直接HEXファイルを書き込めば、AVRマイコンチップ1個で工作ができます。



AVRライター持ってないねん

作ればいいじゃない。

個人的には以下の2つがおすすめです。
  • HIDaspxを作る + hidspx-gui
  • FT232RL(BitBang) + avrdude-gui
私は前者を愛用しています。
いずれの情報も千秋ゼミさんから入手可能です。



HIDaspxの利点:
  • とにかく安く作れる(ATtiny2313以外は汎用的な部品のみ)
    Arduinoの部品(16MhzXtal等)を流用して作った記事→こちら
  • ドライバ不要

FT232RLの利点:
  • 汎用性が高い(本来のシリアルTTL変換として使える、BitBangでライターにできる)
  • 秋月で1000円以下。
  • 更に言うと秋月のキットを買うだけでArduinoを作る最低限の部品が入手可能

hidspx-guiとavrdude-guiの違い:
  • hidspx-guiはHIDaspxでしか使えません(多分)。
    が、設定が何も要りません。
  • avrdude-guiは色んなライターが使えます。HIDaspxも使えます(多分)。
    が、当然ライター毎の設定が必要です。
  • 私は『FT232RLを使うときはavrdude-gui』
    『HIDaspxを使う時はhidspx-gui』
    と言った感じで使い分けてます。


市販のライターは使ったことがないのでよく知りません:-)

自分はFT232RLを買ってHIDaspxを作ってから秋月のAVRマイコンキットを買ってArduinoを始めました。
なんか普通の人と順番が違うような気がしますが、気のせいです。



カテゴリ:公開ソフト - テーマ:プログラミング - ジャンル:コンピュータ

ONDA Vi10精英版 電源が入らなくなった&怪しいパケット送信を停止させる

長らく使ってたONDA Vi10 精英版。専らなめこ専用機
電源入れても充電警告っぽい表示が出て電源が入らなくなりました。
昨日まで普通に使えてたのに…遂にぶっ壊れたか?
分解しても手がかりがなかったので取り敢えずファームを入れ直してみたら復活
中身のデータは消えたけど、文鎮化よりマシでしょう。

ファーム入れ直しについては、アンドロイド少女隊さんの記事が大変役に立ちました。

http://androidgirlstablet.com/blog-entry-354.html
この手順で取り敢えず4.0.3を入れて初期状態に戻したら復活。
電源が入らないと言っても、ブートローダーにあたる部分は生きてるらしく、普通にファーム入れ替えできました。

更にこの記事を参考にして、公式4.1.1をroot化。
http://androidgirlstablet.com/blog-entry-574.html


更新が終わったら、Titanium Backup ★ rootで中華っぽいアプリを片っ端から削除。
これで中国にアクセスするアプリは居なくなった…はずだった

ところが、、、何者かが中国のIPに向かって通信してる
流石中華タブレット。
どうせそんなことだろうと思って、Vi10から中国に向かって送出されるパケをWindowsマシンでキャプチャして監視するツールを作って監視してました。
このツールはそのうち形にして配布したいな。

Vi10にNetworLogをインストールして調べてみると、
起動直後にrootがTCPで42.121.236.55:80の通信を行っている

無線LANのon/offではパケットが出てない事から、トリガは起動時と推測。
と言うわけで、/init.rc の中を覗いてみると

on property:sys.boot_completed=1
   start preinstall
   start systemc


systemcが怪しい
直前の定義で、pathは/system/bin/systemcだと言うことはすぐに判明。

端末エミュレータを入れて、/system/bin/systemcを叩いてみる
ビンゴ
42.121.236.55:80への通信を6回程度(恐らくリトライ)行うみたい。
このIPは現段階では応答しないので既に終了したサービスなのかも。
生かしておいても特に実害は無さそうだけど、気持ち悪いので停止させます。

on property:sys.boot_completed=1
   start preinstall
# start systemc



として保存。
再起動後にパケットの送出が無くなったのでOKでしょう。

/system/bin/systemc 自体も消しちゃって良いかも。


カテゴリ:備忘録 - テーマ:android - ジャンル:コンピュータ

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。