Pular para o conteúdo

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.
morvan bliasby morvan
Hits: 17.115 Categoria: Linux Subcategoria: Hardware
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Introdução

É notória a pouca atenção (leia-se respeito ao consumidor) dos fabricantes de hardware em geral, no que tange a usuários GNU/Linux. Comprar um dispositivo compatível não é fácil, instalar e rodar "fora da caixa", uma quimera, mormente no caso de hardware novo.

Um exemplo triste é a Realtek. Seus produtos (e de quem os licencia) são, para ser gentil, avessos ao Sistema do Tux! Por outro lado, temos a Atheros, historicamente amigável com o GNU-Linux. Tenho uma Rede Local com seu WiFi Banda Dupla (2 | 5 Ghz). Meu smartphone idem, pois a diferença no tempo gasto com atualizações e uso da Rede Local compensa, e muito. Para ilustrar, tenho vários adaptadores em casa, de 2,4 e de 5 Ghz (AC), e os da citada acessam ambas as faixas de frequência sem qualquer problema.

Pois bem. Adquiri, nesses sítios de venda de bugigangas, um adaptador "Free Driver, Dual Band", alegadamente um Realtek RTL8811AC. Veremos como o vendedor, sem qualquer má vontade, se equivocou. O chipset é outro (RTL8821) e daí advêm as dificuldades na compilação e no reconhecimento do "device". Mais detalhes no decorrer do artigo.

Veja imagem:
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
Por "Free Driver" entenda-se que não acompanha CD. O driver, para Windows, vem embutido num disco virtual, no próprio dispositivo USB; esse dispositivo de mídia é um pé no sac., digo, uma enxaqueca e veremos como resolver, pois o dispositivo de Rede WiFi só subirá, em qualquer S. O., quando o ejetarmos, por terem IdProducts diferentes. O vendedor deixa muito claro não haver suporte para GNU-Linux. Veja imagem:
Como se pode ver, na imagem acima, o vendedor não induz o usuário GNU-Linux a comprá-lo (nem ao Mac user!) e a identificação do Chipset, por estar equivocada, faz com que não consigamos subir a interface. Sequer o "device" é criado, pois acabamos compilando o driver errado.

Então, por que comprei um item que não dava suporte para meu Sistema Operacional? Bom, eu gosto de desafios. Vamos ao trabalho, então.

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
   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

Usando o seu módulo IRDA no Linux

Recuperando seus dados com o "truque da geladeira"

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

Dominando o BrOffice.org Writer com o uso de estilos

Dominando o BrOffice.org: Tabelas no Writer; Uso do Navegador de Objetos

Atualização do Firmware da BIOS do Dell Inspiron via Linux

Tim-Web - Insigne Momentum 5.0

Configurando HD via porta USB no Linux

Instalando Ubuntu Touch no seu celular (Linux de bolso)

Ajustando o desempenho de discos rígidos

#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.

#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

Entre na sua conta para comentar.