Pular para o conteúdo

Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel para iniciar automaticamente?

Responder tópico
  • Denunciar
  • Indicar

1. Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel para iniciar automaticamente?

Enviado em 02/04/2024 - 19:21h

Pessoal, estou querendo fazer esse módulo abaixo inciar automaticamente com meu Ubuntu 23.10. Se eu der o comando
sudo insmod acer-wmi-battery.ko 
que o autor da página pediu funciona, mas na próxima inicialização já não funciona e preciso dar o comando de novo.

Como faço pra tornar permanente a inicialização deste módulo com meu sistema?

Link do módulo: https://github.com/frederik-h/acer-wmi-battery

Desde já agradeço a ajuda. Deus os abençoe!

Responder tópico

2. Re: Como adicionar um módulo ao kernel para iniciar automaticamente?

Enviado em 02/04/2024 - 20:49h

Tente isso aqui, no Debian podemos editar o arquivo /etc/modules - tem que ver aí no Fedora onde é, acho que é /etc/modules-load.d/modules.conf, mude de acordo com a situação:
sudo nano /etc/modules

e colocar dentro dele o comando:
modprobe acer-wmi-battery

Salve a mudança no arquivo com CTRL mais a letra O e CTRL mais a letra X para fechar, reinicie a máquina e veja se funcionou.

>>> NÃO visite este canal, o cara pensa que sabe alguma coisa! <<<
https://www.youtube.com/channel/UCRgokKtNlttdmg2RJEa2VYw

3. Re: Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel para iniciar automaticamente?

Enviado em 02/04/2024 - 21:23h


Tocagano escreveu:

Tente isso aqui, no Debian podemos editar o arquivo /etc/modules - tem que ver aí no Fedora onde é, acho que é /etc/modules-load.d/modules.conf, mude de acordo com a situação:
sudo nano /etc/modules

e colocar dentro dele o comando:
modprobe acer-wmi-battery

Salve a mudança no arquivo com CTRL mais a letra O e CTRL mais a letra X para fechar, reinicie a máquina e veja se funcionou.

>>> NÃO visite este canal, o cara pensa que sabe alguma coisa! <<<
https://www.youtube.com/channel/UCRgokKtNlttdmg2RJEa2VYw


Amigo, obrigado por responder. Quando eu dou somente o comando
modprobe acer-wmi-battery 
recebo esse resultado:

modprobe: FATAL: Module custom_module not found in directory /lib/modules/6.5.0-26-generic 


Eu li que precisava copiar o arquivo para essa pasta, e copiei, mas mesmo assim ainda tenho esse erro. Saberia como fazer?

Tem alguma pasta que eu coloque o arquivo e quando receber uma atualização de kernel não precise recolocar e refazer o procedimento?

Creia no Senhor Jesus Cristo e serás salvo!

4. Re: Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel para iniciar automaticamente?

Enviado em 03/04/2024 - 07:56h

Você pode criar um script mas não tenho como testar aqui, no Terminal procure o arquivo no seu sistema com o comando:

find / 2>/dev/null | grep -i acer-wmi-battery.ko


Depois crie um arquivo, por exemplo, acer:

sudo nano /usr/local/bin/acer


Coloque dentro dele:

#!/bin/bash
/sbin/insmod /caminho/completo/para/acer-wmi-battery.ko


onde "/caminho/completo/para/acer-wmi-battery.ko" é o caminho onde está o arquivo acer-wmi-battery que você deve ter encontrado com o comando "find". Tente com e sem o ".ko" do final do arquivo nesse caminho. Salve o arquivo criado apertando CTRL mais a tecla O e feche o arquivo apertando CTRL mais a tecla X. Ainda no Terminal, digite:

sudo chmod +x /usr/local/bin/acer


e coloque esse script na inicialização do sistema e veja se funciona.

>>> NÃO visite este canal, o cara pensa que sabe alguma coisa! <<<
https://www.youtube.com/channel/UCRgokKtNlttdmg2RJEa2VYw

5. Re: Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel para iniciar automaticamente?

Enviado em 08/04/2024 - 13:34h


Tocagano escreveu:

Você pode criar um script mas não tenho como testar aqui, no Terminal procure o arquivo no seu sistema com o comando:

find / 2>/dev/null | grep -i acer-wmi-battery.ko


