Compartilhar via


Guia de implementação do Ativar ao tocar

Introdução

O Wake-on-Touch é uma funcionalidade nova e opcional que vem para dispositivos Windows 11. Esse recurso permite que os usuários toquem na tela de um dispositivo com o dedo para acordá-lo da suspensão. Não há suporte para usar uma caneta para ativar a tela. O Wake-on-Touch só está disponível em dispositivos que optam explicitamente de acordo com as diretrizes abaixo.

Se um dispositivo tiver optado pelo Wake-on-Touch, o OEM poderá especificar o estado padrão (habilitado/desabilitado— informações adicionais estão na seção Considerações do OEM abaixo). Os usuários também têm uma opção "Toque na tela para ativar" para ative-a ou desative-a com base em sua preferência na nova página de configurações bluetooth & –> Configurações de toque de acordo com a figura abaixo.

Ativar na página de configurações de toque

Observação

Se essa funcionalidade não tiver suporte em um dispositivo, a configuração não aparecerá nesta página.

Este documento descreve como dispositivos touch baseados em HID compatíveis com o Windows podem dar suporte ao Wake-On-Touch e o que os OEMs/ODMs e IHVs de toque precisam fazer dependendo se estão usando um driver de mini-porta HID de caixa de entrada disponível para USB, I2C ou SPI ou uma mini-porta HID 3P especificamente para um ônibus que não tem um driver de caixa de entrada (ou seja, Intel THC SPI).

Considerações sobre OEM

É imperativo que os OEMs considerem se devem implementar o Wake-on-Touch para cada design e SKU, pois há compensações perceptíveis de consumo de energia para o recurso. Pressionar uma tecla no teclado, interagir com o touchpad ou clicar no botão Bluetooth em uma caneta emparelhada são todos métodos para ativar o dispositivo com menor consumo de energia.

Gesto de ativação

Ao habilitar o Wake-on-Touch, os OEMs podem especificar o gesto de ativação para ser um toque único ou um toque duplo trabalhando com seu IHV de toque. Qualquer gesto escolhido será utilizável em qualquer lugar na área ativa do visor para ativar o dispositivo. Depois que o controlador de toque tiver detectado uma ativação com base no gesto de toque único ou de toque duplo:

  1. O controlador de toque é necessário para enviar dois quadros representativos de um único dedo para baixo e para cima (X, Y, TIP SET, seguido por X, Y, TIP CLEAR) independentemente de qual gesto foi usado para causar a ativação
  2. O host usará apenas esses dois quadros como indicação de presença do usuário para ativar exibições etc. e não fornecerão essa entrada para shell ou aplicativos
  3. Os quadros para cima e para baixo podem ser enviados imediatamente, no entanto, se o uso do tempo de verificação estiver presente, ele deverá ser incrementado entre quadros

Observação

Se o controlador de toque detectou um gesto de ativação e declara uma interrupção para indicar ao host que os relatórios de entrada estão prontos, mas o host não emite de fato a leitura, o controlador de toque deve reverter de volta ao estado de baixa energia após algum tempo limite definido pelo fornecedor. Esse é considerado um caso anormal, mas pode ser desejável que o IHV de toque seja considerado para minimizar o consumo de energia desnecessário em espera.

Postura do dispositivo

Diferentes posturas, tipos de dispositivo e estados de energia devem ser levados em consideração para otimização máxima da duração da bateria e UX confiável se o recurso deve ser utilizado. Por exemplo, um dispositivo conversível só pode querer habilitar o Wake-on-Touch quando estiver em seu estado "tablet" e desabilitá-lo quando estiver em seu estado "laptop" para conservar a bateria.

Disponibilidade do Wake-on-Touch, seja sempre que o dispositivo estiver em espera ou apenas em posturas específicas exigir abordagens diferentes na implementação.

Para sistemas com uma tampa (por exemplo, um dispositivo de fator forma de laptop), a pilha HID desabilitará automaticamente o Wake-on-Touch quando a tampa for fechada. Se o dispositivo corresponder a esse fator forma ou se desejar que o Wake-on-Touch seja habilitado independentemente da postura do dispositivo, ignore o restante do conteúdo nesta seção e siga as diretrizes no restante deste documento.

