ともかつの日記

仕事や日常で扱った事柄について書き残していきます。「…日記」とタイトルにあるものの、日々更新ししていませんがご容赦ください。

MENU

パスワード送出器を作る (3)

まだ、入力装置用のデバイスとして用意しようとしているキーボードが納品(配達)されないので、U8G2 ライブラリを使って簡単な起動画面を表示するようにしてみました。

変更したのは、次の通り。

  • プログラムそのものに変更はないものの、Arduino IDE で「Arduino Leonardo」ではなく、「SparkFun Pro Micro」を指定するようにした。
    参考:https://ht-deko.com/arduino/promicro.html 
  • プログラムの名称を「CodeOut」とした。※仮称
  • 以下の URL を参考にして、適当なフォントを選んで初期処理画面や起動画面を表示させてみた。今の時点では、初期処理なんてほとんどないので画面を表示しても、すぐに消えちゃうけど。
    参考:http://www.microfan.jp/esp8266/workshop/oled-u8g2
  • ブレッドボードではなく、ユニバーサル基板に実装・はんだ付けしてみました。

この状態で実行した様子は、↓ のような感じです。

  • ユニバーサル基板上に実装されているトグルスイッチは、リセットボタン代わりに使ったもので、本来ならばタクトスイッチを使えばいいのですが手元になかったので...
  • 接続して、実際に作成したプログラムそのものが実行される(動作する)までに結構な時間があるように感じます。スイッチによるリセット操作から約10秒?


Pro micro に OLED で表示

 

まだまだ続きます。

パスワード送出器を作る (2)

まずは、仕様の確認から...

  • USB で Arduino 互換機である Pro Micro を接続し、USB HID デバイスとして認識させて、記憶してあるパスワードを送出し、あたかも入力させたようにする。
  • 用途的に PC に接続して使用することになるため、給電のための電池やアダプタは不要。PC と USB で接続することで、PC から給電する。
  • Arduino に記憶してあるパスワードは、プログラムのコードで固定にするのではなく、EEPROM に保存して変更できるようにする。
  • 数字キーボードを押すことで、そのキーに対応したパスワードを送出する。
  • セキュリティ対策の観点から、起動時にはパスコードを入力しなければ、パスワード送出モードには移行しないようにする。
  • 使用する LCD は OLED なものなので、焼き付きを防止するための配慮が必要。

といった感じ。細かな部分は、これから詰めていきます。

でもって、作成した第一弾のプログラム。

とりあえず、EEPROM に初期設定した文字列群をプログラム内の配列に読み込むことができた。(^-^)v

 

現時点で気になったことは...

  • はじめての Leonardo 系の Arduino でのプログラミングでしたが、シリアルモニタを用いたデバッグを行おうとすると、うまく動作しなかった。
    → プログラム 122行目のように、Serial.begin( ) を実行した後、完了を待つようにしてやることで動作するようになった。
  • 製作のきっかけとなった「クレイジースモール パスワードロム240」も、記憶してあるパスワードの変更は限られたキーで行うので大変そうだった。今回作成するものも、自作するものなので、初期値としてはプログラムで書き込めばいいのだろうけど、何かしら単体で編集できる機能を備えるべきなのかも...
  • EEPROM に保存したパスワード文字列は、現時点で何の暗号化も施していない。何かしらの保護が必要か?
    → 商用販売するものでもなく、私的使用のためのデバイスなので保留
  • EEPROM から読み込む際のエラー処理が未実装。
    → どこまで想定するか、になるんだろうけど可能な範囲で実装する。

