樹梅派3B紅外、433&315全連接及家居智能控制(五)使用搖控器實現多設備控制

使用搖控器實現多設備控制

標題讀着繞嘴,但就是這麼回事,就是用第三方一個搖控器通過派再控制其他多個設備。

用irexec命令進行紅外中轉控制。

將搖控器的conf文件替換tv.conf文件(我用的是一個小音箱的搖控器),這個文件的name不用改。

cp ~/yinxiang.com /etc/lirc/remotes/tv.conf   #替換tv.conf文件

killall -9 lircd  #殺掉所有lircd進程(多次運行lirc後,後臺會有很多lircd進程,殺掉好些。)

systemctl restart lirc #重啓服務

lircd –d /dev/lirc0 #使新的tv.conf(實際內容是yinxiang.conf文件的)文件生效。

irexec&將該程序放到後臺執行。

vim .lircrc文件,(.lircrc文件在~目錄且不可見)加入如下代碼:

begin

      prog = irexec

      button = KEY_power

      config = sh/etc/lirc/remotes/yinxiang.conf.ctrl/shtv.sh

   end

begin和end之間爲一個代碼區,只響應一個按鍵。

prog爲響應紅外按鍵的程序。

button 爲按鍵名。

config爲要執行的代碼,只可以執行一行代碼。所以這裏執行一個腳本,就可以執行多個指令了。

其他按鍵再增加一段begin和end及中間內容就行。

此時按搖控器的開機鍵就可以執行一個腳本文件,我這個腳本內容是打開三個設備。這樣我也可以用紅外搖控器搖控RF燈了,只不過效果不如菜單好。但做了這些以後,畢竟不用開電腦接ssh連接樹莓派來控制了,方便了很多。也學習了很多。

注意:irexec也是lirc的一個子程序,它跟irsend等命令一樣,所以它們不能同時使用,因爲irexec&已經在後臺運行,再運行其他跟紅外有關的命令都會出錯,所以在運行前一定要將後臺的irexec殺掉,切記!!!我在shtv.sh中是先殺掉這個進程,運行irsend等命令,就沒有問題,運行完所有代碼後再改conf文件爲音箱的,並重啓irexec到後來,這樣又把控制權交給搖控器了。
發佈了29 篇原創文章 · 獲贊 8 · 訪問量 9484
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章