MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    MMM-PIR-Sensor-Lite modification

    Scheduled Pinned Locked Moved Solved Troubleshooting
    27 Posts 4 Posters 11.6k Views 5 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • F Offline
      Freddy_boy
      last edited by

      From SSH connection:

      pi@raspberrypi:~ $ echo ‘scan’ | cec-client -s -d 1
      opening a connection to the CEC adapter…
      requesting CEC bus information …
      CEC bus information

      ===================
      device #1: Recorder 1
      address: 1.0.0.0
      active source: no
      vendor: Pulse Eight
      osd string: CECTester
      CEC version: 1.4
      power status: on
      language: eng

      currently active source: unknown (-1)
      pi@raspberrypi:~ $

      1 Reply Last reply Reply Quote 0
      • F Offline
        Freddy_boy
        last edited by

        Update: I’m not sure how it happened, but I believe that my monitor had the controls disabled. It is an LG monitor using Simplink, and when I enable it, I can now see the device:

        pi@raspberrypi:~ $ echo ‘scan’ | cec-client -s -d 1
        opening a connection to the CEC adapter…
        requesting CEC bus information …
        CEC bus information

        ===================
        device #0: TV
        address: 0.0.0.0
        active source: yes
        vendor: LG
        osd string: TV
        CEC version: 1.3a
        power status: on
        language: eng

        device #1: Recorder 1
        address: 1.0.0.0
        active source: no
        vendor: LG
        osd string: CECTester
        CEC version: 1.3a
        power status: on
        language: eng

        currently active source: TV (0)

        However, when I attempt to turn OFF the monitor using the CEC control commands, it doesn’t seem to work. The commands appear to be working (ie. no error messages returned), but the monitor remains ON when I issue the standby command. I also use the ‘power’ command to check the status of the monitor, and it confirms that it is ON.

        pi@raspberrypi:~ $ echo ‘pow 0.0.0.0’ | cec-client -s -d 1
        opening a connection to the CEC adapter…
        power status: on
        pi@raspberrypi:~ $ echo ‘standby 0.0.0.0’ | cec-client -s -d 1
        opening a connection to the CEC adapter…
        pi@raspberrypi:~ $ echo ‘pow 0.0.0.0’ | cec-client -s -d 1
        opening a connection to the CEC adapter…
        power status: on
        pi@raspberrypi:~ $

        S 1 Reply Last reply Reply Quote 0
        • F Offline
          Freddy_boy
          last edited by

          I have also tried:
          sudo echo ‘standby 0.0.0.0’ | sudo cec-client -s -d 1

          but got the same result…

          1 Reply Last reply Reply Quote 0
          • S Offline
            sdetweil @Freddy_boy
            last edited by

            @Freddy_boy ok, I have a CEC tv which I can turn OFF, but not back on…

            Sam

            How to add modules

            learning how to use browser developers window for css changes

            1 Reply Last reply Reply Quote 0
            • F Offline
              Freddy_boy
              last edited by

              Yes, but this used to work previously. I suspect that none of the commands are working (even if no error message is returned). I attempted other commands, and they also do not seem to work. For example, I tried to change HDMI inputs, and the monitor remains at the same input. I think I need to determine if I can get ANY HDMI CEC command to work at all. It seems to be a missing step somewhere…

              S 1 Reply Last reply Reply Quote 0
              • S Offline
                sdetweil @Freddy_boy
                last edited by

                @Freddy_boy I have not studied the CEC commands

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                1 Reply Last reply Reply Quote 0
                • F Offline
                  Freddy_boy
                  last edited by

                  Here is the last portion of the debug log when I attempt to issue the standby command:

                  WARNING: [ 3123] FIXME: LG seems to have bugged out. resetting to ‘in transition standby to on’. the return button will not work
                  DEBUG: [ 3123] Recorder 1 (1): power status changed from ‘on’ to ‘in transition from standby to on’
                  DEBUG: [ 3123] << Recorder 1 (1) -> TV (0): in transition from standby to on
                  TRAFFIC: [ 3123] << 10:90:02
                  DEBUG: [ 3123] >> TV (0) -> Recorder 1 (1): give device power status (8F)
                  DEBUG: [ 3175] expected response not received (90: report power status)
                  DEBUG: [ 3189] CLinuxCECAdapterCommunication::Process - ioctl CEC_RECEIVE - rx_status=01 len=2 addr=01 opcode=46
                  DEBUG: [ 3276] CLinuxCECAdapterCommunication::Write - ioctl CEC_TRANSMIT - tx_status=01 len=3 addr=10 opcode=90
                  TRAFFIC: [ 3276] << 10:8f
                  DEBUG: [ 3276] Recorder 1 (1): power status changed from ‘in transition from standby to on’ to ‘on’
                  DEBUG: [ 3366] CLinuxCECAdapterCommunication::Process - ioctl CEC_RECEIVE - rx_status=01 len=3 addr=01 opcode=89
                  DEBUG: [ 3428] CLinuxCECAdapterCommunication::Write - ioctl CEC_TRANSMIT - tx_status=01 len=2 addr=10 opcode=8f
                  TRAFFIC: [ 3429] >> 01:90:00
                  DEBUG: [ 3429] TV (0): power status changed from ‘unknown’ to ‘on’
                  DEBUG: [ 3429] expected response received (90: report power status)
                  DEBUG: [ 3429] >> TV (0) -> Recorder 1 (1): report power status (90)
                  NOTICE: [ 3429] << putting ‘TV’ (0) in standby mode
                  TRAFFIC: [ 3429] << 10:36
                  TRAFFIC: [ 3429] >> 01:1a:01
                  DEBUG: [ 3429] >> TV (0) -> Recorder 1 (1): give deck status (1A)
                  DEBUG: [ 3494] CLinuxCECAdapterCommunication::Process - ioctl CEC_RECEIVE - rx_status=01 len=2 addr=01 opcode=46
                  DEBUG: [ 3557] CLinuxCECAdapterCommunication::Write - ioctl CEC_TRANSMIT - tx_status=01 len=2 addr=10 opcode=36
                  DEBUG: [ 3557] unregistering all CEC clients
                  NOTICE: [ 3557] unregistering client: libCEC version = 6.0.2, client version = 6.0.2, firmware version = 0, logical address(es) = Recorder 1 (1) , physical address: 1.0.0.0, compiled on Linux-5.10.63-v8+ … , features: P8_USB, DRM, P8_detect, randr, RPi, Exynos, Linux, AOCEC
                  DEBUG: [ 3557] Recorder 1 (1): power status changed from ‘on’ to ‘unknown’
                  DEBUG: [ 3557] Recorder 1 (1): vendor = Unknown (000000)
                  DEBUG: [ 3557] Recorder 1 (1): CEC version unknown
                  DEBUG: [ 3557] Recorder 1 (1): osd name set to ‘Recorder 1’
                  DEBUG: [ 3557] Recorder 1 (1): device status changed into ‘unknown’
                  DEBUG: [ 3557] CLinuxCECAdapterCommunication::SetLogicalAddresses - ioctl CEC_ADAP_S_LOG_ADDRS - log_addr_mask=0000 num_log_addrs=0
                  DEBUG: [ 3557] CLinuxCECAdapterCommunication::SetLogicalAddresses - ioctl CEC_ADAP_S_LOG_ADDRS - log_addr_mask=0000 num_log_addrs=0
                  DEBUG: [ 3557] unregistering all CEC clients
                  TRAFFIC: [ 3557] >> 01:46
                  DEBUG: [ 3558] CLinuxCECAdapterCommunication::SetLogicalAddresses - ioctl CEC_ADAP_S_LOG_ADDRS - log_addr_mask=0000 num_log_addrs=0
                  TRAFFIC: [ 3558] >> 01:89:01
                  TRAFFIC: [ 3558] >> 01:46
                  DEBUG: [ 3558] CLinuxCECAdapterCommunication::Process - CEC_DQEVENT - CEC_EVENT_STATE_CHANGE - log_addr_mask=0000 phys_addr=1000
                  DEBUG: [ 3558] >> TV (0) -> Recorder 1 (1): give osd name (46)
                  DEBUG: [ 3558] >> TV (0) -> Recorder 1 (1): vendor command (89)
                  DEBUG: [ 3558] >> TV (0) -> Recorder 1 (1): give osd name (46)
                  DEBUG: [ 4564] CLinuxCECAdapterCommunication::Process - stopped - m_path=/dev/cec0 m_fd=4
                  DEBUG: [ 4564] CLinuxCECAdapterCommunication::Close - m_path=/dev/cec0 m_fd=4

                  This seems to indicate that it will not take the command, and returns the monitor to the ON state. But I don’t know where to look next…

                  S 1 Reply Last reply Reply Quote 0
                  • S Offline
                    sdetweil @Freddy_boy
                    last edited by

                    @Freddy_boy google is your friend… sort of…lol… i would search the messages…

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

                    1 Reply Last reply Reply Quote 0
                    • F Offline
                      Freddy_boy
                      last edited by

                      As I dig more into this, I am finding that there seem to be a lot of reports that some LG monitors do not support using the Standby command. I am not certain of how this was working before, but now I am beginning to suspect that the Magic Mirror app simply went hidden when the timeout occurred. Perhaps the monitor was ON all along, but the app disappeared from the screen? I don’t know if this applies in my situation, because I can’t seem to make any of the CEC commands work at all.

                      I attempted to turn OFF the monitor, and then issue the CEC ON command, but that also did not work. It appears to be some fundamental issue with the CEC commands that I may not be able to use. Are you aware of any modules that simply blackout the Magic Mirror app using the PIR sensor? I know that isn’t really saving as much energy, but it might be worthwhile implementing…

                      S wishmaster270W 2 Replies Last reply Reply Quote 0
                      • S Offline
                        sdetweil @Freddy_boy
                        last edited by

                        @Freddy_boy you can try my MMM-SleepWake
                        https://github.com/sdetweil/MMM-SleepWake

                        it listens for pir sensor or lite to signal user presence

                        and mode HIDE will hide all the modules and show them again when a user appears

                        I built this to use this with a webcam as I don’t have any pirs, and none of my monitors will behave (big ‘no power’ warning when hdmi goes off)

                        I just added the code for sensor-lite, just a check …

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 1 / 3
                        • First post
                          Last post
                        Enjoying MagicMirror? Please consider a donation!
                        MagicMirror created by Michael Teeuw.
                        Forum managed by Sam, technical setup by Karsten.
                        This forum is using NodeBB as its core | Contributors
                        Contact | Privacy Policy