Raspberry Piのカーネルが4.19になってから赤外線リモコン(lirc)の仕様が変わる

Raspberry Piのカーネルが4.19になって赤外線リモコン(lirc)の仕様が変わってから、台所の照明の電源がオン/オフが上手くできなかったが、やっと対処法が見つかった。
対処法が見つからない間は、sudo rpi-updateで4.14.98に戻していた。

4.19ではだめな例

os.system('irsend SEND_ONCE dshomei on')
sleep(0.5)
os.system('irsend SEND_ONCE dshomei on')

4.19でOKな例

for i in range(30):
    sleep(0.1)
    os.system('irsend SEND_ONCE dshomei on')

4.14ではirsend1回では失敗っすることがたまにあったので、2回実行していた。4.19では短い間隔で複数回送らないとだめなようだ。とりあえず30回送るようにしたら、今の所失敗していない。
この場合、トグル系のやつはどうしたらいいんだろうという気はするが、今はトグル系のものは制御してないからまあいいっか。

あと設定は以下のように変える必要がある。

# Uncomment this to enable the lirc-rpi module
# dtoverlay=lirc-rpi
# dtparam=gpio_in_pin=20
# dtparam=gpio_out_pin=21
dtoverlay=gpio-ir,gpio_pin=20
dtoverlay=gpio-ir-tx,gpio_pin=21