チラシの裏の電子工作

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

ArduinoでSDのCIDなどを読む

何となくArduinoのSDカードライブラリを眺めてたら、特殊なことをしなくてもCIDやCSDなどのレジスタが読めることに気が付いた。
これらのレジスタはUSBカードリーダー経由のPCではたぶん取得できない。
android端末のような、OSがSDカードを直接制御するような端末であれば簡単に取得できるんだけど…

というわけで、せっかくなので作ってみた。
多分ちゃんとしたArduino+SDカードシールドなら配線不要でスケッチ書き込むだけだけど、そんな高尚なものは持ってないので自力で作る。

部品は中華NANO互換機

SDカードソケット
http://www.aitendo.com/product/3881

あとはユニバーサル基板とか抵抗とか。
全部で部品代は500円ぐらい。



SDカードDIP  
割と無理やり。両面テープで固定すると良い感じ。

CIDを読むだけの人
SDを差し込んだら全体の電源が落ちてしまう症状が出てたので、偽NANOの3.3V供給能力不足かと思ったら、単に配線間違えてるだけだったので、真ん中のでかいコンデンサは不要。
偽NANOは5Vなので、3kオームと1.5kオームで分圧。

ソースはSDライブラリのCardinfo.inoを改造。
CIDはhttp://goughlui.com/static/cidecode.htmを参考にした。
CSDはよくわからんので、片っ端から表示。

init...ok.
***** CID *****
RAW:0353445355333247806183AFAF00B773
Manufacturer ID:03 Sandisk
OEM ID:SD (0x5344)
Product Name:SU32G
Product Revision:8.0
Product SN:0x6183AFAF
Manufacturing Date:2011/7
crc:0x39 (raw:0x73)

***** CSDv2 *****
RAW:400E00325B590000EDC87F800A4040C3
csd_ver:1
taac:14
tran_speed:50
ccc_high:91
read_bl_len:9
ccc_low:5
dsr_imp:0
read_blk_misalign:0
write_blk_misalign:0
read_bl_partial:0
c_size_high:0
c_size_mid:237
c_size_low:200
sector_size_high:63
erase_blk_en:1
wp_grp_size:0
sector_size_low:1
write_bl_len_high:2
r2w_factor:2
wp_grp_enable:0
write_partial:0
write_bl_len_low:1
file_format:0
tmp_write_protect:0
perm_write_protect:0
copy:1
file_format_grp:0
crc:61
CardSize:37376

Card type: SDHC
Volume type is FAT32

Volume size (bytes): 1829240832
Volume size (Kbytes): 1786368
Volume size (Mbytes): 1744





以下ソース

続きを読む

カテゴリ:電子工作 - テーマ:ハードウェア - ジャンル:コンピュータ

SDカードを調べる

随分前からだけど、安いSDカードは偽物が混ざってるって噂を聞いたことがある。
ぶっちゃけあんまり気にしてなかったけど、調べられるもんかなと思って調べてみた。

LinuxならCID等のレジスタが調べられる。

# cat /sys/block/mmcblk0/device/cid

とか。
/sys/class/mmc_host/mmc0/mmc0\
にも同じようなものがあった。


取得したcidの意味は、以下のサイトで調べられる。
http://goughlui.com/static/cidecode.htm


Manufacturer ID、OEM/Application IDについてはまとまった情報がない…

https://twitter.com/mihadenchi/status/738778499998093312
http://www.asuka.cx/zaurus/sdcard/
http://www.asuka.cx/zaurus/SanDisk4GB/
http://miharin.wktk.so/sd/
http://codegist.net/snippet/python/decode_sd_cidpy_mttronc_python