といった感じ。とりあえず、Amazon に注文したら中国からの別送になったキーボード(入力デバイス)が届かないことには、マイコン側に入力装置がないので動作させにくい... (-_-;

 

まだまだ続きます。

パスワード送出器を作る (1)

以前に見つけた以下の製品(https://cooyou.org/pwrom240/)は、Amazon でも取り扱われているようだけど、製品仕様を見ていると、面白そうだけど購入するには至らない感じ。

クレイジースモール パスワードロム240

クレイジースモール パスワードロム240

 

で、いっそのこと自分で作ってしまえ、といろいろ購入してみた。 これらの部品を組み合わせて、自分好みのものを作ってみようと思います。

HiLetgo Leonardo Pro Micro ATmega32U4 5V/16MHz ブートローダ マイクロ USB Pro mini Arduinoに対応 [並行輸入品] HiLetgo 0.91 ELEGOO 50 PCS オスメスジャンパーワイヤ200mm (無料 170 タイポイント ブレッドボード) SODIAL(R)黒い3X4マトリックスキーボード 数字キーボード 69 x 51 x 10mm PIC AVR

 

 

とりあえず、久しぶりな Arduino でのプログラミングなこともあって、IDE のアップデートから始まり、はじめての Arduino Leonardo 互換機である Pro Micro の動作確認を行って、LCD にテスト表示するところまでを行ってみました。


Pro micro でLチカ

f:id:VEJ00675:20191004000039j:plain


まだまだ続きます...

 

テレビをリサイクルしてみた。

父親がテレビを買い替えたらしく、まだ使えるけれど余ったテレビが回ってきた。 …で、壊れたわけではないけれどわが家で使っていたテレビが一台不要になったので、正規の手順で廃棄しました。

わたしの住んでいる富山市の場合、以下の URL に説明されている手順で廃棄することになります。記録もかねて、行った手順をまとめておきます。今回は、自身で持ち込んだので「収集運搬料金」を支払っていません。場合によっては、買い替えにともなう廃棄であっても、自分で処理した方が「収集運搬料金」が支払わない分だけ安価になるのかもしれません。 ※ただし、手間を考えなければ。

http://www.city.toyama.toyama.jp/kankyobu/kankyosenta/kadenrisaikuru.html

1.廃棄するテレビを確認する
  • 廃棄しようとするテレビについて、「メーカー名」「画面サイズ」を確認します。 →今回廃棄しようとしているのは、東芝のカラーテレビ(ブラウン管)で「21ZS15」 21型というものです。
  • 以下の URL にアクセスして、廃棄しようとしているテレビのメーカーに対応した「製造業者等名コード(3桁)」「品目・料金区分コード」「リサイクル料金」を確認します。
    https://www.rkc.aeha.or.jp/consumer/recycle_price.html
  • 上記の URL で確認すると、下図のように「製造業者等名コード(3桁)」は 114、「品目・料金区分コード」は 16型以上なので 22、「リサイクル料金」は 2,376円であることがわかります。
    f:id:VEJ00675:20190928164718j:plain

2.郵便局でリサイクル料金を振り込む
  • 郵便局の窓口に写真のような払込票付きの伝票が用意されているので、前項で確認した「製造業者等名コード(3桁)」「品目・料金区分コード」「リサイクル料金」を記入します。
    f:id:VEJ00675:20190928165811j:plain

  • テレビを廃棄しようと思ったのが休日だったため、「富山南郵便局」に行って手続きしました。この他にも、休日でも行っている窓口は他にあるので、都合の良いところで手続きすればいいと思います。
    https://map.japanpost.jp/p/search/dtl/300132213000/
  • リサイクル料金の払込みに、窓口であれば 200円、ATM だと 150円の手数料が加算されます。ATM を利用した場合には、上記写真の伝票の「①指定引取場所控」に ATM から出てくる「ご利用明細票」のコピーを貼り付けなければなりません。
    窓口での払込みであれば、貼り付けるための「[C]振替払込受付証明書」が用意されているので、別途コピーする必要がありません。
    ※「ご利用明細票」の原本をそのまま貼り付けてもいいのかは確認していません。
3.指定引取場所へ持ち込む
  • 富山市の場合、以下の URL の 2か所が指定引取場所に指定されています。土曜日も受け付けてくれています。
    http://www.city.toyama.toyama.jp/kankyobu/kankyosenta/kankyosentakanrika/kadenrisaikuru.html
  • 今回は、「日本通運㈱富山ロジスティックスセンター」に持ち込みました。上記の URL では受付時間が 17時までと案内されていましたが、現地では 16時 30分と掲示されていました。
  • テレビ本体と前項の伝票を受付の担当者に渡すと、いくつかの控えが戻ってきました。 →廃棄手続き完了

メールの一覧を出力する (続き)

先の投稿の続きです...

 

tomokatsu.hatenablog.com

 いろいろな課題があったものの、結局は

  1. ADODB.Stream で UTF-8CSV ファイルを、扱いやすい Shift-JIS に変換して、作業ファイルとして保存。
  2. ADODB.Connection で CSV ファイルを読み込み、整形して CSV として出力。

という感じ。宛先の部分に、複数のメールアドレスが入っていた場合とか、件名などに ” や , といった面倒な文字が入っていると、うまく動作しないことがありそうですが、きれいなデータであればうまく処理できそうなスクリプトになった。

ADODB.Connection を使ったことで、CSV ファイルの行・列を解釈してくれるようになったものの、その代わりに ADODB.Connection が利用できる環境でなければならなくなった。Microsoft Access がインストールされていなくても、無償提供されているランタイムライブラリをインストールすればいいので、そんなに大きなハードルではないのだろうけど、ちょっと面倒。

半分くらい業務目的で作成したスクリプトなので、スクリプトそのものは公開しません。同様のスクリプトを作成したい場合には、上記のキーワードで検索してください。

やはり... こういった場合には、VBScript がうまく使えると、Windows 環境であればすんなり役に立ちそう。(^-^;

 

最速攻略 VBScriptサンプル大全集

最速攻略 VBScriptサンプル大全集

 

 

メールの一覧を出力する

どうしてそんなことがしたいのか、詳細については触れないけれど、届いたメールの一覧を Excel(もしくは CSV)で出力できないものか、と試行錯誤してみた。

しかしながら、少し調べてみると、いろいろな課題が見つかってきた。

  • 課題1 : Thunderbird が保存しているメールの生データは、文字コードが JIS コードとなっている。
  • 課題2 : メールヘッダ内の件名(Subject:)や差出人(From:)などに全角文字が含まれている場合には、『=?ISO-2022-JP?B?…』という感じで Base64 で符号化されている。
  • 課題3 : 生データでは、件名や差出人の途中で改行している場合がある。

 これらの課題を解決しないといけないのか... ここからが、スタート。

 

[改訂版] VBScriptポケットリファレンス (POCKET REFERENCE)

[改訂版] VBScriptポケットリファレンス (POCKET REFERENCE)

 

 

続きを読む

CATV から貸与されている Wi-Fi ルーターを更新する?

現在、わが家は CATV の光回線を利用してインターネットに接続している。レンタル料金が 100円/月だったこともあって、Wi-Fi ルーターは CATV からレンタルしている。レンタルしているのは、以下の URL のもので、2014年 8月に発売されたものなので、古い感じはするものの、USB ポートを備えていて、HDD を接続すると NAS としても利用できるようになる優れものです。

しかしながら、2017年 4月以降はファームウェアのアップデートも行われておらず、対応しているのも IEEE802.11a/b/g/n までで、11ac には対応していません。USB をサポートしていることで実現している NAS についても、数日おきにリセットしてやらなければ接続できなくなり、不満のない状態とは言い難い感じです。 

なじみにしている工事業者に確認したところ、最近は販売終了している上記の WZR-S600DHP は使っておらず、新規に設置するところには以下の製品を使っているとのこと。

この Wi-Fi ルーターに交換すると、次のような感じ。

  • 〇 より高速な規格である 11ac に対応する。
  • 〇 ビームフォーミング機能を搭載していることで、転送速度・安定性が向上する。
  • × USB ポートを備えておらず、USB-HDD を利用した NAS 機能は使えない。

単純に交換してもらうとよいことばかりでもないため、手を出しにくい... (-_-; また、CATV に交換を申し出ても、うまく説明しないとこちらの自己都合による交換となり、工賃や手数料が発生してしまうかもしれない。

いろいろと考えてみたら、次のようなことが考えられるだろう。

  1. このまま WZR-S600DHP を使い続ける。
    → 0円
  2. WSR-1166DHP3-BK を自前で用意して交換する。
    確認すると、WSR-1166DHP3-BK のネット最安値は 5,000円以下になっているので、自前で用意して交換してしまうのもいいかも? Wi-Fi ルーターを交換して、無線 LAN 環境を増強し、家庭内の NAS はあきらめる。
    → 5,000円
  3. WSR-1166DHP3-BK を自前で用意して 2台構成にする。
    前項と似ているものの、WZR-S600DHP を NAS のために残す。
    → 5,000円
  4. WSR-1166DHP3-BK を自前で用意して、NAS も別途用意する。
    わが家は、一戸建てではあるものの、中継器を用意しなければならないほどの大きさではないはず。中継することによるボトルネックを解消するためにも、専用の NAS を別途用意する。
    → ?円
  5. NAS 機能も備えた Wi-Fi ルーターを用意する
    WZR-S600DHP の直接的な後継機種はないものの、NAS 機能を備えたものは BUFFALO から今でも販売されている。お手ごろな価格なのは、WXR-1750DHP2 だろう。機能的には専用の NAS に劣るのかもしれないが、コスト的には抑えられる。
    → 10,000円

どれも一長一短な感じがする。よく考えて結論を出そう...

 

バッファロー WXR-1750DHP2 無線LAN親機 11ac/n/a/g/b

バッファロー WXR-1750DHP2 無線LAN親機 11ac/n/a/g/b