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

Abierto
#2,916 8 comentarios 1 reacción 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
48/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
linux

Línea de trabajo

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.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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.

Lenguaje dominante
Sin datos de lenguaje
Estrellas
2.7k
Forks
88
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de ValveSoftware/SteamOS

Todos los issues de ValveSoftware/SteamOS

Issues similares

Más issues de Operating Systems

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.