Como Instalar Seu Adaptador WiFi RTL8821 No GNU-Linux

Artigo demonstra os percalços na configuração de dispositivo WiFi 802.11AC (RTL8821CU), com nenhum suporte do fabricante. O dispositivo USB traz, inclusive, um disco com driver para Windows (apenas) o qual precisa ser ejetado para a interface de Rede WiFi "Double Band" emergir. Veremos como desabilitar o disco via UDEV e como compilar o driver a partir de colaboração de entusiastas GNU-Linux.

[ Hits: 15.164 ]

Por: morvan bliasby em 19/02/2019


Criando A Regra UDEV Para Desativação Automática Do Disco USB



De posse dos Id´s do fabricante e do dispositivo ( IdVendor 0BDA (Realtek) e IdProduct 1a2b (Disco)), usaremos o comando usb_modeswitch, como a seguir:

# Realtek 8821CU Wifi AC USB
ATTR{idVendor}=="0bda", ATTR{idProduct}=="1a2b", RUN+="/usr/sbin/usb_modeswitch -KQ -v 0bda -p 1a2b"

A regra é bem simples: Ela casa os dois Id´s: do fabricante do disco (produto) e repassa ambos ao comando usb_modeswitch, além dos parâmetros "-KQ" (Matar, Kill, Quiet, sem verbosidade).

Salvaremos essa regra no diretório /etc/udev/rules.d e daremos ao arquivo um nome sequencial, como rege a boa norma do UDEV. Por exemplo, nesse diretório eu tenho um arquivo chamado "70-persistent-names.rules"; então darei ao meu arquivo ".rules" (extensão obrigatória para o UDEV) o nome "72-rem-disk.rules". Observe que nem precisa recarregar o UDEV. No próximo evento "Add" ele já processa a regra e ejeta o disco. Aí o dispositivo "Rede de Alta Velocidade" emerge.

Um lembrete: mantenha a regra numa só linha; é norma do UDEV. Se necessário, use sequência de escape ( ), mas o UDEV processa uma linha contínua. Por isso.

Está se tornando comum esse tipo de dispositivos com dois IdProducts, principalmente em dispositivos BlueTooth; os fabricantes barateiam os produtos, pois estes não precisam mais portar mídia. Cabe ao S. O., ou a nós, que gostamos de escarafunchar, encontrar meio para tornar o device de disco inativo.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Primeiro problema: Desativar O Disco Virtual Com Drivers
   3. Criando A Regra UDEV Para Desativação Automática Do Disco USB
   4. Identificando (Corretamente) O Device E Compilando O Driver
Outros artigos deste autor

SL no Estado do Ceará: repensando a nossa forma de atuação e engajamento

Recuperando seus dados com o "truque da geladeira"

Configurando o seu teclado sem fio (e, via de regra, sem LEDs indicadores de estado) no Linux

Introdução ao gEDA - Suíte de eletrônica

Dominando o BrOffice.org: Pincel de Estilo, Sumários e Objetos OLE no Writer

Leitura recomendada

Utilizar cabo de dados USB LG MG105 (Vibecam) no Linux

Instalando placa de som de modo rápido, fácil e prático

Som multicanal (surround) no Linux

Ajustando o desempenho de discos rígidos

Atheros 5001X on Linux

  
Comentários
[1] Comentário enviado por sacioz em 20/02/2019 - 19:52h

Muito bom o artigo , um entusiasta de primeira .

[2] Comentário enviado por morvan em 20/02/2019 - 21:29h

Comentário enviado por sacioz em 20/02/2019 - 19:52h
Muito bom o artigo , um entusiasta de primeira .
Obrigado pelo retorno. É isso que nos faz sempre querer relatar nossas experiências.


[3] Comentário enviado por removido em 01/03/2019 - 21:56h

Poderia testar esse adaptador WiFi usando o kernel 5 para ver como fica o suporte na pratica.

https://sempreupdate.com.br/linus-torvalds-fala-sobre-o-linux-kernel-5-0/

kernel 5.0-rc8
Data: 2019-02-25
https://www.kernel.org/


