Blog2Viewer

以前、Movable Typeで運用していたブログの内容を表示させるために作成したページです。
aitendoのサーマルプリンタ・ユニットを衝動買い
aitendoのサーマルプリンタ・ユニットを買ってしまった。このサーマルプリンタは、aitendoのサイトでちょくちょく見る気がするのだが、すぐに在庫切れになる。見かけた時、在庫僅少だったので注文したら買えてしまった。価格は送料含めると4千円ジャスト。

使う当ては無い。展示会等で、なにか面白いプリントアウトができれば良いかもしれない、とか考えている。 

届いたブツを調べると、コネクタ付きケーブルや感熱ロール紙も付属して便利だ。接続はTTLレベルのシリアル通信、9600baud,電源は 5~9V, 電流は0.8~1.5Aで瞬間で2A流れることもあるらしい。中国語FONT内蔵。

とりあえず、USBシリアル変換モジュールでも繋いでPCから印刷、てなところか。いつやるか? 正月の課題かな。
スプラトゥーン2の日々
あいかわらずスプラトゥーン2で遊んでいる。

うでまえは、あまり上がらないので最近はギア揃えを目標に遊んでいる。揃ったギアで新たな戦い方を探すのも面白い。ギア集めるには、お金も必要なのでバイト、サーモンランも真面目にやっている。これも、なかなか難しくて面白い。最近追加されたガチ・アサリは、まだ勝ち方がよくわからに。いろいろ試していこう。

スイッチの録画機能で撮ったガチホコの画像を貼る。ギリギリのところで、うまくローラーを回避してタッチダウンできた。遡って録画できる機能は便利だ。

favicon.icoを作ってくれる favico
岡山大学の乃村研究室が公開しているツール集 (GitHub - nomlab/tools: Useful home-brewed small tools) の中にある favico というプログラムが便利。これは favicon.icoをコマンド1発で作ってくれるツール。 Webサーバのログを見て favicon.icoがありません、というエラーに遭遇しても、このコマンドがあれば一発で作れる。 文字だけに限定されるデザインだが、自分で作るfaviconも、いつも、そんな感じなので、十分だ。もっと凝りたければ、普通のツールで作れば良いのだ。

例えば、

[shell]
$ favico -c white -b green -f Takaoゴシック -o favicon.ico '電'
[/shell]

とコマンドを入力すると、というような画像ファイルを作ってくれる。

使い方は、引数無しで起動すると表示される。サイズ、色、フォントなどが指定できる。

[shell]
$ favico
Usage: favico [-s size] [-c color] [-b bgcolor] [-f font] -o FILENAME STRING
Example: favico -s 64 -c white -b blue -o N.png 'N'
favico -s 64 -f '/Library/Fonts/ヒラギノ丸ゴ ProN W4.ttc' -o nom.png '乃'
[/shell]

使えるフォント名が謎だったが、 favicoは Imagemagickのconvertコマンドを起動するshellスクリプトなので、以下のコマンドで自分の環境で使えるフォントの一覧を表示できる。

[shell]
$ convert -list font | grep Font:
[/shell]

こんな便利なツールを公開して頂いてありがとうございます。>乃村さん
ESP8266と通信出来ない。
ESP8266のプログラム開発中にトラブルに遭遇。 それまで、普通に行えていたOTAでのプログラム書込ができなくなったのだ。pingにも反応しない。「宛先ホストに到達できません」と出る。arp -a の出力にターゲットのIPアドレスが無い。WireSharkで調べるとESP8266がarpに返事していない。

"esp8266 arp"でgoogle 検索。ESP8266には,ARP関連の問題があるらしい。 「しばらくするとARPに反応しなくなる」とか「複数のESP8266があるとWiFiルータのバグでARPに反応しなくなる」などという現象が報告されている。

私も複数のESP8266を同時に動作させている。WiFiルータがARPパケットを中継しなくなるのか? WiFi側の通信状況をモニタする方法がわからないので調べられない。ルータを再起動すると症状が消えたりする。

この問題を自力で解決するのは大変そうなので、対症療法に走る。手作業でARPテーブルにESP8266のMacアドレスを登録する。

ESP8266のMacアドレスがわからないと面倒なので、まず、シリアルポートとかに表示させる。IPアドレスは表示させているので、追加する感じ。プログラムとしては、次のようになる。

[cpp]
uint8_t mac[6];
WiFi.macAddress(mac);
Serial.print("mac:");
for(int i=0;i<6;i++)
Serial.printf("%c%02x",i>0?'-':' ',mac[i]);
Serial.println();
[/cpp]

次にWindowsでARPテーブルに登録する。 arpコマンドがあるのだから、arp -s で設定できるはずだが、何故か出来ない。コマンド・プロンプトを管理者で起動してもダメ。

設定方法を検索して、「sakashita-net.jp: arp -sでARPエントリを追加しようとすると「ARP エントリを追加できませんでした: アクセスが拒否されました。」というエラーになる」というページを発見。バッチリ書いてある。

コマンド・プロンプトを管理者権限で起動し、次のコマンドでアドレスをARPテーブルに追加できる。
[shell]
$ netsh interface ipv4 set neighbors "イーサネット" "192.168.0.110" "5c-cf-7f-89-88-d3"
[/shell]

"イーサネット"は、インターフェース名で,次のコマンドで表示できる。

[shell]
$ netsh interface ipv4 show interface
[/shell]

とりあえず、これで開発を進められる。でも、この問題はちゃんと解決して欲しい。


Pro コントローラ追加購入
日々、スプラトゥーン2をやっていてProコントローラ左スティックの効きが悪くなってきた。移動時引っかかる感じ。まぁ寿命かな、ということで、WiiUのゲームパッドみたいに修理用部品が売っていないが探すがない。仕方が無いので,ちょっと高いがProコントローラを購入。今度はスプラトゥーン2エディションにしてみた。

物は近くの電気屋で普通に買えた。これも数ヶ月で壊れるだろう。それまでに修理部品が発売されると良いなぁ。