Antecedentes dos Problemas
Atualmente, tenho um Raspberry Pi conectado a um painel LCD touchscreen executando o FullPageOS, que basicamente é o Debian que inicia com o Chromium em tela cheia para uma página da Web desejada. Eu tenho dois problemas embora:
- A página da Web não se estende totalmente:
Esse problema se estende ao console (não apenas ao cromo):
Se eu digitar o suficiente no console para onde estou mais abaixo na página do que em tela cheia, estou digitando fora da tela.
- A tela sensível ao toque está desligada
O ponto que eu toco não é onde o mouse vai. Esse erro é pior quanto mais longe do canto superior esquerdo da tela em que estou. Por exemplo, se eu tocar no canto superior esquerdo, o mouse praticamente corresponderá.
Resumo do problema
Isso me levou a acreditar que a resolução está desativada, pois as coisas não estão se encaixando na tela corretamente. A resolução nativa de acordo com o site em que o comprei é 1366x768
, mas parece que meu Raspberry Pi está sendo executado 1280x800
.
O que eu tentei
Eu tentei por meses para corrigir esse problema.
- Eu reinstalei totalmente o sistema operacional, que produz os mesmos resultados.
- Já tentei mudar a resolução no console:
DISPLAY=:0.0 randr
lista a tela comoHDMI-1
com o seguinte:
- Como ele lista apenas uma resolução para escolher, tentei adicionar manualmente uma nova resolução também, mas recebi o erro
Configure crtc 0 failed
. Veja abaixo:
Pergunta
Portanto, estou sem saber o que posso tentar. A resolução é meu problema como eu pensei que fosse? Em caso afirmativo, como faço para corrigi-lo, já que o que tentei não funcionou?
config.txt
# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details
# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1
# uncomment this if your display has a black border of unused pixels visible
# and your display can output without overscan
#disable_overscan=1
# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16
# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1366
#framebuffer_height=768
# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1
# uncomment to force a specific HDMI mode (this will force VGA)
hdmi_group=2
hdmi_mode=81
hdmi_cvt=1366 768 60 3
# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2
# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4
# uncomment for composite PAL
#sdtv_mode=2
#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800
# Uncomment some or all of these to enable the optional hardware interfaces
#dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on
# Uncomment this to enable the lirc-rpi module
#dtoverlay=lirc-rpi
# Additional overlays and parameters are documented /boot/overlays/README
# Enable audio (loads snd_bcm2835)
dtparam=audio=on
# enable raspicam
start_x=1
#gpu_mem=128
dtoverlay=vc4-kms-v3d
Você pode tentar forçar o Raspberry Pi a inicializar em uma resolução predefinida editando /boot/config.txt
Veja https://elinux.org/RPiconfig#Video
No seu caso, você pode tentar adicionar as seguintes linhas:
E reinicie.
hdmi_mode = 81 seleciona 1366 x 768 x 60 Hz.
Na página vinculada você pode encontrar algumas alternativas, por exemplo hdmi_mode = 86 seleciona 1366 x 768 com blanking reduzido e hdmi_mode = 39 seleciona 1360 x 768.
Certifique-se de ter um meio de restaurar o /boot/config.txt original se tiver algum problema.
Portanto, na minha tela, a parte da tela sensível ao toque estava definida para 1366 x 768, não importa o que eu tentasse configurá-la para ser diferente. É por isso que houve uma incompatibilidade de onde foi tocado versus onde o mouse foi.
Minha solução foi abandonar o FullPageOS e instalar a versão mais recente do Raspbian. Eu vi que minha resolução não estava no menu suspenso da GUI (Preferências > Configuração do Raspberry Pi > Definir resolução), então editei
/boot/config.txt
adicionando as linhas:Reiniciei e meus problemas de resolução e tela sensível ao toque desapareceram!
Isso deve significar que algo no FullPageOS estava impedindo minhas alterações no config.txt. Espero que esta solução ajude outras pessoas no futuro, mesmo que não seja a resposta aceita.