Ligar o Azure Sphere ao Wi-Fi
Pode configurar um dispositivo do Azure Sphere para ligar à Internet através de Wi-Fi através da CLI ou das Bibliotecas de Aplicações do SDK do Azure Sphere (Applibs).
Métodos de autenticação
São suportados os seguintes métodos de autenticação:
- WPA2
- EAP-TLS
- abrir (sem palavra-passe)
Configurar o Azure Sphere para Wi-Fi
Pode configurar o seu dispositivo do Azure Sphere para ligar a uma rede Wi-Fi a partir da linha de comandos (CLI) ou da sua aplicação com as Bibliotecas de Aplicações do SDK do Azure Sphere (Applibs).
Wi-Fi configuração com a CLI
Para gerir Wi-Fi configuração a partir da linha de comandos, utilize os comandos da CLI de wi-fi do dispositivo az sphere. Por exemplo, o comando adicionar wi-fi do dispositivo adiciona os detalhes de uma rede sem fios ao dispositivo.
az sphere device wifi add --ssid "New SSID" --psk "key \'value\' with quotes"
Para utilizar a rede Wi-Fi configurada, a interface de rede (wlan0) tem de estar ativa. Utilize o comando device network list-interfaces para determinar se a interface está ativa.
az sphere device network list-interfaces
Utilize o comando ativar a rede do dispositivo para ativá-lo, se necessário.
az sphere device network enable --interface wlan0
Para ativar a rede Wi-Fi configurada, utilize o comando ativar wi-fi do dispositivo .
az sphere device wifi enable --id <network id>
O tópico de Início Rápido Configurar Wi-Fi no seu dispositivo do Azure Sphere descreve como configurar Wi-Fi no seu dispositivo do Azure Sphere a partir da linha de comandos.
Em alternativa, se estiver a utilizar a autenticação EAP-TLS, veja Configurar a rede EAP-TLS a partir da CLI.
Wi-Fi configuração com o Applibs
Para configurar o Wi-Fi, a sua aplicação tem de utilizar a API wificonfig applibs.
Inclua este ficheiro de cabeçalho na sua aplicação:
#include <applibs/wificonfig.h>
O manifesto da aplicação tem de incluir a capacidade WifiConfig .
"Capabilities": {
"WifiConfig" : true
}
Para determinar se a interface de rede está ativa, utilize a função Networking_GetInterfaceConnectionStatus .
Networking_GetInterfaceConnectionStatus("wlan0", ¤tInterfaceStatus);
Para ativar a interface de rede, utilize a função Networking_SetInterfaceState .
Networking_SetInterfaceState("wlan0", true);
Nota
Se ambas as interfaces de rede (wlan0 e eth0) estiverem ativas e ligadas, a interface específica que o dispositivo utilizará para comunicação não é determinista. Se quiser controlar que interface de rede é utilizada a qualquer momento, a sua aplicação tem de utilizar a função Networking_SetInterfaceState() para ativar explicitamente a interface pretendida e a outra interface desativada. O exemplo de aplicação de alto nível do cliente DHCP demonstra, entre outras coisas, como alternar entre interfaces ao atribuir um valor que representa uma das duas interfaces a uma variável global.
Para ativar uma rede Wi-Fi configurada a partir da sua aplicação, utilize a função WifiConfig_SetNetworkEnabled .
WifiConfig_SetNetworkEnabled(<network id>, true);
Veja Configurar Wi-Fi no campo para obter sugestões para utilizar a API wificonfig applibs para permitir que os seus clientes configurem Wi-Fi para os seus produtos que incorporam o Azure Sphere.
O tópico Configurar a rede EAP-TLS numa aplicação descreve como configurar uma rede EAP-TLS numa aplicação de alto nível do Azure Sphere.
Exemplos
Esta secção contém ligações para aplicações de exemplo que demonstram a utilização da funcionalidade Wi-Fi na plataforma do Azure Sphere.
O exemplo de WiFi_HighLevelApp demonstra a configuração de redes Wi-Fi numa aplicação de alto nível.
A aplicação de alto nível do cliente DHCP demonstra como renovar ou libertar o endereço IP atual que o servidor DHCP da rede atribuiu ao dispositivo MT3620.
Nota
Os exemplos seguintes são da Galeria do Azure Sphere, que é uma coleção de exemplos de software e hardware não suportados da Microsoft. Para obter mais informações, veja Galeria do Azure Sphere.
O exemplo WifiConfigurationViaAppResource demonstra como configurar definições de Wi-Fi do dispositivo com um ficheiro de recursos JSON incorporado.
O exemplo WifiConfigurationViaNfc demonstra como configurar as definições de Wi-Fi do dispositivo com NFC.
O exemplo WifiConfigurationViaUart demonstra como configurar definições de Wi-Fi de dispositivos com UART.