luaスクリプトにsleepを入れたい

公開日時

Keybow KitのショートカットでPS4とDBDを起動するようにしたついでに、ディスプレイのオンオフもできるようにした。

その際に、ディスプレイ起動後にHDMIの切り替えをしたかったので数秒待ってから次の赤外線を送信するようにsleep処理を入れる必要があったので方法を調べた。

上記記事にあるようにosのsleepを呼び出すのが一番手軽だったので、この方法で対応した。

function sleep(n)
    os.execute("sleep " .. tonumber(n))
end

function handle_minikey_02(pressed)
    keybow.set_key("2", pressed)
    if pressed then
        keybow.set_pixel(2, 0, 0, 255)
        os.execute("cd /home/pi/ps4 && sudo -u pi npx ps4-waker start CUSA08444")
        -- os.execute("display onの赤外線送信")
        sleep(15)
        -- os.execute("hdmi切り替えの赤外線送信")
    else
        keybow.set_pixel(2, 0, 0, 0)
    end
end

Related #raspberry pi

ngrokの代わりにCloudflare Tunnelを使う

botやwebhookを利用するサービスの開発が捗る

Dockerのデータ保存場所を変更する

/etc/docker/daemon.jsonに追記

Alexaにゲーミングマシンと周辺環境を終了してもらう

「Alexa Steamを終了して」ができるようになった

Alexaにゲーミングマシンと周辺環境を起動してもらう

PC起動、TV起動、サウンドバー起動がまとめてできるようになった

docker-compose build時に「no Space Left on Device」が発生

1年前にも同じエラーにハマってた