LIRCは送信しません(irsend:ハードウェアは送信をサポートしていません)


11

私は家の中でRaspberry Pi 2と赤外線シールドを使用してIR HVACユニットを制御しようとしています(http://bit.ly/29iC0lrを参照)。

他のいくつかの場所からのヒントを使用してIRシールド製品ページの指示に従い、HVACリモコンからの信号の受信はうまくいきました。.confファイルを作成することができ、irsendはLISTコマンドを使用したときに構成したボタンを表示していますが、SEND_ONCEを試行すると、次の応答が返されます。

irsend: hardware does not support sending

私は数時間かけてさまざまなOS(piCore 6.1-v7とRaspbian Jesse 2016-05-27と2015-11-21を含む)と2つのバージョンのLIRC(0.9.0と0.9.4)を試しましたが、常に同じ結果が得られました。

IR LEDがデジタルカメラと手動でGPIOピンを操作するpythonスクリプトを使用して機能していることを確認しました。

誰かがこれをトラブルシューティングするために私を正しい方向に向けることができますか?LIRCが私のハードウェアに送信機がないと思われる理由を見つける方法はありますか?

前もって感謝します。

注:/boot/config.txtにlirc-rpiのこの行が含まれています

dtoverlay=lirc-rpi,gpio_in_pin=18,gpio_out_pin=17

[編集7-7-2016] このページのトラブルシューティングセクションにあるいくつかのコマンドからの出力を含む、いくつかの追加情報があります。http//aron.ws/projects/lirc_rpi/ の出力はcat /sys/kernel/debug/gpio正しくありませんが、わかりませんそれについて何をすべきかを知っている。:-\

/etc/rc.localに次の行があります。

modprobe lirc_rpi gpio_in_pin=18 gpio_out_pins=17

/ etc / modulesでも同様のコードを試しましたが、違いはありませんでした。

pi@raspberrypi:~ $ ls -l /dev/lirc*
crw-rw---- 1 root video 244, 0 Jul  7 11:27 /dev/lirc0
lrwxrwxrwx 1 root root      21 Jul  7 11:27 /dev/lircd -> ../var/run/lirc/lircd

pi@raspberrypi:~ $ dmesg | grep lirc
[    5.219904] lirc_dev: IR Remote Control driver registered, major 244
[    5.230067] lirc_rpi: module is from the staging directory, the quality is unknown, you have been warned.
[    6.196796] lirc_rpi: auto-detected active low receiver on GPIO pin 18
[    6.197243] lirc_rpi lirc_rpi: lirc_dev: driver lirc_rpi registered at minor = 0
[    6.197248] lirc_rpi: driver registered!


pi@raspberrypi:~ $ sudo cat /sys/kernel/debug/gpio
GPIOs 0-53, platform/3f200000.gpio, pinctrl-bcm2835:
 gpio-35  (?                   ) in  hi
 gpio-47  (?                   ) out lo


pi@raspberrypi:~ $ cat /proc/interrupts
           CPU0       CPU1       CPU2       CPU3
 16:          0          0          0          0   ARMCTRL  16 Edge      bcm2708_fb dma
 20:       1500          0          0          0   ARMCTRL  20 Edge      DMA IRQ
 32:     145314          0          0          0   ARMCTRL  32 Edge      dwc_otg, dwc_otg_pcd, dwc_otg_hcd:usb1
 49:          0          0          0          0   ARMCTRL  49 Edge      3f200000.gpio:bank0
 50:          0          0          0          0   ARMCTRL  50 Edge      3f200000.gpio:bank1
 65:         26          0          0          0   ARMCTRL  65 Edge      3f00b880.mailbox
 66:          2          0          0          0   ARMCTRL  66 Edge      VCHIQ doorbell
 75:          1          0          0          0   ARMCTRL  75 Edge
 77:        120          0          0          0   ARMCTRL  77 Edge      DMA IRQ
 82:        192          0          0          0   ARMCTRL  82 Edge      mmc0
 83:          5          0          0          0   ARMCTRL  83 Edge      uart-pl011
 96:          0          0          0          0   ARMCTRL  96 Edge      arch_timer
 97:       3798       2724       1275       1139   ARMCTRL  97 Edge      arch_timer
FIQ:              usb_fiq
IPI0:          0          0          0          0  CPU wakeup interrupts
IPI1:          0          0          0          0  Timer broadcast interrupts
IPI2:       2225       2478       3697       2901  Rescheduling interrupts
IPI3:          7          6          8          9  Function call interrupts
IPI4:          3          5          0          1  Single function call interrupts
IPI5:          0          0          0          0  CPU stop interrupts
IPI6:          0          0          0          0  IRQ work interrupts
IPI7:          0          0          0          0  completion interrupts

pi@raspberrypi:~ $ lsmod
Module                  Size  Used by
cfg80211              419759  0
rfkill                 16659  2 cfg80211
8192cu                528485  0
evdev                  10226  1
snd_bcm2835            19739  0
bcm2835_gpiomem         3023  0
snd_pcm                74833  1 snd_bcm2835
snd_timer              18164  1 snd_pcm
lirc_rpi                6638  0
snd                    52116  3 snd_bcm2835,snd_timer,snd_pcm
lirc_dev                8169  1 lirc_rpi
rc_core                16910  1 lirc_dev
uio_pdrv_genirq         2966  0
uio                     8228  1 uio_pdrv_genirq
ipv6                  341892  30

質問を編集して、行ったLIRC関連のエントリを含めていただけます/boot/config.txtか?
ジョーン2016

さて、質問を更新しました。
gq9000

lirc_rpiのプロジェクトページからのトラブルシューティング情報を含む別の更新。モジュールがgpioピンを正しく割り当てていないようです。それを修正する方法に関するアイデアはありますか?
gq9000 16

IRが機能していることをどのくらい正確に確認しましたか?このpythonスクリプトを共有していただけませんか?私は同じ問題を抱えています。私の設定は問題ないようです。mode2を介した読み取りは問題なく動作しますが、irsendを実行してもこのエラーが発生します。
m1gu3l 2016年

スクリプトはもうありませんが、おそらく次のようなものでしたrpiblog.com/2012/09/… このスクリプトを変更して、出力ピン(17)を使用し、実行して、デジタルカメラまたは携帯電話のカメラを向けます。 LEDで。LEDの中心でかすかな白色光が点滅しているのが見えるはずです。
gq9000

回答:


10

私にとってこの追加のステップは 役に立ちました:lircdサービス を
編集/etc/lirc/lirc_options.confして設定
driver = devinput

driver = default
、次に再起動または再起動しました


4

さて、私は答えを見つけました、または私よりもはるかにLinuxについて詳しい人(/raspberrypi//users/49162/jonathan-dieter)がそれを見つけました。:)

/ etc / modulesまたは/etc/rc.localにlirc_rpiモジュールをロードするのではなく、新しい構成ファイルを/etc/modprobe.d/(私の場合は/etc/modprobe.d/ir-remote.conf)に追加することを提案しました。 )次の行で:

options lirc_rpi gpio_in_pin=18 gpio_out_pin=17

これがなぜ違いを生んだのかについての私の最良の推測は、/ etc / modulesまたはrc.localのコマンドが実行される前に、モジュールがデフォルト設定でロードされていたことです。すでにロードされているため、システムはその後の試行を無視し、出力ピンは正しく構成されませんでした(これはRaspbian Jessie BTWの下にあります)。


役立つかもしれないHVACユニットに関するもう1つの注意事項。irrecordを使用してリモートコントロールからのコマンドを保存できませんでした。HVACシステムの動作はTVやVCRとは少し異なるようです。

これら2つのページ(http://www.instructables.com/id/Reverse-engineering-of-an-Air-Conditioning-control/?ALLSTEPS and http://absurdlycertain.blogspot.com/2013/03/lirc-raspi -remote-control-configuration.html(特に最初の2つのコメント)は、mode2からの生の出力を記録し、それを正規化して、irsendで送信する方法を理解するのに役立ちました。


1

このガイドをフォローした後:http : //www.raspberrypiwiki.com/index.php/Raspberry_Pi_IR_Control_Expansion_Boardこの質問で述べたのと同じ問題が発生しました:

irsend: hardware does not support sending

私はこの行を追加してみました:

options lirc_rpi gpio_in_pin=18 gpio_out_pin=17

/etc/modprobe.d/ir-remote.confにありますが、それも役に立ちませんでした。

次のコマンドでLIRCデーモンを起動したとき:

sudo lircd --device /dev/lirc0

動いた!デバイスは、/ etc / lirc / hardware.confファイルで構成したものと同じである必要があります。したがって、手順は次のとおりです。

  1. このガイドに従ってください:http : //www.raspberrypiwiki.com/index.php/Raspberry_Pi_IR_Control_Expansion_Board
  2. 「IR送信機能」というセクション5にアクセスすると、エラーが発生します。 irsend: hardware does not support sending
  3. 次に、コンソールで次のコマンドを実行しますsudo lircd --device /dev/lirc0。LIRCデーモンを起動します
  4. 今すぐ実行 irsend SEND_ONCE /home/pi/lircd.conf KEY_VIDEO_PREV

私は同じ結果を持っています。デフォルトのインストールは機能しませんが、指定したコマンドでは機能します。これが真実である理由を理解していますか?起動時に適切なコマンドが実行されるように、init.dを変更したいと思います。
tim11g
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.