HDMI-CEC does not put tv into standby mode when goes to sleep

Đang mở
#2,916 8 bình luận 1 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
48/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
linux
Lĩnh vực
operating-systems

Hướng nghiên cứu

Start by comparing the CEC events recorded during SteamOS sleep with the direct cec-ctl --to 0 --standby interaction shown in the issue. The report identifies a missing STANDBY message and lost state-change events, but does not name the SteamOS component or test to inspect. Done when the cause is identified and the TV enters standby when the machine sleeps.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Your system information
  • Steam client version: 1788652215
  • SteamOS version: 3.8.28
  • Opted into Steam client beta?: No
  • Opted into SteamOS beta?: No
  • Have you checked for updates in Settings > System?: Yes
Please describe your issue in as much detail as possible:
  • TV model: Sony Bravia XR-65X91K
  • Device model: Steam Machine

So while the turning TV on when awake feature works fine, the putting TV to standby never worked once.
I'm feeling really curious about this, so i used cec-ctl --monitor command to retrieve some logs during this process.

I took these actions sequentially:

  • Ensure everything is awake
  • Start cec-ctl --monitor within a tmux session and redirect its output to a log file
  • Use steam controller to select Power - Sleep from menu
    => The machine goes to sleep, but the tv is still awake, still within HDMI input channel, displaying "no input"
    => (this is not the expected behavior - the tv should go to standby mode instead)
  • Use TV rc to manually put the tv into standby mode
  • Use steam controller steam button to wake the machine, which automatically turns tv on. (expected)
  • reconnect to the tmux session, kill the monitor process, and print-out the log file.

Here's what i got:

Driver Info:
        Driver Name                : cros-ec-cec
        Adapter Name               : cros-ec-cec
        Capabilities               : 0x0000031e
                Logical Addresses
                Transmit
                Passthrough
                Remote Control Support
                Connector Info
                Reply Vendor ID
        Driver version             : 6.18.50
        Available Logical Addresses: 1
        DRM Connector Info         : card 0, connector 121
        Physical Address           : 1.0.0.0
        Logical Address Mask       : 0x0010
        CEC Version                : 2.0
        Vendor ID                  : 0xe0319e, 14692766
        OSD Name                   : 'Steam Machine'
        Logical Addresses          : 1

          Logical Address          : 4 (Playback Device 1)
            Primary Device Type    : Playback
            Logical Address Type   : Playback
            All Device Types       :
            RC TV Profile          : None
            Device Features        :
                None



Initial Event: State Change: PA: 1.0.0.0, LA mask: 0x0010
Received from TV to Playback Device 1 (0 to 4): GIVE_DEVICE_POWER_STATUS (0x8f)
Transmitted by Playback Device 1 to TV (4 to 0): REPORT_POWER_STATUS (0x90):
        pwr-state: on (0x00)
Received from TV to Playback Device 1 (0 to 4): POLL
Transmitted by Playback Device 1 to TV (4 to 0): INACTIVE_SOURCE (0x9d):
        phys-addr: 1.0.0.0

(warn: State Change events were lost)
71615.982610: Event: State Change: PA: 1.0.0.0, LA mask: 0x0000
Transmitted by Playback Device 1 to Playback Device 1 (4 to 4): POLL
        Tx, Not Acknowledged (1), Max Retries

71616.202477: Event: State Change: PA: 1.0.0.0, LA mask: 0x0010
Transmitted by Playback Device 1 to all (4 to 15): REPORT_FEATURES (0xa6):
        cec-version: version-2-0 (0x06)
        all-device-types: 0 (0x00)
        rc-profile: tv-profile-none (0x00)
        dev-features: 0 (0x00)
Transmitted by Playback Device 1 to all (4 to 15): REPORT_PHYSICAL_ADDR (0x84):
        phys-addr: 1.0.0.0
        prim-devtype: playback (0x04)
Transmitted by Playback Device 1 to all (4 to 15): DEVICE_VENDOR_ID (0x87):
        vendor-id: 0xe0319e, 14692766
Transmitted by Playback Device 1 to all (4 to 15): REPORT_POWER_STATUS (0x90):
        pwr-state: on (0x00)
Transmitted by Playback Device 1 to TV (4 to 0): POLL
Transmitted by Playback Device 1 to TV (4 to 0): IMAGE_VIEW_ON (0x04)
Transmitted by Playback Device 1 to all (4 to 15): REQUEST_ACTIVE_SOURCE (0x85)
Transmitted by Playback Device 1 to TV (4 to 0): GIVE_AUDIO_STATUS (0x71)
Received from TV to all (0 to 15): VENDOR_COMMAND_WITH_ID (0xa0):
        vendor-id: 0x080046 (Sony)
        vendor-specific-data: 0x00 0x09 0x00 0x01
Received from TV to Playback Device 1 (0 to 4): FEATURE_ABORT (0x00):
        abort-msg: 113 (0x71, GIVE_AUDIO_STATUS)
        reason: incorrect-mode (0x01)
Transmitted by Playback Device 1 to all (4 to 15): ACTIVE_SOURCE (0x82):
        phys-addr: 1.0.0.0
Received from TV to all (0 to 15): REPORT_PHYSICAL_ADDR (0x84):
        phys-addr: 0.0.0.0
        prim-devtype: tv (0x00)
Received from TV to all (0 to 15): DEVICE_VENDOR_ID (0x87):
        vendor-id: 0x080046 (Sony)
Received from TV to all (0 to 15): ACTIVE_SOURCE (0x82):
        phys-addr: 0.0.0.0
Received from TV to all (0 to 15): VENDOR_COMMAND_WITH_ID (0xa0):
        vendor-id: 0x080046 (Sony)
        vendor-specific-data: 0x00 0x13 0x00 0x10 0x00 0x90 0x01 0x00 0x00 0x00 0x00
Received from TV to all (0 to 15): VENDOR_COMMAND_WITH_ID (0xa0):
        vendor-id: 0x080046 (Sony)
        vendor-specific-data: 0x00 0x13 0x00 0x10 0x00 0x90 0x50 0x00 0x00 0x00 0x00
Transmitted by Playback Device 1 to all (4 to 15): ACTIVE_SOURCE (0x82):
        phys-addr: 1.0.0.0
...

Comparing this log file to a direct cec-ctl --to 0 --standby output, it seems the correct interaction

Transmitted by Playback Device 1 to TV (4 to 0): STANDBY (0x36)
Received from TV to all (0 to 15): VENDOR_COMMAND_WITH_ID (0xa0):
        vendor-id: 0x080046 (Sony)
        vendor-specific-data: 0x00 0x3f 0x00 0x00 0x00 0x00 0x00
Received from TV to all (0 to 15): VENDOR_COMMAND_WITH_ID (0xa0):
        vendor-id: 0x080046 (Sony)
        vendor-specific-data: 0x00 0x09 0x00 0x01

never occurred. Although i'm not familar with the protocol itself, I personally think the (warn: State Change events were lost) part is especially suspicious.

Ngôn ngữ chính
Không có dữ liệu ngôn ngữ
Star
2.7k
Fork
88
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của ValveSoftware/SteamOS

Tất cả issue của ValveSoftware/SteamOS

Issue tương tự

Thêm issue về Operating Systems

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.