HMI
O aplicativo Qt é executado automaticamente durante a inicialização do Raspberry Pi 4

Quando criamos um aplicativo Qt - ou qualquer outro tipo de app - para o Raspberry Pi 4, gostaríamos que o mesmo se inicializasse imediatamente após a reinicialização do Raspberry. Geralmente, para isso, são usamos scripts de inicialização que podem ser inseridos em vários lugares. No entanto, é mais sensato fazer isso na configuração do systemd. Como ponto de partida, usei uma imagem raspbian-buster-lite e uma instalação do Qt conforme descrito no Qt do Raspberry Pi 4. O aplicativo Qt está localizado no diretório "/home/pi/application" e neste exemplo aparece com o nome de "application_one". ## Criando um arquivo .service Primeiro, é necessário criar um arquivo .service no diretório "/etc/systemd/system":

sudo nano application_one.service

Insira o seguinte comando aqui:

[Unit]
Description=Qt application autostart
After=graphical.target
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=pi
WorkingDirectory=/home/pi/application
ExecStart=/home/pi/application/application_one

[Install]
WantedBy=multi-user.target

Os comando são, na verdade, autoexplicativos. O aplicativo "application_one" (ExecStart=/home/pi/application/application_one) é iniciada com a conta de usuário "pi" (User=pi). A entrada "After=network-online.target" significa que a aplicação esperará até que a conexão de rede seja estabelecida antes de iniciá-la.

## Tornando o serviço conhecido ao sistema O sistema deve ser informado de que o novo serviço deve estar ativo:

sudo systemctl enable application_one.service

Em seguida, reinicie e o aplicativo, que deverá iniciar automaticamente.

## O aplicativo não reinicia? Se o aplicativo não for reiniciado automaticamente, você pode começar com

sudo systemctl status application_one.service

exibir o status e usar as informações para iniciar a solução dos problemas.