Depois crie um arquivo, por exemplo, acer:

sudo nano /usr/local/bin/acer


Coloque dentro dele:

#!/bin/bash
/sbin/insmod /caminho/completo/para/acer-wmi-battery.ko


onde "/caminho/completo/para/acer-wmi-battery.ko" é o caminho onde está o arquivo acer-wmi-battery que você deve ter encontrado com o comando "find". Tente com e sem o ".ko" do final do arquivo nesse caminho. Salve o arquivo criado apertando CTRL mais a tecla O e feche o arquivo apertando CTRL mais a tecla X. Ainda no Terminal, digite:

sudo chmod +x /usr/local/bin/acer


e coloque esse script na inicialização do sistema e veja se funciona.

>>> NÃO visite este canal, o cara pensa que sabe alguma coisa! <<<
https://www.youtube.com/channel/UCRgokKtNlttdmg2RJEa2VYw


Eu fiz o procedimento com e sem o .ko, não funcionou. Tentei fazer o comando do script manualmente e recebo essa resposta:

sudo /sbin/insmod /lib/modules/acer-wmi-battery
[sudo] senha para raulgrangeiro:
insmod: ERROR: could not load module /lib/modules/acer-wmi-battery: No such file or directory


e também:

sudo /sbin/insmod /lib/modules/acer-wmi-battery
[sudo] senha para raulgrangeiro:
insmod: ERROR: could not load module /lib/modules/acer-wmi-battery: No such file or directory


Saberia, por gentileza, como resolver isso?

Creia no Senhor Jesus Cristo e serás salvo!

6. Re: Como adicionar um módulo ao kernel para iniciar automaticamente?

Enviado em 09/04/2024 - 07:09h

Tocagano escreveu:

Você pode criar um script mas não tenho como testar aqui, no Terminal procure o arquivo no seu sistema com o comando:

find / 2>/dev/null | grep -i acer-wmi-battery.ko


Depois crie um arquivo, por exemplo, acer:

sudo nano /usr/local/bin/acer


Coloque dentro dele:

#!/bin/bash
/sbin/insmod /caminho/completo/para/acer-wmi-battery.ko


onde "/caminho/completo/para/acer-wmi-battery.ko" é o caminho onde está o arquivo acer-wmi-battery que você deve ter encontrado com o comando "find". Tente com e sem o ".ko" do final do arquivo nesse caminho. Salve o arquivo criado apertando CTRL mais a tecla O e feche o arquivo apertando CTRL mais a tecla X. Ainda no Terminal, digite:

sudo chmod +x /usr/local/bin/acer


e coloque esse script na inicialização do sistema e veja se funciona.

>>> NÃO visite este canal, o cara pensa que sabe alguma coisa! <<<
https://www.youtube.com/channel/UCRgokKtNlttdmg2RJEa2VYw


Nossa cara que janelagem, o correto seria configurar o modprobe e criar a entrada para bootar o .ko junto...

7. Re: Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel para iniciar automaticamente?

Enviado em 09/04/2024 - 07:43h

@GriffoDeRuppell, acompanhe o tópico desde o início e leia-o com mais atenção. Seria mais produtivo aos demais que, em vez de dizer "Nossa cara que janelagem, o correto seria configurar o modprobe e criar a entrada para bootar o .ko junto..." dissesse como fazer isso (como já foi feito), não acha?

>>> NÃO visite este canal, o cara pensa que sabe alguma coisa! <<<
https://www.youtube.com/channel/UCRgokKtNlttdmg2RJEa2VYw

8. Re: Como adicionar um módulo ao kernel para iniciar automaticamente?

Enviado em 09/04/2024 - 12:14h

Pessoal, eu descobri um problema com o módulo, ele precisa ser recompilado a cada nova versão do kernel, então nem tem como fazê-lo iniciar permanentemente e não ter mais que mexer. Dessa forma pesquisei muito sobre o modprobe pra saber como fazer isso, e consegui, graças a Deus. Adicionalmente criei um script que vai recompilar isso para mim quando eu tiver uma atualização de kernel deixando o serviço muito mais simples. Vou descrever em uma próxima mensagem como fazer isso. Eu criei um documento explicando tudo passo a passo para mim mesmo para não ter a raiva de pesquisar tudo de novo no futuro kkk

