既知のバグ
2015年2月24日 - 未分類
見つかったバグリストをアップします。アップデートでバグフィックスいたします。使い方で回避できるもののあるので、対応策も書いておきます。
現在、複数のアイティプランターを1つのiTelepassでコントロールするように改良を進めています。1つのiTelepassで120台近くのアイティプランターをコントロールできるようになります。開発は、進行していますが、公開には、今しばらく、お待ちください。
起動時にUSBデバイスが見つからなくなることがあります。特に、rebootコマンドで再起動した場合に発生することがあります。USBプラグを抜き差しすれば、USBデバイスが認識されて使えるようになりますが、これでは不便です。
そこで、起動時に、USBデバイスを調べて、認識されていなければ、さらに再起動するようにします。
/etc/systemd/system/chkreboot.service に以下の内容を書き込みます。
# This file is reboot when USB device Error
[Unit]Description=reboot when USB device error
After=network.target
[Service]ExecStart=/usr/bin/sudo /home/pi/ReBoot/autoreboot.sh
ExecReload=/bin/kill -HUP $MAINPID
[Install]WantedBy=multi-user.target
次に、
systemctl enable chkreboot.service
で登録しておけば、USBデバイスが見つからなかった時に、自動的に再起動してくれます。
ちなみに、ここや、ここにかかれてある、コールドブートでは認識されませんでした。
echo 1 > /sys/module/intel_mid/parameters/force_cold_boot && sync && reboot
これでは、認識されないことが治りません。おそらく、ハードウエア的な問題ではないかと思われます。回避はできるので、実用上は問題ありません。
最も重要なアプリにバグがありました。setWiFiのバグでWiFiにつなぐことができません。
このファイルをダウンロードして、ダウンロードしたwifisetファイルを、/home/coder/coder-dist/coder-base/sudo_scriptsにコピーしてください。setWiFiのバグが修正されるはずです。
また、ネットに接続 に、shellアプリで手動で設定する方法を書きました。viとかのエディタでファイルを修正する必要があります。
LampSchedule のStop時間は、継続時間が正しい。消灯時間ではなく、点灯継続時間を入力しないと正しく動作しません。例えば、7時から20時まで点灯させたいときは、START 7:00 STOP 13:00 にすると正しく動作します。でも、STOP時間のほうが分かりやすいので修正。後、もう1点、PumpWorkTimeを秒単位に変更する。
webSendComでもバグが見つかっています。複数のアイティプランターを接続した場合に、全てのアイティプランターに同じコマンドを送信する * が正しく動作しません。1台づつならば動作します。修正版を配布予定です。sendcom自体にバグがありました。*を正しく解釈できていませんでした。修正済み。アップデートで対応します。
アイティプランターは、時々、USB通信をリセットするようにプログラムされています。これは、USBがハングアップすると検出が不可能になるからです。iTelepass2は常時接続なので、この現象を見かけることがあります。誰にも知られずに、リセットすればいいのですが、リセット時にLEDを一瞬、消灯してしまいます。アイティプランターのOSをアップデートしなければ修正できません。あまり、見かけることはないかとは思いますが、一瞬、LEDライトが消えても、異常ではありませんのでご安心ください。
アップデートでバグというか、仕様変更の計画があります。現在のアップデートは、アップデートできる範囲が限定されています。システム設定の変更ができません。アップデータ自体をアップデートする予定です。
問題:Safariでしか、画像が表示されない。
原因:iframeのブラウザ互換の問題。
対策:iframeをやめてJavaScriptにする。
streamCameraのHTMLを編集して、以下のようにすれば治ります。
<!–
<iframe id=’iframe’ src=”http://itelepass02.local:8080/?action=stream” width=640 height=480>
</iframe>
–>
<div id=”webcam”><img src=”http://itelepass02.local:8080/?action=snapshot” width=”640″ height=”480″ /></div>
スライドバーを動かしてもLEDライトの明るさが変わらない。
streamCameraのNODEを編集して、以下のようにすれば治ります。
var spawn = require(‘child_process’).spawn;
var scanproc = spawn(sudoscripts+com, [args]);
の部分を
var spawn = require(‘child_process’).spawn;
var scanproc = spawn(sudoscripts+com, [‘-e’,args]);
にする。
問題:USBハブをつないだ場合、再起動時のUSB認識に失敗する。再起動2度めには認識される。Shutdownしてから起動した場合には、認識されていることがある。
原因:不明
対策:autorebootで、USB認識が正しくなるまで自動で再起動を繰り返す。
問題:Coderアプリの表示順番がバラバラ
原因:Coderは、最後に編集したアプリが1番最初に配置される。
対策:Coderのどこで表示順番を変えているのか調べて、指定通りに並べるようにする。または、新しいメニューページを作る。
MyMenuというアプリを追加しました。
ミニ分光計がないと動作しないアプリだが、ブラウザ互換性が低いiframeを止めてdivに変更する。
問題:複数台のiTelepass2を使いたい場合、名前が衝突してしまう。
対策:iTelepass02.localという部分を一気に変更するアプリが必要。後で対応予定。先に完成度を高めましょう。
問題:USBカメラ撮影時に、真っ暗な写真になることがある。
原因:カメラ撮影する間に、LEDのライトが消えていることがある。
対策:カメラ撮影する前に、PCモード、強制ライトON、カメラ撮影、AUTOモードの順に実行する。
2015/04/21 対応したが、ライトON直後に撮影すると、自動露出が間に合わなくて、真っ白な画像になる。
2015/04/22 ライトONして5秒後に撮影するように変更。
撮影した画像を一覧する機能と削除する機能を付加する。ポップアップメニューを付けたい。
2015/04/22 対応済みです。
ラジオボタンの設定を保存して、次回の起動時に反映する。その他のアプリも、最後の設定を残すようにする。サーバー側に残さなければならないので、結構、大変そう。
2015/04/22 対応済みです。