2018/01/03

シナ通販の話 #1

 ま、AliExpress。急いでないからって、久々に頼んだら、あいかわらず。
俺「届いたけど、説明にあったのと違います」(写真添付)
店「よく分からないけど、動かないの?」
「動くとか動かないじゃなくて、説明にあったのと仕様が違うでしょ!」(さらに、写真添付)
「いや、だから動くでしょ?」
「注文ページの型番・仕様の品物が必要なの!!」(さらに、さらに、写真添付)
「同じものだと思うよ」
「いや、いや、いや、見るからに違うじゃん!!!」(ピキピキ)

  ※最初に戻って、商品の違いの説明を、バカ詳しく繰り返す

「やっぱり、同じものだと思うよ」
 こんな調子のやりとり、ストレスで、ハゲるわ。

 面倒になって諦める利用者も多いのだろう。ショップの対応が悪くても、AliExpress の裁定もあるじゃないかと思うかもしれないが、これも、残念ながら、フェアなものとは思えない。そもそも、AliExpress 側がキチンとしていれば、いい加減なショップは、出店禁止なり、ペナルティくらうなりするはずじゃないか。


Aliexpress 鉄則

「高いものは買うな」 失敗しても諦められる金額までのものを
「壊れそうなのは頼むな」 長物、凸凹、プラスティック
「納期などあてにするな」 急ぎのものは頼まない
「評価を信用するな」 参考程度に
「トラぶったら、即、Open Dispute」 ショップとのやり取りは時間の無駄
 喧嘩上等な人、ヒマな人以外は、大人しく国内通販を利用するべき。時間的なものも考慮すれば、同じ商品で高いのも、納得できます。ストレスフリーで買い物できたほうが、結局はよかったってことに。

 それでも、まともなショップもあるんだよね。安くても速かったり、梱包も丁寧だったり、こればっかりは、利用してみないことには、分からないからね。

2017/12/31

こーどねーむ「ホンコン」 with Arduino

 スーファミ・ゲームの事を書いたので、一応記事にしておく。年末の記事だが、時系列的には、もっと前、内容も古い。下記のダンパーは既にバラして作り直し済み。


 エミュレータや吸い出し機の話をすると、すぐに違法だなんだと、ケチをつけたがるやつがいる。DVD なんかは、私的複製でもプロテクトを解除するからダメとかいう、キチガイじみた法律が出来た。ゲーム・ソフトもそれと同じという主張だ。だが、昔のゲーム機のソフトは、暗号化はされていないので、自分の持ち物をどうしようが、問題はないはず。アップロードや、ダウンロードがどうのというのは、別次元の話。
吸出し機リンク
 こーどねーむ「ホンコン」 with Arduino を作る cakkera102氏の Arduino MEGA 版
 こーどねーむ「ホンコン」 with Arduino cたにやま氏の Arduino Uno 版
 昔からのゲームオタクならば、各種ゲーム機といっしょに、この手の謎デバイスを持っているはず。昔の吸い出し機は、パラレルポートを使ったものだったが、今時は、USB 経由の Arduino で出来るらしい。上記リンク、akkera102氏のは、Arduino MEGA に、カセットスロットと、実にシンプルなので、まねて組んでみることに。

 カセットを差し込む受け側のスロットは、2.54mm ピッチの片側 23x2=46ピン以上のものが必要。これが、なかなか見つからない。結局、NINTENDO64用の50ピンので間に合わせた。Arduino MEGA の上に乗っかる仕様にしたかったので、空シールドを使って、ちまちま手配線した。接続数が多いのが面倒なだけで、難しいわけではない。

 インジケータ用の青色LEDと、デバッグ用の LCDモニタのコネクタを追加。空シールドのリセット用タクトスイッチを、軽い力で押せるマイクロスイッチに交換。配線が楽そうな向きに合わせてハンダ付けしたら、カセットの向きが逆だった(笑)。男は細かいことを気にしちゃあダメなんだよ。

 未完成のWindows 側コントロールソフト。Arduino に命令を送ってデータを受け取る。元ソースを参考に、Delphi で組み直そうとしたが、そもそもの仕組みがわかっていないものだから、作業が進まない。これじゃ駄目だと、スーファミのロムまわりの資料を、しばらく眺めたが、中々難解。わからないなりにも、Arduino 側の配線の役割と、ロムのタイプによって色々と処理も変えないといけないのも分かった。
