2016年11月30日水曜日

blink(1)をスタンドアロンで光らせてみる。

blink(1)ベースのLEDテープコントローラを自作したのはいいけど、blink(1)はもともと通知用LEDランプ的な使い方が主流なようで、PC起動時に光らせる方法がなかなか見つからない…
たしかにBlink1ControlはIFFFTと連動できたり便利なんだけど、PC起動時に自動的に光らせるモードがなさそう。

ということでblink(1)のスタンドアロン機能を使って電源を入れた瞬間からEEPROMに登録したパターンを光らせられるようにしてみた。

まずBlink(1) v1には12行ほどのパターンを登録しておくと、電源だけを供給すると光らせられる機能があるっぽい。PCでUSBデバイスとして認識されると止まってしまうけど、blink1-toolを使うことによりスタンドアロンのパターンを実行することができる模様。

つまりWindowsが起動した瞬間にblink1-toolからパターンを再生するようにスタートアップに登録しておけばずっと同じ発光パターンを繰り返してくれるはず…。

まずはblink(1)本体にパターンを記憶させる。
blink1-toolをBlink1Controlをインストールしたディレクトリに入れたと仮定して、以下のバッチファイルを作成した。
cd "C:\Program Files (x86)\Blink1Control\"
blink1-tool -m 10000 --rgb 0xff,0x00,0x00 --setpattline 0
blink1-tool -m 10000 --rgb 0xff,0x99,0x00 --setpattline 1
blink1-tool -m 10000 --rgb 0xfa,0xff,0x00 --setpattline 2
blink1-tool -m 10000 --rgb 0xa5,0xff,0x00 --setpattline 3
blink1-tool -m 10000 --rgb 0x00,0xff,0x00 --setpattline 4
blink1-tool -m 10000 --rgb 0x00,0xff,0x7b --setpattline 5
blink1-tool -m 10000 --rgb 0x00,0xff,0xff --setpattline 6
blink1-tool -m 10000 --rgb 0x00,0x37,0xff --setpattline 7
blink1-tool -m 10000 --rgb 0xc3,0x00,0xff --setpattline 8
blink1-tool -m 10000 --rgb 0xff,0x00,0x72 --setpattline 9
blink1-tool -m 0 --rgb 0x00,0x00,0x00 --setpattline 10
blink1-tool -m 0 --rgb 0x00,0x00,0x00 --setpattline 11
blink1-tool --savepattern
blink1-tool --play 1
これを実行するとゆっくり色が変化していくパターンをblink(1)の内蔵フラッシュに書き込んで再生できる。詳細はコマンドリファレンスを参照するといいけど、簡単に言うと次の行の色までにある時間で変化していくような感じ。
上のパターン10行ほどつかってゆっくり色が変化していく。

そしてPC起動時に光らせるにはBlink1Controlの自動起動を切ってスタートアップにblink1-toolを登録してオプションに--play 1を入れるだけでOK。
(Blink1Controlを起動したり、USBデバイスとして認識されると内蔵パターン再生が止まってしまうため。)

これで起動時に好きなパターンで発光できるようになった。

2016年11月25日金曜日

RGB LEDテープコントローラを小型化してみた。

前に作ったUSB接続のLEDテープコントローラを欲しがってる人が意外といたので何個か作ってみてたんだけど、いろんな改善点を盛り込んで最終形態にしてみた。

初期型では壊れたESCから剥がしたN-Ch MOSFETを使っていたんだけど、PC用だとあんまり長いLEDテープを使わないのでSOT-23サイズのMOSFETに変更。(定格5Aぐらい)

基板にケーブルを直接はんだ付けしてたんだけど結構壊れやすいらしい。さらにSOP8のマイコンを2.54ピッチの基板で無理やり使ってるからなぁ(パッドを半分にして使ってたり)
というわけでコネクタ式にしてみた。
マイコンは相変わらずSOP8なんだけど変換基板が余っていたので変換基板を使ってみた。

回路自体は前回同様で、blink(1)のv1ベース。blink(1)はオープンソースなのでGithubより回路図もファームウェアもダウンロードできる。


面実装部品ばっかり使ってるので表面は結構シンプル。


あまり考えずに作り始めてしまったので裏面汚い…
USB用のツェナーは例によって青色LEDを使用しております。

6Pinコネクタ側がUSBと12V電源、4Pin側がLEDテープという配置。

そして絶縁は前回同様熱収縮チューブを使用。これでPC内に両面テープとかで貼り付けられる。

ちょっとチューブ大きかったかな…


透明チューブなので通信してると裏面のLEDが点滅するのが見える。
意外とこのLEDは明るかったので表面からでも確認できた。