Vou deixar tudo registrado pra ajudar outros que precisem da mesma coisa.


Creia no Senhor Jesus Cristo e serás salvo!

9. Re: Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel para iniciar automaticame

Enviado em 09/04/2024 - 12:16h

DOCUMENTAÇÃO PARA FUNÇÃO DE CARREGAMENTO SAUDÁVEL DA BATERIA DO NOTEBOOK ACER ASPIRE 5

Uma extensão pode ser utilizada no Gnome Shell para adicionar a função de alternância entre o carregamento completo e o carregamento saudável, que limita o carregamento a 80% da bateria no Acer Aspire 5, função essa disponível no Windows através do Acer Sense, mas que nativamente não está disponível para Linux. A extensão pode ser encontrada no seguinte link:

https://extensions.gnome.org/extension/5724/battery-health-charging/

Esta extensão tem um site próprio no Github com algumas documentações, que podem ser encontradas no seguinte link:

https://github.com/maniacx/Battery-Health-Charging?tab=readme-ov-file

Ao instalar a extensão fui informado que faltava uma dependência para funcionar e redirecionado para o seguinte link específico para o notebook Acer:

https://maniacx.github.io/Battery-Health-Charging/device-compatibility/acer

Lendo este material percebi que seria necessário instalar o seguinte módulo no kernel do Linux para que a extensão pudesse funcionar normalmente:

https://github.com/frederik-h/acer-wmi-battery

O site indica que a instalação se dá da seguinte forma no Ubuntu e Debian, através do terminal:

$ sudo apt install build-essential linux-headers-$(uname -r) git  


$ git clone https://github.com/frederik-h/acer-wmi-battery.git  


$ cd acer-wmi-battery 


$ make 


Por experiência descobriu-se que se o arquivo baixado com os comando acima não estiver no diretório /home/<nome_do_usuario> não é possível compilar e obter o arquivo de módulo, portanto deixe o arquivo no diretório que os comando acima baixam e os compile exatamente como é ensinado: apenas dando um comando atrás do outro.

Por fim obtém-se o arquivo acer-wmi-battery.ko em meio a vários, mas esse único arquivo é o que será usado.

______________________________________________________________________
A partir daqui os procedimentos seguirão o exposto na seção Configuration of modprobe do seguinte link:

https://www.baeldung.com/linux/modprobe-load-module-configuration
_______________________________________________________________
Copie o arquivo acer-wmi-battery.ko para a seguinte pasta:

/lib/modules/<numero_do_seu_kernel>