スーファミ資料リンク
 SNES Kart  ピン情報
 SNES LoRom Memory Model HiROM より面倒
 なんだかんだで、とりあえず、ジ・アトラスのセーブデータは出し入れ出来るようになった。肝心のデータは、テストを繰り返すうち消えてた(笑)。がっくりしつつも、また、最初から始めることになったが、エミュでやれば、セーブ&リロード使いまくりで、ゲーム進行は速いはず。

 市販の吸い出し機を買っても、数千円から1万円くらいだし、電子工作の道具とか持っていないなら買ったほうが早い。それでも、Arduino は、他でも色々使いまわせるし、何しろ素人でも扱えるシンプルさ、学習のしやすさ、興味あるなら試してみるといい。

他の吸出し機リンク
 Cartridge Reader Shield for Arduino Mega 2560 N64 や GB も読めるらしい
The Atlas(ジ・アトラス)の世界地図を描き起こす 力技www
オリジナル吸い出し機 最終的には、ゲームボーイ用も兼ねる

2017/12/29

Wii Retro Pad Adapter #1


 Wii のリモコンに、他のゲーム機のコントローラを繋げる実験。市販でも、この手のアダプタはあったような気もするけれど、色んなのに対応しているのがいいね。Wii 用スーファミコントローラも作れそう。

 とりあえず、PS2のは、認識したが、PSの格ゲーコントローラは、駄目だった。readme には、Playstation digital pads and Playstation 2 pads とあるのに。純正のやつだけなのかな。
参考リンク
 Wii RetroPad Adapter GitHub - bootsector/wii-retropad-adapter



 スーファミのは、あっさり、つながった。スーファミのコントローラ基板をつかって格ゲーのコントローラを乗っ取ればいいのか。後3個くらいは、格ゲーコントローラ持っていたはずなのに、押入れの奥かなぁ。

 純正のWii 用スーファミコントローラは、限定だったし、ミニスーファミのコントローラは、そのまま使えるそうだけど、あれは、別売りしてるのかな?昔のと同じ精度の純正コントローラなら、サードパーティの製品とは、段違いの出来だからなぁ。

2017/12/04

The Atlas(ジ・アトラス)の世界地図を描き起こす

   地図作成ゲームである「ジ・アトラス」を、20数年ぶりにチャレンジ。不満な点も多々あるが、シミュレーションゲームの傑作だと思う。

 最初にやったのは、PC-98 版で、今思えば、マウスの操作性に難があったが、スーファミ版は、6ボタンに上手いこと割り振られていてコントローラで問題なく遊べる。ただし、セーブ&ロードを繰り返す作戦(ちょっぴりズル?)なしには、航海の拠点となる商館が造れず、手詰まりになる可能性が高い。

 で、完成したスーファミ版の世界地図を、PC上に力技で展開してみた。力技というのは、詳細表示を無理やり?ぎ合わせるローテク作業。巨大な画像ファイルを書き出すだけで、一日つぶれた(笑)。


 1周目の完成地図。ロシアにデカイ未確定領域が残ってしまった。

 今時のPCの解像度とマウスであれば、スムーズに閲覧可能だが、実際のゲーム上で、宝物を発見するには、ほんの数ブロック分しか見えない詳細表示にする必要があって、結構大変だし、だからこそゲームとして成り立つわけで。

 必死こいて頑張ったのに、クリアイベントだけじゃ、いまひとつ達成感がないし、PC上で見れたら、クリア記録にもぴったりでしょ。


 2周目。やっぱり、南極はないのか。



 プレステとかの続編もあるらしいが、動画みても、何か違う。ぶっちゃけグラフィックとか、そんなのはどうでもいい、今風のオペレーションに対応した初代アトラスが欲しいんだよ。