[4] Comentário enviado por morvan em 02/03/2019 - 00:18h


Poderia testar esse adaptador WiFi usando o kernel 5 para ver como fica o suporte na pratica.
https://sempreupdate.com.br/linus-torvalds-fala-sobre-o-linux-kernel-5-0/
kernel 5.0-rc8
Data: 2019-02-25
https://www.kernel.org/

MeiaNoite, não testei na versão 5.X; esperando a própria, pois tem um grande acréscimo no que tange drivers, de Rede inclusive. Para quem usa o Fedora, como eu, pode tentar baixar já compilado, a partir do Repositório Koji, ou pode compilar por si, mesmo ainda nos RC´s.

[5] Comentário enviado por deathraiser em 10/03/2019 - 09:32h

SHOW!!!

[6] Comentário enviado por morvan em 10/03/2019 - 10:26h


deathraiser em 10/03/2019 - 09:32h

SHOW!!!

Estamos aqui para contribuir. Obrigado pelo retorno.

[7] Comentário enviado por jonathan_santos em 30/05/2019 - 09:52h

EXCELENTE MORVAM!! Me salvou....quer dizer...salvou o adaptador, que, caso eu fracassasse nesta última tentativa, iria para o lixo!! Funcionou até o led rsrsrsr!!! Exatamente como você disse no tópico, instalei milhares de drives e módulos, todos sem sucesso. Só para que fique registrado, para futuras consultas, eu precisei alterar uma linha de código de um arquivo do instalador. Ao inserir o comando "make", ele me retornava este erro: r/rtl8821CU_WiFi_linux_v5.4.1_28754.20180921_COEX20180712-3232/os_dep/linux/ioctl_cfg80211.c:691:2: error: implicit declaration of function ‘ktime_get_boottime_ts64’; did you mean ‘ktime_get_boottime’? [-Werror=implicit-function-declaration]
ktime_get_boottime_ts64(&ts); //get_monotonic_boottime(&ts);
Tudo o que fiz foi entrar no diretório /rtl8821CU_WiFi_linux_v5.4.1_28754.20180921_COEX20180712-3232/os_dep/linux/, fazer uma cópia backup do arquivo ioctl_cfg80211.c (vai que piora tudo, rsrsr!!) e alterar a linha 691: onde estava "ktime_get_boottime_ts64" ficou "ktime_get_boottime". Mais uma vez, agradeço a dedicação que você teve em explicar detalhadamente o processo. VLW!!!

[8] Comentário enviado por morvan em 30/05/2019 - 10:32h


... EXCELENTE MORVAM!! Me salvou....quer dizer...salvou o adaptador, que, caso eu fracassasse nesta última tentativa, iria para o lixo!! Funcionou até o led rsrsrsr!!! Exatamente como você disse no tópico, instalei milhares de drives e módulos, todos sem sucesso. Só para que fique registrado, para futuras consultas, ...


Tamos aqui para ajudar. Esse é o espírito SL. Abaixo, eu outro comentário, eu aponto uma URL que eu testei para o Kernel 5.1.x (quebrando compilação por problema com tipagem).

[9] Comentário enviado por morvan em 30/05/2019 - 10:35h

Bom dia. Com apassagem do 5.0 para o 5.1, este driver deu problema na compilação (dessa vez, problema com tipagem); eu estava mais à cata de uma solução do que propriamente fuçar, pois tempo era justo o que me falta[va]. Achei estte endereço; ele resolve problemas com headers, tipos e ainda com gerenciamento de energia do chipset:

https://github.com/brektrou/rtl8821CU

Deem uma testada, por favor.
Morvan, Usuário GNU-Linux #433640. Seja Legal; seja Livre. Use GNU-Linux.

[10] Comentário enviado por morvan em 30/07/2022 - 22:12h

Boa noite. O driver está "broken" no Linux 5.18. Pesquisei e localizei a página:

https://github.com/morrownr/8821cu-20210118

Compilou. Ainda testando.
Morvan, Usuário GNU-Linux #433640. Seja Legal; seja Livre. Use GNU-Linux.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts