Conectando Toradex Colibri i.MX7 com WiFi

Confira como conectar a placa Toradex Colibri i.MX7 com WiFi, usando um adaptador WiFi USB, numa distro Linux com Yocto Project para i.MX7.
Toradex Colibri i.MX7 com WiFi

Introdução

Neste artigo será abordada a instalação de um adaptador WiFi USB, configuração da rede wireless e o serviço para conectar na inicialização, como base será utilizada a Distribuição Linux do artigo Criando uma Distribuição Linux com Yocto Project para Toradex Colibri i.MX7, porém a maioria dos comandos é de fácil instalação em outras Distribuições, caso não a possua.

Hardwares

MóduloToradex Colibri i.MX7D 512M v1.1C
BaseBoardAster v1.1B
PeriféricoAdaptador USB Wireless 802.11b/g/n Edimax EW-7811Un

Softwares

Sistema OperacionalGNU Linux Angstrom v2018.06
Kernel4.1.44-2.7.4
iw4.14
wpasupplicantv2.6
systemd237

A image gerada no artigo Criando uma Distribuição Linux com Yocto Project para Toradex Colibri i.MX7 já possui o iw e wpasupplicant instalados. Caso a distribuição que esteja utilizando não os possua, pode instalar com apt, rpm ou opkg, exemplo com apt:

Instalando adaptador wireless

Conectando o adaptador wireless na USB, logo em seguida podemos verificar que o kernel identificou e carregou o módulo do referido driver, analisando com “dmesg” e “lsusb”.

Listando as interfaces de rede, pode-se visualizar somente as interfaces eth0 e lo:

Para não ter que reiniciar, pode-se subir a interface manualmente:

Verificando novamente:

Configurando interface e rede wireless

Próxima etapa, configurar o systemd com suporte ao nosso dispositivo wlan0, criando o arquivo /etc/systemd/network/12-wlan.network com o conteúdo a seguir:

Após incluir este arquivo, vamos reiniciar a placa. Ao voltar vamos usar o comando “iwlist” para realizar uma varredura na rede wireless e obter apenas SSID, Canal, Frequência e SNR.

Pronto! O adaptador e a interface estão funcionando, neste momento será criado o arquivo com as informações para conectar a rede wireless, e neste caso será no SSID B2OpenAP.

Primeiro confirme se existe o diretório /etc/wpa_supplicant. Caso não exista, crie. A seguir vamos partir da hipótese que não existe o diretório. Ele será criado e na sequência gerado o arquivo com a configuração da rede wireless que se deseja conectar.

Note o uso do comando “wpa_passphrase” onde informamos o nome da rede (SSID) como sendo B2OpenAP e, logo a seguir, a senha da rede. É redirecionada a saída do comando para um arquivo criado em /etc/wpa_supplicant/wpa_supplicant-wlan0.conf. O importante nesta etapa é o correto nome da rede, a senha e o nome da interface no arquivo gerado, a nossa interface é wlan0.

Visualizando o arquivo gerado:

Antes de criar o serviço e reiniciar, pode-se validar se a configuração gerada está correta com o comando “wpa_supplicant” como a seguir:

Analisando a saída do comando, o dispositivo foi autenticado, associado e conectado. Agora o mesmo comando, porém utilizando uma senha incorreta:

Pode-se ver a linha referente ao WPA sobre falha na chave, é um excelente recurso para validar configuração antes de parametrizar os serviços e ficar reiniciando diversas vezes a placa.

Como última etapa, configurar o systemd para iniciar e conectar nossa wireless:

Para confirmar se deu certo, vamos passar o parâmetro status:

Outra forma é executar o comando “dmesg” e uma saída como a abaixo será exibida em caso de sucesso:

Reiniciando o módulo Colibri i.MX7 e verificando se ele se conecta na rede ao iniciar.

Dicas

O comando “wpa_passphrase” gera o básico, no entanto, existem diversos parâmetros que podem ser utilizados, alguns:

ctrl_interfaceNome do arquivo para se criar um UNIX domain socket para alguns programas userspace comunicarem, exemplo o wpa_cli
fast_reauth

EAP fast re-authentication – CISCO EAP-FAST

key_mgmt

WPA-PSK

WPA-EAP

IEEE8021X

NONE

pairwise

CCMP

TKIP

NONE

priorityConfiguração de prioridade quando se tem mais de uma rede configurada

Outras opções podem ser conferidas no manual do wpa_supplicant.conf.

Utilizando o comando “iwlist” é possível obter diversas informações sobre a rede, exemplo abaixo nossa rede B2OpenAP:

Boa diversão e até próxima!

Saiba mais

Amazon FreeRTOS, núcleos heterogêneos e os novos Apalis e Colibri iMX8

Embarcando ScadaBR com Yocto na Toradex Colibri i.MX6

CoM Toradex COLIBRI T20 e Carrier Board Iris

Referências

http://netbsd.gw.com/cgi-bin/man-cgi?wpa_supplicant.conf+5+NetBSD-current
https://www.cisco.com/c/pt_br/support/docs/wireless-mobility/eap-fast/200322-Understanding-EAP-FAST-and-Chaining-imp.html

Outros artigos da série

<< Gravando imagem customizada Linux na Toradex Colibri i.MX7Boot via microSD na Toradex Colibri i.MX7 >>

Proprietário da B2Open onde oferecemos consultoria, treinamentos e desenvolvimento em Sistemas Embarcados.
Entusiasta a filosofia open-source, mais de 10 anos de experiências em Linux e FOSS.
Em sistemas embarcado do firmware baremetal ao Linux Embedded, e há aproximadamente 8 anos desenvolvendo em (C, Python, Qt e muito Shell Script), além de profiling, hardening e tuning para targets com Linux Embarcado.
Graduado em Engenharia da Computação pela UNICEP com ênfase em robótica e sistemas embarcados.

Notificações
Notificar
guest
0 Comentários
Inline Feedbacks
View all comments

WEBINAR

Visão Computacional para a redução de erros em processos manuais

DATA: 23/09 ÀS 17:00 H