Rom Dumper エミュレータのお約束

2017/11/28

USB電源のセンサーバー(近距離用)をつくる


 wii のリモコンには、赤外線を受け取るセンサが内蔵されている。センサーバーは、そのセンサに向けて、ただ赤外線LEDを光らせているだけなので、簡単に自作できる。

 純正のセンサーバーは、1~3mくらい離れてつかうことを想定していて、近距離では上手く動かない。左右のLED間隔を狭くすることで、より近い距離でも操作出来るようになる。

 材料は、適当なUSBケーブルに、赤外線LED が2つと、抵抗ぐらい。直列につないで、ついでにスイッチをつけた。ハンダ面が凸凹しているので、薄いプラスチック板を、ホットボンドでくっ付けて平らにした後、両面テープでモニタに貼り付けた。

 PC でも、このリモコンが使えるらしいので、USB 端子(5V)仕様にしておけば、何かと便利なはず。
参考リンク
 LED抵抗値計算

2017/11/15

LMC555 タイマーIC 計算ソフト


 連射コントローラの改造用に使った LMC555(タイマーIC)の周波数を計算するソフトです。入力パラメータは、上から、Ra 抵抗、Rb 抵抗、Rb’ 可変抵抗、C コンデンサの4つ。発振タイミングが固定でいいのであれば、可変抵抗は必要ありません。

 上画像の例で言えば、22kΩから、1022kΩ まで変化した場合。それぞれ、32.1 ~ 0.7回/秒、発振するということです。% は、デューティ比です。
Download
lmc555_20171115.7z7-Zip (解凍ソフト)

 ※ Windows 32bit アプリ、自己責任で実行のこと
 ※ 動作報告、不具合報告は、この記事にコメント願います、メール対応はしません
 ※ 商用・悪用・改変・再配布禁止
コントローラの連射改造 連射機能を追加


追記 2018-06-23
 右クリックのメニューから、メモ用のキャプチャ画像を保存できるようにした。
Download
lmc555_20180623.7z7-Zip (解凍ソフト)

 ※ Windows 32bit アプリ、自己責任で実行のこと
 ※ 動作報告、不具合報告は、この記事にコメント願います、メール対応はしません
 ※ 商用・悪用・改変・再配布禁止

2017/11/06

wii クラシック・コントローラ 連射改造 #3


 Arduino で USB変換して、Windows上で連射速度のチェックをする。33.1連射/秒、計算ソフトの理論値は、32.1 なので大体あっている。

参考リンク
 USB Gamepad Using Wii Classic Controller and Arduino Leonardo USB変換
 Shwatch++ 連射測定ソフト

wii クラシック・コントローラ 連射改造 #2


 連射基板は、5回作り直した(笑)。

 スティックの横の隙間に設置。

 切り替えスイッチで、ボタン毎に連射オン・オフを切り替え出来るようにした。

2017/11/01

wii クラシック・コントローラ 連射改造 #1


 クラシック・コントローラ(本物)に、連射ボタンをつけた。一応、動いてるっぽいが、埋め込むには、小さく作り直す必要がある。

 wii 自体は、ろくなゲームがないが、レトロゲーム機のエミュレータとして有能。今更、ファミコンや、スーファミをゴチャゴチャつなげるのも鬱陶しいからね。
参考リンク
 タイマーICを使ってみよう 武蔵野電波のブレッドボーダーズ
 LMC555 CMOSタイマ ナショナルセミコンダクター データシート

2017/08/30

wiiコントローラ(ぱちもん)の USB 化


 ファミコンもどき、スーファミもどきの両ゲームパッドの調子が悪いので、wii 用のぱちもんコントローラを、USB 化した。ノートPCと短いケーブルで使いたかったので、Arduino は、中に埋め込んだ。

 そのものズバリのサンプルがあったので、作業は簡単。市販のコントローラと違って割り当てを自由にプログラムできるのが最大の利点。

 アナログスティックがついているので、スーファミのぱちもんの倍ぐらいの値段(700円くらい)なのも妥当か。プラスチックの支えがあるので、意外とまともに使える気がする。純正のコントローラは、もう買えないみたいだし、最近のゲーム機のコントローラは、無線化していて高いし、微妙なんだよね。



 元のプログラムは、スタンダードな配列と、XBOX的な配列とを、HOMEボタンで、切り替えられるようになっている。Pro Micro 自体には、13番ポートのLED は付いていないので、別途、追加した。点灯したら、特定のゲームに合わせた特殊な配列、無点灯なら、通常コントローラとして機能するよう設定した。

2017/08/17

2.4 GHz 無線モジュール その3「プレステ2のコントーローラ」


 格ゲー用のプレステ・コントローラは、接続に成功したので、次はプレステ2のコントーローラ。2つで700円のジャンクなので、全く認識しなかったらどうしよう、というか、壊れているのか、接続の仕方が間違っているのか、判断つかないから困るわけで、引きが悪いと両方ハズレな可能性もないわけでもないが。

 とりあえず、無線化以前に、Arduino に認識させないといけない。このコントローラを使った Arduino の作例は、ネットに色々とあり、ライブラリも用意されていた。接続は、下記4ピン+電源を繋ぐだけ。DATAピンだけは、プルアップする必要があった。振動機能は、不要なので省略。
GitHub
  madsci1016/Arduino-PS2X PS2 controller Arduino Library

 プレステのと違うのは、アナログのスティックが2つ付いている点だが、元々、アナログのコントローラのゲームとかやったこともないので、どう動くのが正しいのか不明。左スティックは、XYなのは分かるが、右は? 馬鹿正直に、取得したデータをそのまま送ればいいのか? ある程度調整した値を送るのか? この辺は要調査。

 ボタンはキチンと動いているようだし、仕組みとして作成可能なのは分かった。送信、受信と2セット分作業するわけだが、単純にワイヤレス仕様のコントローラをベースにすれば、受信側だけを作ればいい。

 というか、そもそも、新品の無線コントローラが、1000円台で買えるのに、わざわざ面倒なことする必要は無い。これは、あくまでも実験であって、作業してみないことには、本当の意味での勉強にはならないと思うのだよ。本やネットを見ただけで理解したと勘違いしがちなんだ。

※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2017/08/14

2.4 GHz 無線モジュール その2「互換性無しの別物だった」


 基板上に、四角いチップが見えない安い無線モジュールは、SE8R01 とかいうやつみたい。買った時は、nRF24L01 って書いてあったと思ったが、パチモンでも同じように動くのならば問題も無いが、別物では、素人には手も足も出ない。幸いサンプルをネットにあげてくれている人がいて、ゴミにならずに済んだ。
Semitek SE8R01
  SE8R01_DataSheet_v1 - 副本.pdf
Nerd Ralph
  SE8R01 2.4Ghz wireless modules
Arduino Forum
  Finally Working code for se8r01(similar nrf24l01) サンプルプログラム

 送信側、Pro Mini 3.3V を使用。受信側は、davinci 32U を使っているので、3.3Vに下げる必要がある。モジュールとは、SPI通信、適当なピンに割り振ればいい。

 送信側に、プレステのコントローラを接続。無線で入力データを受信側に送り仮想コントローラとして機能させる。簡単に言えば、オリジナルな、ワイヤレスコントローラが作れる。同じように、ワイヤレスな仮想キーボードや、仮想マウスなんかも出来そう。ミソは、これらの入力は、ハードウェアレベルってこと。

※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2017/08/11

2.4 GHz 無線モジュール その1「全く動かず」


 爪サイズの nRF24L01 無線モジュール。433Mhzのは、出力弱すぎて話にならなかったので、2.4 GHz 版。表面実装用じゃない普通のやつは、ESP-01と同じ 4x2列のピンで、扱いにくい。で、一列のやつを入手したのだが、1.27mm ピッチだった。標準は、2.54mm ピッチだから半分か。デジカメだとクッキリだが、実際は、ルーペで見ても良くわからない。

 老眼でよく見えないのは、ともかく。手もプルプルする(笑)ので、問答無用で、クリーム半田。適当に乗っけて、コテを当てるだけでくっつく。

 ゲタ履かせて、ようやく下準備完了。手間を考えると、普通のにするべきだった。最終的な組み込みするときには、コンパクトでいいかもしれないが。

 で、つないでみたが、全く動かず(笑)。Pro Mini 3.3v / 5v / DaVinci32U4 と色々と変えてやってみたが、ピクリともしない。諦めかけて、何気に検索してたら、どうやらnRF24L01 として一般的なものとは、種類がそもそも違うらしい。なんじゃそれ。

※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2017/08/06

digispark clone 赤外線レシーバ

 Atmel の、Attiny85 にUSB接続出来るようにした指先サイズのマイコンボード。Bootloader は、micronucleus が書き込んであった。一応、Arduino IDE からも使える。受光素子を追加して、赤外線入力を、そのままキーボード入力に変換させてみたが、ウチの環境では、少々、不安定。コンパクトかつ、実質USBキーボード扱いであるから Linux 等でも動かせるのは良い。

 ロジクールの無線マウスの USBドングルと、相性悪いようなので、ハブ経由で接続した。元々、書き込み毎に、再接続する必要があるので、digispark の MicroUSB コネクタは、接続ケーブルを繋ぎっぱなしにして、抜き差しは、ハブ側の通常USBコネクタで行う事。Micro USB で、抜き差しを繰り返すと、半田剥がれする可能性大です。
参考リンク
  DIY USB IR Receiver instructables 赤外線リモコン用レシーバ
  Connecting and Programming Your Digispark Digistump Wiki 導入手順


2017/05/01

mSATA SSD → SATA 変換基板


 液晶一体型の動画PC用に、HDD の代わりに、mSATA の SSD を使った。システムを入れるだけなので、HDD は必要ない。

 この変換基板は、ノートPCなんかの、mSATA コネクタのない機種にも便利なはず。2.5インチのHDD、SSDよりも、薄く、小さいので、熱が篭るようなコンパクト筐体での、スペース確保にも有効。

2017/03/01

NAS改 USB外付けHDD(+赤外線レシーバ)


 キューブ型のNASを流用した巨大レシーバ、というか、USB接続の外付けハードディスクのオマケにレシーバが付いてる物体。レシーバに追加したリレーによって、4個のディスクを赤外線リモコンで個別にオン・オフできる。USBハブ経由の接続なので、厳密な意味では正しく動作しない。書き込み中に電源を切ったりしないよう注意する必要がある。

 HDDには、突入電流云々言って電源入れっぱなしが一番良いってのは、よく言われる。間違いとは言わないが、そんなのは、サーバルームのような条件が整って、且つ値段の桁の違う機器類での話。民生用のヘナチョコ機器をいっしょに語るのはマヌケもいいとこ。頻繁に切り替えるのでなければ、使わないときは電源を切っておくのが一番ってのが、僕の結論。

 最初は、ACアダプタ駆動にしようと準備していたが、良く考えてみたら、HDD以外にも、ケースFANを回す分が必要だったので、諦めて普通の電源使うことにした。配線は、変換ケーブルを利用した。一応、マニュアルでも電源操作が出来るよう、オルタネイトのスイッチに変更した。



 基板作り直した。表示部分の7セグメントディスプレイと、赤外線受光部を別基板に、LEDは、電線で引き出した。




 表示パネル裏側、インジケータ用LEDをユニバーサル基板の切れ端にハンダ付け。

 7セグメントディスプレイと、赤外線受光モジュール。HDD1~4のインジケータ用に穴あけた。



HDD用12Vの配線、やり直した。

ファンは、8センチのPWMタイプ。ファンコンは、両面テープでつけた。






 Arduino レシーバに書き込むのは、主電源に接続した 5ch 目のリレーを、HDDに繋ぐ1~4ch と自動連動するようにしたもの。USB接続のHDDは、認識に少々時間がかかるので、わかりやすくするため、rmx3 側でも、ドライブインジケータを表示するようにした。Kodi が起動していれば、そちらにもメッセージを送る。

 スモークフィルムを貼って完成。