Estou criando um dispositivo de IoT que servirá um aplicativo da Web por WiFi, que pode ser acessado para controlá-lo.
Gostaria de facilitar a configuração. Por exemplo, a maneira mais fácil que posso imaginar é a seguinte; tudo o que você precisa é de um telefone ou similar com recursos NFC. (Apenas hipoteticamente, porque isso pressupõe que a NFC etc. possa fazê-lo!)
- Usuário liga dispositivo IoT
- Usuário mantém telefone contra o NFC do dispositivo IoT
- Dispositivo IoT pede credenciais de WiFi
- O dispositivo IoT usa credenciais para conectar-se ao WiFi
- O dispositivo IoT direciona o navegador do telefone para o URL
Mas imediatamente vejo possíveis falhas:
- É improvável que o telefone queira dar credenciais; risco de segurança.
- É improvável que o telefone deseje navegar para o URL fornecido; risco de segurança.
- A NFC provavelmente não possui padrões definidos para esses tipos de operações; mesmo se os problemas de segurança forem atenuados (por exemplo, pedindo permissão do usuário), não acredito que teria a sorte de implementar isso. Portanto, um aplicativo teria que ser baixado para o telefone fazer tudo isso. O que significa que um aplicativo precisaria ser escrito para a Apple, outro para Android etc., além disso, no caso da Apple, teria que ser aprovado e, de qualquer forma, o usuário teria que procurá-lo, instalá-lo e aprender a usá-lo. - todos derrotando o propósito de ter uma interface web.
Obviamente, alguns usuários não terão telefones compatíveis com NFC, portanto, também teria que haver um método secundário.
A única percepção de uma solução que tenho vem de como minha câmera de segurança IP WiFi funciona. É necessário primeiro conectá-lo via cabo Ethernet a um roteador em uma sub-rede 192.168.1.X com um determinado IP reservado (por exemplo, minha câmera requer que 192.168.1.100 seja reservado ou gratuito). A partir daí, o usuário navega para http://192.168.1.100/ , efetua login com o nome de usuário e a senha fornecidos pela câmera e, a partir daí, configura a câmera com o nome e a senha do ponto de acesso WiFi.
Mas esse método tinha uma séria desvantagem: exigia que o roteador operasse na sub-rede 192.168.1.X. Mina operada em 192.168.0.X. Felizmente, consegui reconfigurá-lo. Mas meu novo roteador não tem essa capacidade !! Eu teria ficado preso. Além disso, o método acima é bastante doloroso; alguns passos.
Quais outras soluções foram implementadas para resolver o problema de configurar a conexão Wi-Fi de um dispositivo IoT e informar o usuário sobre seu endereço IP para que ele possa acessar sua interface da Web?
fonte
Respostas:
Alguns dispositivos suportam a conexão a um roteador por meio do Wi-Fi Protected Setup (WPS) , que é um recurso da maioria dos roteadores modernos para permitir que qualquer dispositivo se conecte à sua rede (com um período de tempo limitado para iniciar a conexão) depois que você pressione o botão WPS no roteador.
O botão tende a ficar assim:
( ArnoldReinhold , botão WPS do roteador Cisco , CC BY-SA 3.0 )
Ao fazer isso, você não precisa de nenhuma entrada no seu dispositivo IoT - basta pressionar o botão para conectar-se à sua rede e pronto !
Esse problema também é explorado em Conexão de dispositivos à Internet das Coisas com Wi-Fi . Junto com a ideia do WPS que sugeri inicialmente, eles têm algumas outras opções:
Esse método parece mais prático para qualquer rede em que você não consiga usar o WPS (talvez não haja suporte a WPS do seu roteador, ou preocupações com a segurança do WPS ). Obviamente, está bastante envolvido e exigiria mais conhecimento técnico, portanto não é o ideal.
Todos esses métodos que descrevi realmente funcionam apenas se você estiver no controle do design do dispositivo IoT - como consumidor, se o método de conexão do dispositivo não funcionar, é basicamente uma sorte - a única opção é retornar para a loja!
fonte
Um método usual é que o dispositivo IoT configure um ponto de acesso Wi-Fi temporário. Esse AP pode ser aberto ou a senha etc. pode até ser codificada em um QR Code. Tais códigos podem ser facilmente gerados por ferramentas como esta . Tente este:
A vantagem é que o usuário precisa fornecer a senha Wi-Fi real e os dois riscos de segurança são evitados, pois esse link não é nenhum URL , mas um descritor Wi-Fi padrão que os telefones geralmente suportam. Portanto, apenas esse ponto de acesso temporário não é muito seguro. Outra vantagem é que você só precisa de uma câmera no Smart Phone e eu arriscaria o palpite de que todo usuário que emprega IoT terá um telefone com uma câmera.
fonte
Fico feliz que você tenha recebido outras respostas, porque a NFC provavelmente é a tecnologia errada para isso.
Seu telefone lê tags NFC e age sobre elas; nenhuma solicitação para o telefone e nenhuma comunicação para lá e para cá.
Então, na melhor das hipóteses, você pode marcar o dispositivo - com um URL. Quando o telefone toca no dispositivo, ele é redirecionado para uma página da web que permite ao usuário configurar visualmente e instrui o dispositivo de maneira não visual na nova configuração.
Não é difícil, mas eu recomendaria uma das outras respostas. Estou postando isso apenas para oferecer outra opção para você e para os futuros pesquisadores desta pergunta.
De fato :-)
fonte
http://me.com/foo.php?device=X
etc. Você pode interceptar a leitura em um aplicativo Android e manipulá-la lá, sem precisar ir a um servidor, mas acho que minha solução funciona melhor .