Saturday, December 19, 2015

Ricoh THETA S のリモコン

RICOH THETA用の物理リモートシャッターボタンをつくるの巻を参考にしてちょっとだけ変えてRICOH THETA S用のリモコンにしました。
プログラムを書いても良かったのですが、とりあえず動作確認のためスクリプトのみの変更です。動いてそうです。
変えたのは theta_remote.sh で
68c68,71
< /tmp/www/ftp/sda1/theta/theta_proc.sh $theta_ip $theta_port $trigger_port&
---
> #/tmp/www/ftp/sda1/theta/theta_proc.sh $theta_ip $theta_port $trigger_port&
> sed="/tmp/www/ftp/sda1/theta/busybox-mips sed"
> execute="http://192.168.1.1/osc/commands/execute"
81c84,87
< /tmp/www/ftp/sda1/theta/ThetaShutterTrig $trigger_port 0
---
> # /tmp/www/ftp/sda1/theta/ThetaShutterTrig $trigger_port 0
> sid=`$wget $execute --post-data='{"name":"camera.startSession"}'| $sed -e "s/^.*\"sessionId\":\"\([^\"]*\)\".*$/\1/"`
> $wget $execute --post-data="{\"name\":\"camera.takePicture\",\"parameters\":{\"sessionId\":\"${sid}\"}}"
> $wget $execute --post-data="{\"name\":\"camera.closeSession\",\"parameters\":{\"sessionId\":\"${sid}\"}}"
84,91c90,97
< /tmp/www/ftp/sda1/theta/sleepms 500
< read trig < $trigger_gpio
< if test ${trig} -eq 0
< then
< # bracket shutter
< /tmp/www/ftp/sda1/theta/ThetaShutterTrig $trigger_port 2000
< /tmp/www/ftp/sda1/theta/ThetaShutterTrig $trigger_port -2000
< fi
---
> # /tmp/www/ftp/sda1/theta/sleepms 500
> # read trig < $trigger_gpio
> # if test ${trig} -eq 0
> # then
> # # bracket shutter
> # /tmp/www/ftp/sda1/theta/ThetaShutterTrig $trigger_port 2000
> # /tmp/www/ftp/sda1/theta/ThetaShutterTrig $trigger_port -2000

> # fi

4 comments:

  1. 突然のコメント失礼いたします。
    私もTHETA Sを所有していて、同じサイトを参照してリモコン作成を試みたのですが、結果できなかったのであきらめていたところ、この記事を検索で発見、さっそく試させていただきました。
    結果、私のTHETA Sでも動作しました。本当にありがとうございます。
    ちなみにTHETA S本体のバージョンはまだアップデートしていないので、01.11のままです。

    シェルスクリプトは私も少しだけわかるのですが、書き換えるまでの知識が無くて断念しかけていました。助かりました。
    ありがとうございました。

    私も拙い内容ですが、ブログを書いていまして、そちらでも記事として書かせていただいてもよろしいでしょうか?
    http://shinjiman0101-digital.net/blog/

    ReplyDelete
    Replies
    1. はい、ご自由に記事として書いていただいてOKです。
      私の方はこれを作った後、Wi-Fiの接続に時間がかかるので、https://github.com/katsuya-san/ESP8266-THETA-S-SimpleRemoteControler を参考にしてリモコンを作成しました。

      Delete
  2. 有用な情報公開ありがとうございます。Theta Sの写真撮影はできるようになりました。ただし、Videoモードでの撮影start/stopはできませんでした。Theta SのSDKをみても、Videoも静止画も関係なくcamera.takePictureでコントロールしているようですが、何故、このスクリプトでvideoのstart/stopができないか、判りますでしょうか?

    ReplyDelete
    Replies
    1. API リファレンスを読むと書いてありますが動画は動画モードにしてから
      camera._startCapture
      camera._stopCapture
      ですね。静止画モードだとこれでインターバル撮影の開始と終了になります。スクリプトをそのように書き換えれば動画もできるようになると思いますよ。

      Delete