トップページ
製品ホームページ https://cooyou.org/dispbw

クレイジースモール超小窓ディスプレイBW取扱説明書 2020/8/28

※例を出しながら設定方法を説明いたしますので、記載されている順番でなるべく実際にやってみてください。一度やってみると、それほど難しくはないです。

必要機器

クレイジースモール超小窓ディスプレイBW本体(解像度 横128x縦64 モノクロ(黒と青緑)) 以下「本体」と記述。
USBデータケーブル(MicroUSB)
Windows10の動作するPC (USB必須)

必要となるスキル

多くのことを行わなければ、PCに特別詳しい必要はありませんが、以下のキーワードを知っている程度は必要です。
エクスプローラー、.zip、.png、.bmp、.exe、ローカル、コマンドプロンプト、メモ帳、GUI、CUI、COMポート、スクリプト、ドライバ、マルチモニタ、RGB

電源ON

USBケーブル(データ通信ができるもの。充電専用は不可。本体側はMicroUSB端子)を本体とPCに差します。PCから給電が行われると、起動します。
約10秒後に真ん中に・が一瞬表示されて消えます。この状態が起動が完了した状態です。

電源OFF

USBケーブルを抜くと給電が無くなり、本体の電源がOFFになります。特にシャットダウン手順は必要ありませんが、アプリ終了後のほうがアプリ実行が中途半端にならず、良いでしょう。
接続した状態で画面をOFFする方法は後述します。

専用ソフトウェア

専用ソフトウェアczsmdisp103.zip
上記ファイルをダウンロードして解凍してください。フォルダのパスはスペースの入らない場所、全角文字が入らない場所へお願いします。
例えば、C:\dispのようなフォルダへ解凍してください。

czsmcap.exe画面キャプチャアプリ(コマンドプロンプト用)。設定によりczsmnd.exeを自動起動する場合あり。
czsmnd.exe本体制御アプリ(コマンドプロンプト用)
czsmcap.vbsczsmcap.exeを起動するVBSスクリプト。重複起動防止のため、以下のスクリプトを自動的に実行します。
czsmcapreboot.vbsczsmcap.exeへ再起動要求を出すVBSスクリプト
czsmcapvbshalt.vbsczsmcap.exeへ終了要求を出すVBSスクリプト
czsmkill.vbsczsmcap.exeプロセスを終了させるVBSスクリプト
star.jpg星形のサンプル画像
cmd.txtコマンドファイルのサンプルテキストファイル

スクリプトはエクスプローラー上でダブルクリックで起動して実行できます。

設定

本体をPCとケーブルで接続すると、自動的にドライバがインストールされて、COMデバイスとして認識されます。アプリとCOMを通して通信しますので、認識されていることが必須です。
一般のPCモニタのようにモニタデバイスとしては認識されませんのでご注意ください。
Windowsのコマンドプロンプト画面を起動して以下を実行してください。情報が表示されます。
czsmnd p
COM name = COM13  Baud Rate = 115200

