2019/12/03

SHARP X1 turbo キーボード



 オークションじゃ高すぎて買えない大昔のキーボード。押入れの奥から発掘。ケーブルはボロボロだが、スイッチはまだ使えそう。これで、2台目分の緑軸が確保できたので、普段使い出来る。M0116Jの緑軸版にするか。

 僕が、ALPSに拘ってるのは、結局の所、このガキの頃使った初パソコン(当時は、マイコン)の思い入れのせいなんだよな。

2019/11/03

エックスモバイル 限界突破Wi-Fi

 引越しに合わせて、へっぽこADSLから、モバイル通信サービスに切り替えた。メジャーな WiMAX は、色々あって、料金システムも複雑。高速回線である必要もないし、2年契約、月3850円で制限無しの限界突破Wi-Fiを契約した。

 10/25に、ネットで申込み、11/2 に届いた。いきなり電源入らず初期不良かと思ったらバッテリ残ゼロなだけだった。電源切らずに発送しているのか。

 好調だと、20Mbpsぐらいの速度。まぁ、コロコロ状況は変わるので、数字に大した意味は無い。ウェブブラウジングしてても、低速なADSLよりも、さらに遅い場面も多々ある。


 デスクトップ用に、WiFiドングルも購入。ケースは、まだ買っていない。電源入れっぱなしで、操作は不要だから、箱の方がいいかもしれない。

 月\500の端末補償は付けなかった。500x24=12000払うのは微妙すぎる。ルーター(まんまスマホ)が、2年間壊れないよう祈るしかない。

2019/08/23

PDF作成ソフト

 大昔に作ったテキストを画像化して、PDFにまとめるソフトを未だに使っているが、何気に各ページ下部に、現在ページ位置を表すバー(ただの線)を追加してみた。

 右上にページ数表示があるのだから、不要なのかと思いきや、ひと目で認識できる分かりやすさってのは重要らしい。

 ちなみに、超使えないドコモのガラパゴスもどきを、未だに愛用中。家の中で使うぶんには、電池のもちの悪さも気にならないし。逆にソニーリーダーは、明るい外限定。薄暗いと見えにくくてストレスになる。

2019/08/08

ADB to USB adapter に追加機能

 普段、使っているTMK Keyboardは、トラブルも無く、単純な変換機としては完璧。ただ、せっかくUSBに繋がっているのだから、ADB変換以外の機能拡張したい。が、何分、素人なもので、Cベースだと良く分からず実現できていなかった。

 で、今更だが、Arduino IDE で動く、ADB-USB変換のソースを見つけた。
参考リンク
 ADB to USB adapter Trammell Hudson's Projects

 とりあえず、実験として、2つの機能を追加してみた。うまくいったら、キーボードに内蔵したい。
IME入力インジケータ


 IME、つまり、かな漢の日本語入力モードなのか否かをLEDで表示させたい。Windows10では、OS側の機能として、毎回、画面に表示してくれるが、これはこれで若干邪魔くさい。やはり、キーボードのインジケータとして、光らせればもっと分かり易いのではないか。
ボリュームコントローラ


 キーボード操作でも、音量の調整は可能だが、相対値としての上げ下げで、実は使いにくい。操作する可変抵抗のツマミ角度と、指定される音量がマッチしていれば分かりやすいはず。つまり、絞ればミュート、目一杯回せば最大音量、アナログ的な操作感も悪くない。
 IMEのチェックや、ボリューム絶対値の設定は、素の Arduino では出来ないから、Windows側で補助プログラムを動かす必要がある。ファンクションキーとして割り当てられていないキーをプログラム・ランチャ用途にも使ったり、その辺はWindows側のソフト次第。


追記 2019-08-23
プログラム・ランチャ


 A~Zキーに、起動アプリを割り当てる。



追記 2019-08-31
 中々、いいんじゃない、と自画自賛してたら、やたら不安定で認識不能を繰り返すようになった、なんでだ。調査は、暇な時にするとして、TMK Keyboard に戻した。

Delphi Community Edition

 10.2を入れた分が期限切れ間近なので、10.3 をインストール。コードフォーマッタが標準でついてた。少なくとも、10.1 には無くて不便だった。無料版なのに、制限が少ないのは素晴らしい。Arduino の絡みで、Android もやってみたいが、手が回らないな。

 作業性を考えると、これぐらいのデスクトップ領域は必要。旧Delphi や、Lazarus と違って、フォームとコードを同時に表示出せなくなって著しく使い勝手が悪い。

 JVCL のインストールが上手くいかなくて、3回くらい繰り返した。原因不明。

2019/07/31