Se desejar que o Wake-on-Touch seja habilitado apenas em determinadas posturas, a recomendação é implementar um driver de filtro que controle se o controlador de toque está armado para ativação com base na postura do dispositivo. Nesse tipo de implementação, o driver de filtro decidiria se deixaria o IRP fluir para a ACPI para colocar o dispositivo em D2 (armado para ativação) ou se o dispositivo deve ser colocado em D3 Frio (desativado).

Se o design do dispositivo não permitir que a ACPI efetue pull de energia (D3 Cold) do controlador de toque quando Wake-on-Touch não for desejado com base na postura, um mecanismo específico do fornecedor deverá ser implementado para permitir que o controlador de toque permaneça ligado (D3 Hot) enquanto o informa para ir para seu estado de energia mais baixo, em gating internamente, e não verificar se há toques. Esse mecanismo específico do fornecedor permite que o controlador de toque desambiguar se deseja verificar se há entrada do usuário ou não no estado SLEEP/Armed para ativação de acordo com a figura abaixo.

Ativar transições de energia de toque

Observação

Este diagrama é para HIDI2C. Para obter mais informações sobre transições de energia, incluindo para HIDUSB e HIDSPI, consulte Touch Power Management.

Por fim, se desejar que um dispositivo tenha comportamentos diferentes de Wake-on-Touch com base na postura, é recomendável ativar o dispositivo quando ocorrer uma alteração de postura. As alterações de postura são uma indicação clara da entrada do usuário e isso também garante o arming/desarmes adequado do controlador de toque quando o dispositivo entra em uma nova postura.

Estado padrão para configuração do usuário wake-on-touch

O padrão para a configuração Wake-On-Touch é ON para sistemas compatíveis, mas um OEM pode adicionar um valor do Registro especificando que o padrão deve ser OFF. A alteração deve ser aplicada ao usuário padrão e será captada por cada novo usuário no dispositivo. Depois que o usuário altera a configuração, sua preferência sempre tem precedência, independentemente do padrão inicial do OEM.

Para fazer isso, crie a chave do Registro abaixo e armazene-a no NTUSER de Usuário Padrão. DAT:

Local do Registro: \HKEY_CURRENT_USER\Software\Microsoft\Input\WakeableInputTypes

Chave do Registro:

Nome Tipo Valor
Touch REG_DWORD 0 = Desabilitado, 1 = Habilitado

Requisitos para habilitar o Wake-on-Touch

Requisitos gerais

Geralmente, é recomendável que o dispositivo indique suporte para ativação do estado D2, para que, quando o sistema operacional precisar armar o dispositivo para ativar o toque, ele possa colocá-lo em D2. Se o sistema operacional não precisar armar o dispositivo para ativar o toque, ele colocará o dispositivo em D3. Isso permitirá que o dispositivo faça a transição para D3Cold para maior economia de energia. Isso pode ser feito seguindo as diretrizes relacionadas _S0W fornecidas na seção ACPI abaixo. As otimizações de energia iniciadas pelo dispositivo (que não são iniciadas pelo host ou pelo sistema operacional) devem ser feitas de maneira transparente para o sistema operacional.

Observe que quando o sistema operacional (ou host) coloca o dispositivo em um estado que habilita o "Wake-On-Touch", conforme descrito nesta documentação, cabe ao controlador de toque configurar-se para ativar um gesto de toque apropriado, com base nos requisitos de OEM e/ou fator forma do dispositivo. Por exemplo, um dispositivo com uma tela sensível ao toque que não é ocluído por uma tampa pode precisar garantir que ele não cause velórios espúrios.

Se um dispositivo de toque HID tiver outras coleções HID de nível superior, como coleções definidas pelo fornecedor, às quais o software OEM poderá abrir identificadores de arquivo para executar E/Ss do dispositivo, fechar os identificadores de arquivo assim que o software OEM concluir essas E/Ss de dispositivo poderá reduzir o consumo de energia do dispositivo HID. Observe que Windows 11 22H2 foi atualizado para gerenciar o estado de energia de um dispositivo Wake-on-Touch com mais eficiência, desligando-o sem permitir a ativação do modo de espera moderno, desde que Wake-on-Touch não seja necessário, por exemplo, quando a configuração "Tocar na tela para ativar" estiver Desativada ou quando a tampa do laptop estiver fechada. Para esse software OEM, o efeito colateral é que as entradas dessas coleções HID de nível superior também serão suprimidas durante o modo de espera moderno.

Requisitos de firmware do ACPI

Se o dispositivo do controlador de toque for definido no ACPI, ele deverá implementar o seguinte para relatar seus recursos e recursos de ativação.

  1. _S0W método, que retorna o estado de energia do dispositivo mais baixo sob o qual o dispositivo pode sinalizar a ativação.
  2. _CRS método, que define a interrupção com capacidade de ativação.
  3. _PRx métodos, que definem os recursos de energia associados a cada estado D com suporte.

Para obter mais informações, consulte a documentação de interrupções com capacidade de ativação (_CRS).

Requisitos de driver para habilitar o Wake-on-Touch

Para obter detalhes sobre como implementar o Wake-on-Touch para drivers de caixa de entrada (HIDI2C, HIDSPI e HIDUSB) ou drivers personalizados, consulte a respectiva documentação abaixo:

Tópico Descrição

Habilitando o wake-on-touch com drivers de caixa de entrada

Este tópico discute como implementar a Ativação por Toque com os drivers HIDI2C, HIDSPI ou HIDUSB da caixa de entrada.

Habilitando o wake-on-touch com mini drivers HID personalizados

Este tópico discute como implementar o Wake-on-Touch com mini drivers HID personalizados.

Glossário

Termo/Abreviação Definição
HID Dispositivos de interface humana.
HIDClass O driver de classe de caixa de entrada do Windows para HID.
HID Mini Driver Um driver de transporte hid do Windows que se associa a e funciona com HIDClass. Para obter mais informações, consulte os Minidrivers e a documentação do driver de classe HID .
Estado D, D0, D2, D3hot, D3Cold Os estados de energia do dispositivo definidos pela especificação acpi.
Dx Um dos estados D. O número "x" real não é especificado por este documento.
DeviceNotInUse Uma condição que ocorre quando o sistema operacional se move para um estado sob o qual ele não está consumindo entrada (toque). Um exemplo é o fechamento da tampa do laptop.
DeviceInUse Ao contrário de DeviceNotInUse, é uma condição que ocorre quando o sistema operacional se move para um estado sob o qual ele pode consumir entrada (toque). Um exemplo é que a tampa do laptop é aberta.
Monitor, Tela e Exibição Às vezes, eles são usados de forma intercambiável.
MonitorOn Uma condição que ocorre quando o sistema operacional ativa o monitor primário.
MonitorOff Oposto a MonitorOn. É uma condição que ocorre quando o sistema operacional desativa o monitor primário.
IRP Pacote de solicitação de E/S. Para obter mais informações, consulte a documentação de pacotes de solicitação de E/S .
D-IRP Um IRP que solicita a definição do estado de energia do dispositivo.
HIDI2C O mini driver HID da caixa de entrada do Windows HIDI2C.SYS, que implementa a camada de transporte I2C para dispositivos HID de acordo com a especificação HIDI2C.
HIDSPI O mini driver HID da caixa de entrada do Windows HIDSPI.SYS, que implementa a camada de transporte SPI para dispositivos HID de acordo com a especificação HIDSPI.
HIDUSB O mini driver HID da caixa de entrada do Windows HIDUSB.SYS, que implementa a camada de transporte USB para dispositivos HID de acordo com as especificações HID e USB.
ACPI Firmware Os códigos ACPI implementados no BIOS (firmware do sistema).
Extensão INF Um novo tipo de arquivos INF do Windows no Windows 10. Para obter mais informações, consulte a documentação Usando um arquivo INF de extensão .