9600 1929 38400(default) 57600 115200 etc
USB Serial Device (COM22)
ここで、1行目は現在の設定です。上記例の場合は、COMポートとしてCOM13、ボーレート(通信速度)として115200という意味です。
最後の行は認識されているCOMポートです。この例の場合は、COM22が認識されております。他に機器が接続されている場合は複数表示される場合もあります。
本体のケーブルを抜いて、再度実行すると表示が消えるはずです。この例の場合は確かにCOM22が認識されていることを確認できます。
COMポート名が分かったところで、設定を行います。
1.本体はOFFにしておく。
2.czsmnd p COM22 115200(この例の場合。環境に合わせてCOM名はご指定ください。ボーレートは115200にします。ボーレートの設定可能値は後述。
EXIT : [Ctrl]+[C] key
Please power on device now.
と表示されます。
3.本体にケーブルを差して電源ONします。
Found
write SPD start
write SPD end
set OK
Done.
と表示されます。この時本体のディスプレイには一瞬ですが、左上に…と表示されます。
次に、真ん中にも・と一瞬表示されます。
ボーレート設定が起動時に行われた場合のみ、左上に…と表示されます。
うまく認識されない場合は、[Ctrl]+[C]キーで中断してください。この場合、PC側だけに設定が保存されます。
(すでに本体側が設定済の場合は本体未接続で実行するとPC側だけ設定できます。)
一度設定を行うと、次回からは設定は不要です。
本体側には、ボーレートのみが設定されます。COM名はPC側にしか設定されません。
設定変更は何度でも同様手順で行うことが可能です。本体起動時だけ固定の通信速度で通信を行っているため、設定変更が可能です。
ボーレート(通信速度)で設定できる数値は以下です。
1200,2400,4800,9600,14400,19200,28800,32000,38400,48000,56000,57600,64000,72000
115200,125000,128000,148000,192000,230400,250000,256000,384000,500000,512000
768000,800000,921600,1000000,2000000

色設定

クレイジースモール超小窓ディスプレイBWはモノクロ(黒と青緑)ですので、モノクロの設定および前景色、背景色を設定します。
czsmnd n M 255 255 255 0 0 0
と実行します。nは色設定の意味です。Mはモノクロの意味です。
255 255 255が前景色のRGB指定です。0から255までを指定できます。この例の場合は白を指定してます。
0 0 0 は背景色のRGB指定です。0から255までを指定できます。この例の場合は黒を指定してます。
例えば、淡い色の文字部分を強調したい場合は、前景色のその文字部分のRGBを指定して背景色に文字周辺の色のRGBを指定するとくっきりと文字が表示できます。
前景色と背景色を逆にすると、反転表示になります。
RGBを調べるには、[Win]+[Shift]+[S]で指定領域を画像キャプチャしてから、こちらのフリーソフトPNG Alpha Picture Editorを利用すると便利です。
DOWNLOADリンクからダウンロード後、解凍して、実行して、ウインドウ内をクリックしてから[V]キーを押すと、キャプチャ画像が表示されます。左矢印キーを何度か押してpen widthを1にして
カーソルを任意の画像位置に置くと、下の情報欄にRGBの値が表示されますので確認が簡単です。pen widthが大きい場合はペンの太さで平均したRGBが計算されます。

スクロールアニメーション設定

画面を自動スクロールする設定を行うことができます。この設定は他の動作の邪魔になる場合がありますので、すべての動作が確認できたのちに、もし必要でしたらスクロールしたい場合に設定してください。
czsmnd s 100 0 0 0 0 1 1
として、とりあえず無効にしておきましょう。
czsmnd s
と実行すると確認できます。
delayframemsec=100 , xspeed=0 , yspeed=0 , xoffset=0 , yoffset=0 , segmentcount=1 , loopcount=1
と表示されます。この例の場合はセグメントが1、セグメントの繰り返しが1で、繰り返すフレームはありませんから、アニメーションは無効となってます。
delayframemsecフレームごとの待ち時間[msec]
xspeed横方向のスクロール速度[pixel/frame],マイナス方向も可
yspeed縦方向のスクロール速度[pixel/frame],マイナス方向も可
xoffset開始横位置
yoffset開始縦位置
segmentcountスクロールの1連動作(セグメント)のフレーム数
loopcountセグメントの繰り返し回数

スクロールアニメーションはリアルタイムでアプリと通信して実現しておりますので、動作は遅いです。本体単体では動作しません。

メッセージ表示

任意のテキストを表示してみましょう。
czsmnd mb 20 10 24 TEST
TESTという文字が表示されれば成功です。
スペースの入る文字列や漢字などの全角文字はダブルクォートで囲ってください。
czsmnd mb 20 10 24 "漢 字"
のようにします。
改行もできます。\nが改行の意味です。
czsmnd mb 20 10 12 "漢字の\n文章です"
のようにします。
mbというのがメッセージモードの指定です。次に横位置、縦位置、フォントサイズの3つを数値で指定します。
最後に表示したいテキストを指定します。
繰り返し表示しますと、背景に以前の文字が残ったままですが、画面クリアの方法は後述しますが、ここでは、簡単にスペースを表示してクリアしてみます。
czsmnd mb 0 0 80 " "
とでもすればいいでしょう。

フォント設定

メッセージはPCにインストールされている任意のフォントが使用可能です。本体にはフォントは内蔵されておりませんので、PCのフォントでレンダリングした画像を転送しております。
czsmnd f R "HG明朝B"
のように指定します。fはフォント設定の意味で、Rはレギュラー、最後にフォント名を指定します。
Rの代わりに、IではイタリックBではボールドです。
インストール済のフォント名はメモ帳アプリの書式メニューからフォントを選ぶと一覧で参照できます。

画像表示

サンプル画像を表示してみましょう。
czsmnd ib 35 0 star.jpg
これで真ん中に星マークが表示されると思います。
ibというのが画像モードの指定です。次に画像の左上の横位置、縦位置の2つを数値で指定します。最後に画像ファイル名を指定します。
画像はモノクロに見えますがフォーマットとしましては一般的なカラー画像です。カラー画像をモノクロへ変換して表示しております。
ファイルの拡張子として、.bmp,.jpg,jpeg.png,.gif,.tifが使用できます。

ダイレクトモード

本体へ対話型でコマンドを送信できるダイレクトモードをご紹介します。
czsmnd d
と実行するとダイレクトモードになります。
EXIT : [Ctrl]+[C] key
COM22 115200
Start.
[Enter]=exit.
と表示されて入力待ち状態になります。EnterキーやCtrl+Cキーで終了できます。
ディスプレイ関連のコマンドを試してみましょう。CHT%|と打ち込んでEnterキーを押します。
続けて、下のように2つのコマンドを打ち込んで動作を確認しましょう。
CHT%|       ---- ディスプレイOFF
CHT$|       ---- ディスプレイON
CHT^|       ---- ディスプレイクリア
Enterキーだけ入力すると終了します。

コマンドファイルモード

ダイレクトモードでは対話型での入力が必要でしたが、コマンドをファイルとして保存しておいて、それを送信することが出来ます。
メモ帳で
CHT%|
と記載して、displayoff.txtファイルとして実行ファイルと同じフォルダに保存してください。
同様に
CHT$|
と記載して、displayon.txtファイルとして実行ファイルと同じフォルダに保存してください。
同様に
CHT^|
と記載して、displayclear.txtファイルとして実行ファイルと同じフォルダに保存してください。
czsmnd c displayoff.txt
のようにコマンドファイルモードのcを指定して、ファイル名を指定すると記載されたコマンドが動作します。
コマンドファイルモードの高度な使い方は最終章のTIPSに記載しておきます。アニメーション表示などに応用できます。

czsmndの設定初期化

czsmndアプリの設定を初期化するには
czsmnd r
とします。PC側に保存されているczsmndの設定が初期化されます。本体とは通信しませんので、本体のボーレート設定には影響ありません。
本体に設定されているのはボーレート設定のみです。

※ところで、コマンドプロンプトで打ち込んでいると、カーソルが消えてしまうことがあります。Windowsのバグのようです。
 全角文字を何か打ち込んで確定して、再度半角に戻すと直るようです。
 全角文字を打ち込む際に、確定しないでバックスペースで文字を消すと、カーソルが消えてしまうようです。

czsmcapの概要

czsmcapアプリはWindows10のデスクトップや指定ウインドウの画像キャプチャアプリです。czsmndアプリと連携してリアルタイムにクレイジースモール超小窓ディスプレイBWに表示することが出来ます。
czsmcapの機能は以下です。

・プロセス名、ウインドウタイトル名での指定ウインドウの任意位置、サイズ指定でのキャプチャ。マウスカーソルはキャプチャしません。
・デスクトップの任意位置、サイズ指定でのキャプチャ。マウスカーソルもキャプチャします。
・カーソル追従での任意位置、サイズ指定でのキャプチャ。マウスカーソルもキャプチャします。
・Windowsの表示スケールに対応したスケールの自動、手動設定
・画像ファイル出力
・キャプチャ時間間隔の設定
・czsmndの自動起動、自動終了。手動も可能
・czsmcapの設定初期化


画像ファイルを仲介してczsmndと連携ができて、制御用のVBSスクリプトからの要求もファイルで送られるため、
実行ファイルのあるフォルダをネット越しに共有すると、遠隔表示やczsmcapの遠隔再起動が可能です。

通信しながら、表示するというのは、一般のPCモニタと比べるとかなり画面更新が遅すぎるのですが、使いようによっては便利なこともあります。
キャプチャを行うにはWindowsがモニタ出力している状態が必要です。省電力モードでスリープになって、モニタ出力がOFFになっている状態ではキャプチャが出来なくなりますのでご注意ください。
デスクトップ左下のウインドウマークをクリックして歯車マーク「設定」をクリック。
設定画面の左ペインの「電源とスリープ」を選択
右画面 の「次の時間が経過後、ディスプレイの電源を切る」
「バッテリー駆動時」と「電源に接続時」
で なし を選択。
同様に「スリープ」で なし を選択。
ところで、PCモニタの電源をOFFにしてキャプチャするにはどうしたらよいでしょうか。
それが出来れば、PCモニタがOFFでもクレイジースモール超小窓ディスプレイBWには表示されるという使い方が出来ます。
デスクトップPCの場合は、スリープしない設定にして、物理的にモニタだけをOFFすればいいと思いますが、
ノートPCの場合はモニタだけOFFにすることが大抵出来ませんが、仮想ディスプレイアダプタと呼ばれるドングルのようなものを使用すれば可能となります。
仮想ディスプレイアダプタは様々な製品が市販されております。
仮想ディスプレイアダプタをPCに接続するとあたかも別のモニタが接続されたかのように設定できます。そこで、マルチモニタと同様に、[Windows]キー+[P]でモニタのモード切替が出来ます。
[P]キーを何回か押して"セカンドスクリーンのみ"の設定にすると、ノートPCのモニタの電源はOFFとなります。その状態でもセカンダリモニタ(仮想ディスプレイアダプタ)のほうの画面をキャプチャできます。
どのノートPCでも出来るかどうか不明ですが、多くのノートPCで出来るはずです。
[P]キーで選択後15秒で元にもどってしまう場合は、[Tab]を押して[Enter]すれば、確定できます。
[Windows]キー+[P]後、[P]キーを何回か押していれば、元のノートPCの画面に復帰することができます。

表示スケールの設定

Windowsのディスプレイ設定画面には”拡大縮小とレイアウト”という項目で表示スケールの拡大率の設定があります。
100%であったり、250%であったりしますが、czsmcapにも同じ値を設定する必要があります。
特にこの拡大率を意識しないでキャプチャするには自動の設定にします。自動でうまくいかない場合は手動で数値を設定するといいでしょう。
czsmcap s A
とすると自動設定です。sは表示スケールの設定。Aは自動の意味です。
czsmcap s M 250
とすると手動設定です。Mは手動の意味です。次の数値が拡大率です。この例の場合250%を設定してます。

キャプチャ表示

次にキャプチャの設定を行います。
czsmcap p CURSOR -128 -64 256 128 0.5 0.5 1000 CZSMND A T
としてみます。
この時点ではまだ、キャプチャの実行はされません。
キャプチャを実行するには次のようにします。
czsmcap e
これでカーソル位置が本体ディスプレイに表示されます。マウスでカーソルを移動すると表示も変わると思います。
[Ctrl]+[C]キーで終了します。
上手くいかない場合は、czsmndの設定が適切でない可能性があります。取説のはじめから確認してみてください。
表示できたところで、パラメータの説明をいたします。
czsmcap p CURSOR -128 -64 256 128 0.5 0.5 1000 CZSMND A T
pというのがキャプチャ設定の意味です。
CURSORはカーソル位置のキャプチャの意味です。この場合カーソルも表示されます。
ここをDESKTOPとするとデスクトップの絶対位置の指定になります。カーソルも表示されます。
特定のウインドウを指定したい場合は、プロセス名での指定も出来ます。例えばメモ帳の場合はnotepadと指定すればいいです。
プロセス名はタスクマネージャでメモ帳と表示されているアイコンを右クリックしてプロパティを見るとnotepad.exeと記載されてます。.exeの拡張子は無視してnotepadというのがプロセス名です。
ウインドウのタイトルで指定する場合は、例えばメモ帳の場合はファイル保存していない場合のウインドウタイトルは"無題 - メモ帳"となってますから"無題"を指定します。
ウインドウタイトル文字列先頭からの一致で判断します。全角なのでダブルクォートで囲みます
つぎの数値は横位置、縦位置、横幅、縦幅、横スケール、縦スケールです。例では-128 -64 256 128 0.5 0.5の部分です。
位置はDESKTOP指定の場合が絶対位置で、その他は相対位置です。
位置はCURSORの指定の場合だけマイナス値が有効です。カーソルの左側や上側を表示したい場合にマイナス値を利用します。
幅はキャプチャする部分のピクセルサイズです。
スケールは本体のディスプレイで表示する際に、拡大、縮小する値です。例の0.5は0.5倍という意味です。本体ディスプレイ解像度は128x64ですのでそれに合わせて指定すると良いでしょう。
例の場合は256x128のサイズを0.5倍して128x64にしてます。
次の1000という値はキャプチャの時間間隔[msec]です。この例の場合は1秒の設定です。あまり小さい値にしても通信や表示が追いつかないため意味がありません。
逆にネット越しで遠隔表示する場合は30000(30秒)などの大きい数字で行うほうが安定すると思います。
CZSMND A T
という部分ですが、CZSMNDというのがczsmndとの連携を行う指定です。次のAは自動連携です。ここがMの場合は手動連携です。
自動連携の場合は自動的にczsmndを起動/終了します。
手動連携の場合は、別途czsmndを起動してください。
ネット越しの連携の環境ではMの手動連携を指定してください。本体と接続しているPC上でczsmndが起動しなくてはいけません。
自動連携の場合は、czsmcapが動作するPCでczsmndも起動してしまいます。
次のTは一時ファイルを通じてczsmndと連携するという意味です。
ここをFにすると出力画像ファイルを指定できます。続けて、ファイル名を2つ記載します。1つ目がキャプチャ画像元ファイルで、2つ目がそのコピーファイルです。
czsmcap p DESKTOP 300 400 256 128 0.5 0.5 5000 CZSMND M F cap1.jpg cap1cp.jpg
のように指定できます。この例の場合はデスクトップの横縦300,400の位置で横縦256,128のサイズでキャプチャしたものを横縦0.5,0.5倍して5秒ごとにキャプチャします。
czsmndとの連携は手動で、画像ファイルを出力します。cap1.jpgとcap1cp.jpgが画像ファイルです。
本機を2台で同時運用する場合、2つ目の画像ファイルをそれぞれ別の名前にする必要があります。

czsmcapの設定初期化

czsmcapアプリの設定を初期化するには
czsmcap r
とします。PC側に保存されているczsmcapの設定が初期化されます。本体とは通信しません。

エクスプローラー上からの実行方法

これまでの設定が終了していれば、コマンドプロンプトを使用しないでも、エクスプローラーからダブルクリックで実行できます。

czsmcap.vbsで内部的にczsmcap eを実行します。重複起動はしないように実行します。
リモートからこのスクリプトは実行しないようにしてください。ローカルでczsmcapが起動します。

czsmcapreboot.vbsはczsmcapへ再起動要求を出します。正常に処理された場合はczsmcapは再起動します。
リモートからこのスクリプトを実行した場合、リモート先でczsmcapは再起動します。

czsmcapvbshalt.vbsはczsmcapへ終了要求を出します。正常に処理された場合はczsmcapは終了します。
リモートからこのスクリプトを実行した場合、リモート先でczsmcapは終了します。

czsmkill.vbsは強制的にczsmcapプロセスを終了させます。
リモートからこのスクリプトは実行しないようにしてください。ローカルのczsmcapプロセスを終了させます。

追加の情報

専用アプリには、他にもいくつか説明していない機能が実装されております。
それらは次世代を想定した機能であったり、実験的な機能であったりします。
また、現時点ではローレベルな通信仕様は未公開としております。
時期が来ましたら公開することもあるかもしれませんが、現時点ではあまり使わないだろうと判断しているものです。
そのような機能はとりあえず無視していただいて、アプリのパラメータを思い出すには、引数なしで
czsmndまたは
czsmcapとして実行します。
パラメータのヘルプが表示されます。

本製品のソフトウェアライセンスと制限

商用、非商用に関わらず完全無料です。
著作権はcooyou.orgが持ちます。
再配布は自由です。
ソースコードの開示は行っておりません。
仕様の開示範囲はcooyou.orgが判断します。
リバースエンジニアリングは禁止します。
クレイジースモールシリーズと連携しない用途でのソフトウェア単体での使用(動作確認を除く)は禁止します。
クレイジースモールシリーズ以外と連携する目的での使用は禁止します。(クレイジースモールシリーズをシステムの一部で使用していれば可)
本製品ソフトウェア使用によるいかなる不利益、損害も補償しません。




TIPS

コマンドファイルモードの高度な使い方

サンプルのcmd.txtファイルはテキストファイルですので、メモ帳などのエディタで編集できます。
見た目で画像が0と1でアスキーアートのようになっていることが分かると思います。
要するにこの0と1を編集すると表示される画像が変更されます。編集後
czsmnd c cmd.txt
で表示できます。
このサンプルでは"希望の星"と文字を表示後、星形のstar.jpgの画像を表示してます。
文字といっても、文字を画像化したものですので、実質的には画像と違いはありません。
IMGM+0010+000301430068t
のようなIMGで開始される行は、画像のヘッダです。以降で画像のピクセルが記述されます。
Mがモノクロ画像の意味です。+0010が横位置、+0003が縦位置、0143が画像の横サイズ、0068が画像の縦サイズ、tがテキストモードの意味です。
画像のピクセル記述の後に
|
SLP300
CHT^|
のような短い行がいくつかありますが、これはコマンドです。|だけの行は画像の終わりを示してます。
SLPというのは一時停止です。続く数値(桁数自由)がmsecの時間です。つまり2000なら2秒です。
CHT^|というのは前述している画面クリアです。
サンプルでは初めにCHT^|で画面クリアしてから、文字表示を行い、0.3秒の一時停止後、画面クリアしてから星形画像を表示してます。
ただし、これだけですと、毎回コマンドラインで実行しないと繰り返し表示にはなりません。
延々と表示を繰り返すには次のコマンドをファイルの最後(|の行の次の行)に追加します。
SLP500
LOOP
LOOPというのが初めから繰り返すというコマンドです。これで繰り返しアニメーションのようになります。
あくまで、PCとオンラインでの通信が繰り返すということですから、オフラインで単体で動作するわけではありませんのでご注意ください。
SLP500で0.5秒画像を表示後にLOOPされます。
終了するには[Ctrl]+[C]キーで終了してください。
ところで、この画像を表示する部分はどのように作成すれば良いのでしょうか?手作業の打ち込みで作成しなくても大丈夫です。それは次でご説明します。

czsmndの送信ログファイルへの書き出し

文字表示を行ったり、画像ファイルを表示したり、その時の送信ログを書き出すことが出来ます。
方法は、事前に空のczsmlog.txtというファイルを作成しておきます。
これでczsmndのログはこのファイルに書き出されます。czsmndのコマンド開始時に内容はクリアされます。
また、ログファイルサイズが1Mbyteを超えると画像送信が無効となり記載されません。エラーが表示されます。
その場合はログファイル自体を消去すれば、ログ書き出しは無くなり、復帰します。
czsmlog.txtを作成後に、
czsmnd mt 0 0 12 ABC
とでも実行してみてください。ログが記載されます。
mtというのは前述のmbとは異なっていることにご注意ください。mbがバイナリモードでmtがテキストモードです。
ログ出力を前提にする場合はテキストモードにしてください。
通信サイズはテキストモードのほうが大きくなりますので、バイナリモードよりも表示は遅くなります。
同様に画像の場合は
czsmnd it 0 0 star.jpg
のような実行です。ここでもitというテキストモードを指定してます。前述のibはバイナリモードです。
このようにテキストモードで実行するとログはメモ帳などのテキストエディタで編集可能となります。
画像ヘッダも記載されます。
ログをコピー&ペーストしてコマンドファイルを作成することが可能となります。

本製品への問い合わせ先

admininfo@cooyou.org
ユーザーサポートはメールのみとなっております。

Copyright 2020 cooyou.org All rights reserve