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-compose build時に「no Space Left on Device」が発生

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

AlexaにPS4を起動してもらう

「Alexa、PS4をつけて(消して)」

crontab -rで全消ししてしまった時の対応

ログから復元できるものは復元してe, rオプションを封印した

next exportで書き出した静的サイトのconsoleに _next/data/xxx/.json 404エラーが出力される

Next.jsバージョンをv10.0.4にアップデートした