rmx 電波式リモコン #7

 送信側(リモコン)は一応完成なので、今度は受信側。前に作った時計、リレー付きの赤外線レシーバを無線に置き換えたものを作成中。


 赤外線なら、1ピンで処理出来るが、無線モジュールでは、6ピンも必要。使用ピン節約として、そもそもHDD は、3個あれば十分なので、リレーは、半分の4ピンだけ使うことに。ざっくり、部品をハンダ付けして、仮組みしてみたが、リレー4ch、USBハブも4ch、前のより、けっこうすっきり。リレーをケーブル接続にするのは良い判断。

 送信側と違って、USB電源駆動で、省電力とか考えなくても大丈夫だが、PC側のサスペンド・レジュームの兼ね合いが怪しいかも。常用できそうなら、ネジ止めできるような大き目のユニバーサル基板にレイアウトし直そうと思う。



 Windows側制御ソフトの rmx も、俺様専用の別物となる。

2019/07/22

NodeMCU-32S 書き込みエラー対策に、コンデンサを追加


 esp8266 の上位版っぽい esp32のテスト。bluetooth デバイスの実験をしたいので購入。いくつかモデルがあるが、僕がAliExpressで買ったのは、38ピンのNodeMCU っぽいやつ。

 ESP32-WROOM-32 が使われていて、スペック的には、結構高性能な感じ。

 Arduino IDE 1.8.9 にボードマネージャで、ESP32 を追加するだけで動いた。

https://dl.espressif.com/dl/package_esp32_index.json
 ただし、スケッチ書き込みごとに、基板上のIO0ボタンを押す必要があった。


 毎回書き込みの度に、ボタンを押すのは、大変なので、EN-GND 間に、0.1μFのコンデンサを追加するというのを真似てみたが、変化無し。で、何気に、1μFのコンデンサにしてみたら、ボタンを押さなくても、書き込めるようになった。0.1μF で駄目だった場合は、容量を増やすと解決するのかもしれない。

 ハンダ付けが面倒ならば、ブレッドボード上で、コンデンサを追加しても、同じ効果はあるはず。



 OLED(I2C) は、adafruit ライブラリで動いた。

 BLE(Bluetooth Low Energy) は、Bluetooth 4.0 以降で対応。タブレットPCに、USBデバイスは、邪魔なだけなので、bluetooth 経由で何かしたい。

2019/07/09

7-Zipで複数フォルダを個別に圧縮


 7-Zip (7z.exe) にフォルダ名を渡すだけのコンソールプログラムです。7-Zip のインストールフォルダに2つの exe ファイルを展開します。ショートカットなり、SendTo に登録するなりして、対象フォルダをドラッグ&ドロップすれば、フォルダ名の圧縮ファイルが出来上がります。f7z.exe が、.7z で圧縮。fzip.exe が、.zip で圧縮。

 バックアップ等で、大量のフォルダを処理するのに便利かと。
Download
f7z_20190709.7z7-Zip (解凍ソフト)

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

2019/05/07

Gameboy Macro (DS Lite 改) #6

 SuperCard の同時押し改造のメモ。GB、GBA では使用できない X・Y両ボタンを メニュー呼び出しに割り当てる。ラッピングワイヤより細い0.2mm ぐらいのエナメル電線(ポリウレタン銅線)がベスト。

L+R+SEL+BXリアルタイム・セーブ/ロード
L+R+SEL+AYセーブデータ更新



 ダイオードをユニバーサル基板(3x8穴)に並べる。X・Yボタン側がカソード。表側から引き出した線を接続。

 SLOT1は外してしまうので、スペース的には余裕。

2019/04/29

起動時にアプリの優先度(HIGH)を設定

 毎度、タスクマネージャから変更しなくても、ショートカットに細工すればいいらしい。リモコン受信ソフトでの入力取りこぼしを減らすため設定してみた。いや、KODIこそ上げないといけないのか?
C:\Windows\System32\cmd.exe /c start "" /high "アプリ・パス"




2019/04/12

rmx 電波式リモコン #6



 完成品としては、3つ目。薄型バッテリを見つけてきたので、充電モジュールと共に上側へ移動、DIP版の ATmega をそのまま使えるようになった。

 リモコンのプラスチックの質が悪いと思ったら、ガワも、基板も、前に改造したものとは違うものだった。壊しまくったので、残りの素材リモコンは、同タイプが3個、前のタイプが1個だけとなった。改造にはこちらの方が都合が良さそうだが、選んで買うのは難しいか。

 ICSP端子を標準的な配列にして、USBTinyISP が直接刺さるようにした。若干、電池蓋と干渉してる。元リモコン基板の LEDを削除。充電は、ACアダプタを使うようにした。USBと違い、上下も無いので接続が楽。

 この元となっているリモコン自体のボタンが、薄型のタクトスイッチなので、ある程度力を込めてボタンを押さないといけない。昔ながらのゴム接点のリモコンの柔らかい(ふにゅふにゅ)操作感と違うのは仕方ない。