というわけで、目についた物をリストにしておく。
IDOEM/AppNAME(カッコ内はOEM先)
0x01PA 0x5041Panasonic
0x02TM 0x544DToshiba
0x03SD 0x5344Sandisk
PTSandisk?手持ちのSDSQUNC-064G-GN6MA
0x04Sandisk?怪しい。
0x06RKRitek
0x09ATATP
0x13KGKingmax
0x19DYDynacard
0x1APQPower Quotient International
0x1BSMSamsung
0x1CSVTranscend
0x1DADADATA
0x1EAB???(Princeton、FUJIFULM、Calarion、Transcend)
0x27PHPhison
0x28BEBarun
0x31SQ???(Princeton)
0x51S`STEC/SunokeTech
0x5DSBSwissBit AG
0x61NLNetkust
0x63CZCactus Technologies
0x74JEJiaelec
0x82JTJiang Tay Technical
0x83NCNetcom Technology(HK)
0x84TFStrontium Technologies Pte

恐らくメジャーどころはこれで全部だろうから、Sandiskの製品買ったら中身が違った!怪しいから重要機器には使わないようにしよう!
ぐらいの自衛にはなる、といいな。
多分これを根拠に販売店に文句言っても『(´・ω・`)知らんがな』って言われそうだし。

Transcendとかの割と有名どころでも、過去にはOEM調達をしてたような形跡があるようだし…
販売元とMIDが一致しないからといって一概に偽物かって言われると…うーん。


続きを読む

カテゴリ:電子工作 - テーマ:ハードウェア - ジャンル:コンピュータ

Qi対応吸盤つきモバイルバッテリー

Qi対応の吸盤付きモバイルバッテリーを買ってみた。
税込み1880円。4800mAhだけどQi対応のことを考えたら安いのでは。

QI ワイヤレス充電 対応 モバイルバッテリー 4800mah 送料無料 コンパクト iPhone8 iPhoneX Plus スマホ 充電器 薄型 GALAXY S8 Xperia XZs X z5 z3 エクスペリア ギャラクシー AQUOS ケーブル不要 ケーブル一体型 Qi ★新商品





メーカーはPowerBank。
型番はWT171024-01。
説明ではInput 5V/2A、Output5V/1Aだけど、箱の表記が逆になってる。
DSC_0059 2
ちゃんと検証はしてないけど、箱の表記が間違ってる気がする。
型番とかで検索しても同型のものが見つからない…


DSC_0057 2
シリコン素材っぽい吸盤がついてて、マットな質感の素材でも割とくっつく。
吸盤だけいっぱい欲しいw

幅は4.5インチスマホとほぼ同じぐらい。
楽天の販売サイトで見るとiPhoneと比較してるので小さく見えるけど、小さくはない。

Qiの送電コイルがどうも本体のど真ん中にあるらしく、受電コイルがセンターから大きくずれている機種(SH-04E)ではかなり使いにくい状態に…
他のQi対応バッテリーもだいたい中央あたりにコイルがあるようなので、Qiレシーバとかを使う場合はケーブル長を考えたほうが良いかも。

あと、コイルがちゃんと向き合ってない状態だとノイズがタッチパネルに乗ってしまうようで、タッチパネルに指を近づけただけであっちこっちタップしたことになってしまう。

DSC_0060 2
電源入力ポート。
すっごい歪んでて最初はケーブルがはまりにくかった。


DSC_0058 2
糞怪しい、microUSB Lightning兼用ケーブル。
Lightning機器は持ってないので試してないけど、端子むき出しっていつみてもなんかあんまりいい気分じゃない…

そしてこの端子、常時5Vが出てるみたい。
大した問題じゃないけど、常時昇圧していると思われる。地味にエコではないかも。
スマホとかの負荷をつないだ時だけ蓄電残量のLEDが点灯するので、何らかの方法で節電はしているんだろうけど。
ただ、低い電流消費でも自動的に電源が切れない仕様は、マイコン類の電源に使えるかも。

ちなみにQiは電源ボタンを押すと送電開始、一定時間以内に相手が見つからなかったり、相手が満充電になると自動的に送電終了。
再び送電するにはスイッチ操作が必要。
電源ボタンには「ON/OFF」と書かれてるけどOFFはできない。

バッテリーを充電しながらQiへの送電も可。
同じくバッテリーを充電しながらUSBでの送電も可。
但し、バッテリー充電開始時に一瞬送電が途切れる。
効率がどの程度変わるのかは不明。

バッテリー残量が少ない状態でUSBでスマホを充電していると、充電→充電中止→充電→充電中止を繰り返す。
過放電保護が入ってない?

バッテリー残量を空っぽにしてからの充電で850-900mA程度流れてる。
7時間程度放置しておいたら5Vで3767mAh=18.8Wh流れたみたい。
(寝てたので途中経過は不明)
バッテリーの能力が3.7V4800mAh=17.7Whなのでおよそ1Whはロスなのか誤差なのか過充電なのか…



まだ分解してないのでアレだけど、っていうか分解するのが前提ってのがすでにアレだけど、、、
  • 作りは全体的にチープ。
  • サイズ、重量、吸盤に価値を見出せないなら他のバッテリーを買ったほうが幸せになれる。
  • 適切な負荷がないのでUSBの出力が1Aなのか2Aなのかは不明。
    携帯とかをつないだ限りでは500mA程度しか流れてないので、そもそもD+/D-がオープンの可能性すらある。
  • Qi送電コイルの位置がいまいちよくない(個人的感想
  • 出力が備え付けのケーブルとQiしかないから汎用性に欠ける
たぶん重量的にもケーブルの位置的にも、内部にはだいぶ余裕がありそう。
頑張ればもう一回り小型化できたんじゃないかって思う。

しかしコイツ、ねじ穴が見当たらないんだよな…
分解したら二度と元に戻せなくなりそう。



続きを読む

カテゴリ:製品レビュー&比較 - テーマ:周辺機器 - ジャンル:コンピュータ

Debian9でds-liteルータを作る

少し前に、WSR-1166DHPにLEDEをインストールしてds-liteルータを作った。
けど、無線LANを使わないなら普通にLinuxでよくね?って思ったので、Debian9で作ってみた。

ホストはESXi6.5だけど、ぶっちゃけ試してみたいってだけならPlayerとかでもいいかも。

仮想OSの準備
debianを最小構成でインストール。
もうこの際netinstの更に最小構成で良いと思う。

仮想OSにアプリを追加する
もうこの辺は好みで良いと思うけど、自分は以下の物を追加でインストール
  • open-vm-tools
  • vim
  • network-tools
  • traceroute


IPの固定
自分の場合はVPNへの折り返しルーティングが必要なので、ついでに設定しておく。
/etc/network/interfaces

allow-hotplug ens192
iface ens192 inet static
 address 192.168.1.28
 netmask 255.255.255.0
 gateway 192.168.1.1
 dns-nameservers 192.168.1.1
 post-up route add -net 172.16.0.0/24 gw 192.168.1.4


DS-Liteの設定
ゆっくり遅報さんが掲載されてるスクリプトを入手。
dslite.shを編集する。
Debian9はeth0とかではなく、ens999のようなインターフェイス名が付くので注意。

Debianにdslite.sh、dslite-auto-start.service、setup-dslite-scripts.shを送り込む。
setup-dslite-scripts.shに実行可能パーミッションを付与。
setup-dslite-scripts.shを実行。

再起動したら終わり。
マジで一瞬でできた。すっごーい。


続きを読む

カテゴリ:PC - テーマ:サーバソフト総合 - ジャンル:コンピュータ

ArduinoNano互換機のDTRリセットを無効にする

Arduinoは基本的にシリアルポートがオープンされたタイミングでリセットがかかります。
おかげでスケッチをアップロードするときにわざわざリセットスイッチを押さなくて良いのですが、待ち受けが基本のデバイスを作るときに案外邪魔。

PC側のアプリを作るときにDTRをoffにして作ればいいのですが、既存アプリなんかを使うときはそうもいかない。
というわけで、ハード側に細工する。

今回ターゲットとしたのはamazonで売られてるNano互換機。
時期によって値段が違うけど、自分が買ったときは1個320円。
注文から到着まで2週間ぐらいかかるけど、安いからね。

HiLetgo Mini USB Nano V3.0 ATmega328P CH340G 5V 16M マイクロコントローラーボード Arduinoと互換




USBシリアルチップがCH340Gというチャイナ製品になってる。
データシートを見てみると、15ピンがDTR。


で、手っ取り早く足上げ。
DSC_0087 1

分かりにくいので横から。
DSC_0085 1


というわけで、自動リセットの無効か完了。
足が戻ってこないように細く切った絶縁テープを張っておくと良いかも。


カテゴリ:電子工作

前のページ 次のページ

FC2Ad