2メートルぐらいのLEDテープでもFETがすごく熱くなってる様子はなかった。

組込例

2016年11月20日日曜日

QBXに底面ファン取り付けてみた

ようやくQBXにMSIのGTX 1080を詰め込めたところで、底面ファンを取り付けようとしたら干渉してしまったので20mm厚ファンを買ってみた。
ドスパラで売っていたDeepcool GS120。PWMで20mm厚なのに異様に安い。
中身はこんな感じ。QBXに取り付けるのにネジが必要なんだけど、ネジはQBXについてきたネジを使用した。
吸気ファンとして使用するのでこの向きに取り付ける。
20mmファンならグラボに干渉しない!

起動してみたんだけどどうもファンが回り始めるときにケースに擦ってるような音が…
仕方がないのでゴムワッシャを挟んでみた

PCファン用ネジにはM5用がぴったり合う。
厚み2mmでもまだグラボに干渉しなかった。ゴムということで振動のせいで発生する音も吸収できそう?

静音性的にはPWMの最低回転数ではなかなか静か。
最大回転数だと結構うるさいかも?


2016年11月5日土曜日

PCIE補助電源コネクタをスリムにしてみる。

前回はQBX KAZEを加工してMSIのGTX 1080を入れられるようにしたけど、今回は電源装置をちょっと改造して電源コネクタをスリム化、サイドパネルを閉められるようにしてみた。

前回、QBX KAZEにGTX1080を突っ込むために、カットしてみたけど今度はPCIE電源コネクタが引っかかってサイドパネルが閉まらない始末…
ということでコネクタを改造してスリムにしてみた。

どうやらスリムコネクタ採用の延長ケーブルとかも存在してるみたいだけど結構高級。さらにMSIのGTX 1080は補助電源コネクタが8Pinと6Pinなので2本必要だ。
ということで電源装置自体を改造して見ることに。

電源装置はKRPW-PT600W/92+ REV2.0を使用。80Plus Platinumでプラグインじゃないので今回QBX KAZEに採用してみたやつ。
12Vレーンが1つだから余り考える必要もないしね。

ただしPCIE補助電源が1本のケーブルから分岐してるタイプなので余計にケーブルが曲げられないのでサイドパネルが余計に閉められない。
6Pinと8Pinが個別に来ていればぎりぎり閉まりそうなんだけど。

延長ケーブル使うのもなんか効率悪そうなので早速分解。
6Pinと8Pinのケーブルを電源装置から直接引いてこようかと。
そのほうが電流流せそうだし。(ケーブルはAWG18を使ってるみたいなので問題なさそうなんだけど
4Pinのコネクタとか使わないのでカット。ただしこれだけだと12Vのケーブルが足りないので追加。
コネクタの方も削ってこんな感じでケーブルを曲げられるように。

8Pinの方も分岐されてるケーブルをカットして端子を付け直し。
ATX電源の端子はほぼMolexらしい。

端子はeBayで購入した。カシメ工具は汎用のものが使用可能だった。


8Pinコネクタも削ってケーブルを曲げやすいように改造。


最後にケーブルを干渉しないように曲げて完成!

グラボもCPUクーラの高さも結構ギリギリ。

だけどちゃんと蓋が閉まる!

この大きさでi7 6700KとGTX1080が積めて、冷却もそこそこなケース!QBXは素晴らしいなぁ
やすいし…
暖かくなる前には吸気ファンを探してこねば。

2016年10月21日金曜日

QBX KAZEを加工してMSIのGTX 1080を突っ込んでみた。

ゲーミングマシンを新調してから1ヶ月が経ってしまった…
まだ完成してないのに…

というわけで今回はQBX KAZEにグラボが入るようにケースを加工してみた。
もともとQBX(LEVEL∞のC-Classも同じかも)にMSIのGTX 980Tiが入るという情報があったので問題ないとは思っていたんだけども、1080は更にデカかった模様。

MSIのグラボは長さを抑えるために幅が広くなってるようで、QBXに入れるならどちらかと言うと幅控えめで長さが長いほうが良いかもしれない

早速加工の方なんだけど、金ノコとかめったに使わないのでどうしようかと思っていたらダイソーにあった!
これで108円である。まぁ一回使えればいいし…
ちなみに3種類ぐらい売ってた。

加工するときは金属の粉が出るので、もちろんパーツは全部外して、ケースの内部にも紙をおいてできるだけ粉が飛び散らないようにした。(写真取るの忘れてた

加工後はエアで十分に鉄粉を飛ばしたり拭いたり。錆びるとあれなので塗装が剥がれたところとか切断面は黒マジックで塗っておいた。本当はタッチペンとかでペンキのほうが良いかも。

ちなみに蓋が閉まらない問題はこれだけではないので端子をポチっているんだけどまだ届いてない…
そう、PCIE電源コネクタが出っ張って閉められない。
この電源装置の悪いところで、8Pinから6Pinに分岐してるせいでケーブルがガッツリ曲げられない…
次回は電源ケーブルの加工かな
いつ完成するんだろうか…

2016年10月16日日曜日

アナログ5.1chの切替器を作ってみた。

クリエイティブのサウンドカードとクリエイティブの5.1chスピーカーを使っている友人がアナログ5.1ch対応のヘッドホンを購入したらしく、ミニジャック3本を抜き差しするのは面倒ということなので切替器を作ってみた。

既製品も調べてみたんだけどありそうでなかったので…

まぁスイッチで切り替えてもいいんだけど、6回路2接点のスイッチとかなかなか高級だし、試しにリレーで切り替えてみた。(音質がどうなるかはわからないけど

せっかくリレーで切り替えるのでDigisparkを使ってみた。
用意したのは3.5mmジャック9個、2回路C接点のリレー×3、NチャンネルFETとDigispark。

最初に大まかにレイアウトを探ってみた。
まぁこんな感じになりそう。

かんたんな回路なのでせっせとはんだ付け。この調子だとジャンパ面倒そう。

何も考えずにこんな感じになった

DigisparkとPCはUSBで通信できるようにDigiUSBを使用。
Windows側のプログラムはVC#で作成してみた。

とりあえずこんなプログラムで切り替えられるように。VC#でDigiUSBを使う方法は前に紹介したサンプルを使ってみた。

とりあえず使ってみてもらってるけどノイズなどの問題はなさそう。
ただ再起動時にたまにDigisparkが不明なデバイスになるっぽいんだけどなんだろうなぁ

2016年9月24日土曜日

WT3020にカスタムファームウェアを入れてみた。

OpenWRT入れたり純正ファーム入れたりして遊んでいたNEXXのWT3020Hだけど、OpenWRTでは設定が細かすぎるし、純正ファームウェアではあまりいじれないし…
そもそも純正ファームウェアのアップデートもよくわからないし…
ということでPadavan氏がASUSのRT-N56Rのファームウェアを移植しているっぽいので使ってみた。

Forumによると純正ファームからの書き換え方法が紹介されていたのでとりあえず純正ファームに戻してから書き換えてみた。

リセットボタン長押しで設定はもとに戻しておいた
LANケーブルでWT3020に接続してIPアドレスが割り振られるのでtelnetで接続。

デフォルトIPは192.168.8.1
ユーザー名:nexxadmin
パスワード:y1n2inc.com0755
でログオンできるはず。

とりあえず純正ファームをバックアップしていない人はバックアップしておいたほうが良いかも。

WT3020HにはUSBポートが付いているので今回はUSBメモリ経由でファームウェア書き換えを行う。
まずはPadavanファームウェアをダウンロードしてくる
今回は現時点での最新のWT3020_3.4.3.9-099.trxを使用した。

これを適当なUSBメモリの直下に入れてWT3020Hに差し込む。
そしたら先程ログオンしたTelnetで
cd /mnt/sda/sda1
でUSBメモリのルートディレクトリに移動して
mtd_wrute -r -e mtd3 write WT3020_3.4.3.9-099.trx mtd3
でmtd3(firmware領域)に先ほどダウンロードしたファームウェアを書き込む。
ここで電源切ったり中断すると大変なことになるので注意。

書き込みが終わると自動で再起動するので再起動後IPが再割り当てされるはず。
ASUSの移植ファームだとデフォルトIPが192.168.1.1なので、同じセグメントのIPが割り振られたらhttp://192.168.1.1にアクセスすると…
3.4.3.9-099_930b01a
ASUSのルーターっぽい設定画面が!
NEXXの純正ファームより高性能っぽい。これで高性能なポケットルーターとして使えそう。
このルーター用のDD-WRTがあればよかったんだけどOpenWRTよりはこのファームウェアのほうが使いやすそうなのでしばらく使ってみようかな。
小型NASとしても使えそうだし。

ちなみに設定画面のユーザーIDとパスワードはどちらもadmin。
WiFiのデフォルトパスワードは1234567890だった。

ちなみにファームウェアのサイズが4MBを超えてるのでWT3020Aとか上海問屋のDN-11042はだめかも。
16MB化したときみたいにSPIフラッシュメモリを交換すればいけるかもしれないけど
まぁUSBついてないしな…

とりあえずCustomizationの中のInternet Detectorで77.88.8.8を1.1.1.1にして、77.88.8.1を1.0.0.1に変更しておいた。