2019/03/09

USBtinyISP 小型 マイクロUSB版




 前から使っている USBTinyISP の小型版。ごつい USB Bコネクタのケーブルが邪魔なんで、USBasp とか使ったりもしてるけど、これならマイクロUSBケーブルでコンパクト。

 6ピン・メスのヘッダーを付けて、マイコンの ICSP端子に直結。ジャンパーピンとかないから、5V専用だね。3.3V のマイコンに使う時は要注意。

2019/03/08

ATMega8 fuse (デフォルト値)

LOW FUSE (0xE1)
76543210
BODLEVELBODENSHUT1SHUT0CKSEL3CKSEL2CKSEL1CKSEL0
BOD電圧BOD許可起動時間クロック
内部RC発振 1MHz:0001, 2MHz:0010, 4MHz:0011, 8MHz:0100
外部:1xxx
11100001

HIGH FUSE (0xD9)
76543210
RSTDISBLWDTONSPIENCKOPTEESAVEBOOTSZ1BOOTSZ0BOOTRST
RESET無効ウォッチドッグ タイマ常時SPIプログラミングクロック発振器EEPROM保護ブート ローダ容量リセット ベクタ
11011001

avrdude
FUSE確認avrdude -p m8 -c usbtiny -v
avrdude -p m8 -c usbasp -v
プログラム消去avrdude -p m8 -c usbtiny -e
avrdude -p m8 -c usbasp -e
プログラム書き込みavrdude -p m8 -c usbtiny -D -U flash:w:XXX.hex:i
avrdude -p m8 -c usbasp -D -U flash:w:XXX.hex:i
LOW FUSEavrdude -p m8 -c usbtiny -D -u -U lfuse:w:0xZZ:m
avrdude -p m8 -c usbasp -D -u -U lfuse:w:0xZZ:m
HIGH FUSEavrdude -p m8 -c usbtiny -D -u -U hfuse:w:0xZZ:m
avrdude -p m8 -c usbasp -D -u -U hfuse:w:0xZZ:m
LOCK BITavrdude -p m8 -c usbtiny -D -u -U lock:w:0xZZ:m
avrdude -p m8 -c usbasp -D -u -U lock:w:0xZZ:m

参考リンク
 ATmega8Aデータシート
 AVR Fuse Calculator for ATmega8 ヒューズの計算

2019/02/27

スーファミ・スロット入手、新・吸い出し機



 今更だが、2.5mmピッチ、62ピン、スーファミ互換のスロットを手に入れた。使わない右側のピンを抜いてギリギリ。実際に使う時には、なんらかの補強が必要かも。

 安物の互換スロットでは、明らかに耐久性が悪そうなので、しっかりしたものを作りたければ、スーファミ実機のスロットを外して利用するのが一番かと。安く売っているジャンクから取ればいいわけだし。なんなら筐体ごと使えば、カセットの差込に関しては、完璧なものが作れる。


追記 2019-03-07


 Arduino版の3号機。スーパーゲームボーイ型のアダプタを追加工して、スーファミ&ゲームボーイの切り替えスイッチを不要にした。アダプタを差し込むと自動的にゲームボーイモードとなる。LED も SMD のにして、スッキリ。スロットは、ぐらつくもののピッチがあってるからか、ずれる気配は無い。乱暴に扱ったりしなければ、補強なしでも大丈夫そう。

 ソフト側も、最初にロムの形式をチェックする info ボタンを独立させて、スーファミか、ゲームボーイか自動でふりわけるようにした。

BEETLE ATMEGA32U4-AU 書き込みコネクタ作成


 ポゴピンとかいう、ピンじたいにバネが仕込んであるものを端子にした書き込み用コネクタを作成した。BEETLE は、片側6ピンがICSP用の信号ピンになっているので、このスルーホールに押し当てながら、ライタでブートローダや、プログラムを書き込む。


 ATMEGA32U4 のボードは、USB端子がついているので、基本的には、別途ライタなどなくても困らない。

 が、何らかの拍子にブートローダが壊れてしまうと、何もできなくなってしまう。そんなわけで、USBTinyISP とか、USBasp とかのライタは結局必要になる。

2019/02/09

rmx 電波式リモコン #5

 前回に続き、Pro Mini版を作ろうとして失敗。結局 ATMEGA8 のDIP版で再作成。USB Micro のケーブル直刺しで充電できるようになった。

 ファーム書き換え用の ICSP端子は、電池蓋の中に。ICSP端子経由でも充電可能。赤いLEDは、充電中ランプ、完了したら緑色に変わる。

 バッテリとATMEGA8の高さで、ぴったりギリギリ。隙間があると、ボタンを押した時に、凹んでしまうので、ぴったりギリギリで正解。