Em que <numero_do_seu_kernel> é a numeração encontrada pelo comando uname –r (haverá uma pasta com esse nome dentro da pasta modules.

Para fazer isso será necessário ter privilégios de administrador, portanto:

$ sudo <seu_explorador_de_arquivos> ~/acer-wmi-battery 


Em que <seu_explorador_de_arquivos> é o nome do seu explorador, que no meu caso é o Nautilus, ficando o comando:

$ sudo nautilus ~/acer-wmi-battery

Veja que há aqui dentro o arquivo acer-wmi-battery.ko citado inicialmente. Copie-o para a pasta citada: /lib/modules/<numero_do_seu_kernel>.

Após esses procedimentos é necesário fazer o módulo ser carregado, e para isso será utilizado o comando modprobe. Faça o seguinte:

$ sudo modprobe acer_wmi_battery 


Caso haja o erro modprobe: FATAL: Module custom_module not found in directory /lib/modules/<numero_do_seu_kernel> será necessário um outro procedimento.

O módulo mesmo estando na pasta correta ainda não foi visualizado pelo modprobe, portanto use o seguinte comando para atualizar a lista de módulos disponíveis e assim pode usar o comando para subir o módulo no kernel:

$ sudo depmod 


Esse comando gera uma lista de dependências entre os módulos na pasta onde copiamos o arquivo de módulo que estamos instalando, e escreve a lista gerada em:

/lib/modules/`uname -r`/modules.dep

Em que ‘uname –r’ é a pasta com o número da sua versão de kernel.

Dessa forma agora volte à parte do comando modprobe:

$ sudo modprobe acer_wmi_battery 


Agora deve ter dado certo, verifique da seguinte forma:

$ lsmod | grep acer_wmi_battery 


Caso esse módulo apareça significa que ele já foi carregado.

Agora precisamos fazer esse módulo iniciar com o sistema, pra isso crie um arquivo de texto com o nome my_modules.conf na seguinte pasta:

/etc/modules-load.d/

Para isso será preciso ter privilégios de administrador com o editor de texto, então use o seguinte comando:

$ sudo <nome_do_seu_editor> 


Em que <nome_do_seu_editor> é aquele que você usa.

No meu caso uso o Editor do Gnome, portanto o comando fica:

$ sudo gnome-text-editor

Então crie o arquivo dito na pasta especificada anteriormente e coloque o seguinte nome dentro do arquivo:

acer_wmi_battery

Salve o arquivo e reinicie o computador, tudo deve estar funcionando agora e a extensão de saúde da bateria ativa.



Creia no Senhor Jesus Cristo e serás salvo!

10. Re: Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel para iniciar automaticame

Enviado em 09/04/2024 - 12:18h

E agora por fim o script para não ter a trabalheira de recompilar isso manualmente a cada atualização do kernel:

#!/bin/bash

# Script criado para automatizar procedimento de instalação de
# módulo de saúde de bateria de notebook Acer no Kernel Linux
# quando uma nova versão for instalada.

git clone https://github.com/frederik-h/acer-wmi-battery.git /home/raulgrangeiro/acer-wmi-battery

cd /home/<seu_usuario>/acer-wmi-battery

make

cp /home/<seu_usuario>/acer-wmi-battery/acer-wmi-battery.ko /lib/modules/$(uname -r)

depmod

modprobe acer_wmi_battery

rm -rf /home/<seu_usuario>/acer-wmi-battery


Lembrando que precisa executar ele como super usuário:

$ sudo ./script.sh 


O procedimento antes desse tem que ser feito completo uma única vez, e depois, com atualizações de kernel, use o script.

Creia no Senhor Jesus Cristo e serás salvo!

11. Re: Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel para iniciar automaticame

Enviado em 09/04/2024 - 20:26h

Ve se vc gosta assim:
#!/bin/bash

# Script criado para automatizar procedimento de instalação de
# módulo de saúde de bateria de notebook Acer no Kernel Linux
# quando uma nova versão for instalada.

## Debugação
set -e -u

#________________________________________________
## Configurações
driver_battery="/tmp/acer-wmi-battery"
cpu_cores="$(cat /proc/cpuinfo | grep "physical id" | wc -l)"
#________________________________________________

[[ "$(id -u)" == "0" ]] && echo "Você é root!" || echo "Você não é root, execute como root!"; exit 1

[[ ! -d "${driver_battery}" ]] && mkdir ${driver_battery}

cd "${driver_battery}"

git clone https://github.com/frederik-h/acer-wmi-battery.git

make -j${cpu_cores}

cp "${driver_battery}/acer-wmi-battery.ko" "/lib/modules/$(uname -r)"

depmod

modprobe acer_wmi_battery

[[ -d "${driver_battery}" ]] && rm -r -d "${driver_battery}"

12. Re: Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel para iniciar automaticamente?

Enviado em 10/04/2024 - 11:32h


aguamole escreveu:

Ve se vc gosta assim:
#!/bin/bash

# Script criado para automatizar procedimento de instalação de
# módulo de saúde de bateria de notebook Acer no Kernel Linux
# quando uma nova versão for instalada.

## Debugação
set -e -u

#________________________________________________
## Configurações
driver_battery="/tmp/acer-wmi-battery"
cpu_cores="$(cat /proc/cpuinfo | grep "physical id" | wc -l)"
#________________________________________________

[[ "$(id -u)" == "0" ]] && echo "Você é root!" || echo "Você não é root, execute como root!"; exit 1

[[ ! -d "${driver_battery}" ]] && mkdir ${driver_battery}

cd "${driver_battery}"

git clone https://github.com/frederik-h/acer-wmi-battery.git

make -j${cpu_cores}

cp "${driver_battery}/acer-wmi-battery.ko" "/lib/modules/$(uname -r)"

depmod

modprobe acer_wmi_battery

[[ -d "${driver_battery}" ]] && rm -r -d "${driver_battery}"


Bom dia, amigo. Por gentileza, o que a parte de debugação e configurações está fazendo exatamente? Não entendi essa parte.

Creia no Senhor Jesus Cristo e serás salvo!

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder