Pular para o conteúdo principal

Grove - UART Wi-Fi

enter image description here

Grove - UART WiFi é um módulo transceptor serial com o onipresente SoC IoT ESP8266. Com pilha de protocolo TCP/IP integrada, este módulo permite que seu microcontrolador interaja com redes WiFi com apenas algumas linhas de código. Cada módulo ESP8266 vem pré-programado com um firmware de conjunto de comandos AT, o que significa que você pode enviar comandos de texto simples para controlar o dispositivo. O SoC possui mecanismos integrados de WEP, WPA/WPA2, TKIP, AES e WAPI, pode atuar como um ponto de acesso com DHCP, pode ingressar em redes WiFi existentes e possui endereços MAC e IP configuráveis.

Versão

ParâmetroV1.0V2.0
Data de Lançamento do Produto24 de junho de 201626 de março de 2018
Chip WiFiESP8266ESP8285
Tipo de AntenaExternaEmbarcada
LEDs3 LEDs - Energia/WiFi/Comando AT2 LEDs - Energia/WiFi
Botão1 Botão: Pressione rapidamente para Reset Pressione e segure para entrar no modo de boot UART2 Botões para essas duas funções

nota

Você pode perguntar qual é a diferença entre ESP8266 e ESP8285. O ESP8285 é uma versão atualizada do ESP8266, que adiciona uma flash interna de 1MB. Exceto por isso, eles são quase iguais.

Recursos

  • Conector Grove de 4 pinos (RX,TX,VCC,GND)
  • Protocolo 802.11 b/g/n (2.4GHz)
  • WiFi Direct (P2P), soft-AP
  • Suporta três modos: AP, STA e modo de coexistência AP+STA
  • Pilha de protocolo TCP/IP integrada
  • LwIP (lightweight IP)
  • CPU integrada de 32 bits de baixo consumo que pode ser reprogramada como um processador de aplicação
  • Sensor de temperatura integrado
  • Interface UART serial
  • Gerenciamento de QoS com múltiplas filas
  • Acorda e transmite pacotes em < 2ms
  • Blindagem metálica
  • Antena cerâmica embarcada
  • Chave de reset
dica

Para mais detalhes sobre módulos Grove, consulte o Sistema Grove

Visão Geral de Hardware

Aqui está o diagrama de blocos do módulo Grove - UART WiFi, que é composto pelas seguintes partes.

enter image description here

  • Grove - Usado para se conectar a um processador através de um soquete em uma placa base, como um Seeeduino ou Grove Base Shield.
  • Antena WiFi - Antena para ESP8266 (modelo de módulo)
  • Botão - Com múltiplas funções
    • Reset - Pressione e solte rapidamente.
    • Colocar o ESP8266 (modelo de módulo) em modo de boot UART - Pressione e segure o botão até o LED vermelho central acender.
  • Indicador de LED - Usado para indicar o status de funcionamento e para operações pelo usuário.
    • Esquerda - um LED azul indicador - Controlado pelo usuário através dos comandos "AT+LEDON" e "AT+LEDOFF".
    • Meio - um LED vermelho indicador - acende quando o WiFi está conectado ou entra no modo de boot UART
    • Direita - um LED verde indicador - acende quando energizado.

Especificações

  • Tensão de entrada: 3V / 5V
  • Taxa de baud: 115200
  • Baseado no SoC ESP8266 ESP-06
  • Firmware AT: esp_iot_sdk_v1.1.0 + modificações da Seeed:
    • 2 comandos AT adicionais para controlar o LED azul de Link.
    • Registrar o LED vermelho de WiFi no LED de estado de WiFi do ESP8266.
  • Conjunto de comandos AT
  • SDIO 1.1/2.0, SPI, UART
  • Cinco estados de energia: OFF, DEEP_SLEEP, SLEEP, WAKEUP e ON.
  • Consumo de energia em standby de < 1.0mW (DTIM=3)
  • Chave TR integrada, balun, LNA, amplificador de potência e rede de casamento
  • PLLs, reguladores, DCXO e unidades de gerenciamento de energia integrados
  • Potência de saída de +19,5dBm no modo 802.11b
  • Corrente de fuga em power down de <10uA
  • Aceleradores de hardware para CCMP (CBC-MAC, modo contador), TKIP (MIC, RC4), WAPI (SMS4), WEP (RC4), CRC
  • Driver WPA/WPA2 PSK e WPS
  • Agregação A-MPDU & A-MSDU e intervalo de guarda de 0,4ms
  • Dimensões: 25,43mm x 20,35mm

Tecnologia de ultrabaixo consumo

O ESP8266 foi projetado para alcançar um consumo de energia muito baixo com tecnologia de gerenciamento de energia patenteada que reduz funções não essenciais e regula os padrões de sono. Existem cinco estados de energia:

  • OFF
  • DEEP_SLEEP - o relógio em tempo real funciona, mas todas as outras partes do chip são desligadas
  • SLEEP - consome menos de 12uA com apenas o relógio em tempo real e o watchdog em execução. O chip acordará por MAC, host, RTC ou interrupção externa.
  • WAKEUP - o sistema está mudando de um estado de sono para ligado. O oscilador de cristal e o PLL são habilitados.
  • ON - consome menos de 1,0mW (DTIM = 3) ou 0,5mW (DTIM = 10).

O relógio em tempo real pode ser programado para acordar o ESP8266 dentro de um período de tempo especificado.

Quanto maior o período DTIM, mais tempo o dispositivo pode dormir e, portanto, mais energia o dispositivo pode potencialmente economizar.

Para atender aos requisitos de energia de aplicações móveis e eletrônicos vestíveis, para reduzir o consumo total de energia, a potência de saída do PA pode ser personalizada no firmware.

Ideias de Aplicação

  • Automação residencial
  • Redes de sensores
  • Redes em malha (mesh networking)
  • Eletrônicos vestíveis
  • Babá eletrônica
  • Câmera de rede
  • Controle industrial sem fio
  • Beacons WiFi
  • Tomada de energia inteligente
  • Aplicações com reconhecimento de localização

Primeiros Passos

Após esta seção, você pode fazer o Grove - UART WiFi funcionar com apenas alguns passos.

Brincar com Arduino

nota

Se esta é a primeira vez que você trabalha com Arduino, recomendamos fortemente que veja Começando com Arduino antes de começar.

Materiais necessários

Seeeduino LiteGrove-OLEDGrove-UART Wifi
enter image description hereenter image description here
Adquira agoraAdquira agoraAdquira agora
nota

Nota 1: Conecte o cabo USB suavemente, caso contrário você pode danificar a porta. Use o cabo USB com 4 fios internos, o cabo de 2 fios não consegue transferir dados. Se você não tiver certeza sobre o cabo que possui, você pode clicar aqui para comprar

Nota 2: Cada módulo Grove vem com um cabo Grove quando você compra. Caso você perca o cabo Grove, você pode clicar aqui para comprar

Hardware

  • Passo 1. Conecte o Grove-UART Wifi à porta SERIAL do Seeeduino Lite.

  • Passo 2. Conecte o Grove-OLED à porta I2C do Seeeduino Lite.

  • Passo 3. Conecte o Seeeduino Lite ao PC via um cabo Micro-USB.

Software

// test grove - uart wifi
// scan ap and display on Grove - OLED 0.96'
// Loovee @ 2015-7-28

#include <Wire.h>
#include <SeeedOLED.h>

char ap_buf[30][16];
int ap_cnt = 0;

void setup()
{
Serial1.begin(115200);

delay(3000);
Wire.begin();
SeeedOled.init(); // initialze SEEED OLED display

SeeedOled.clearDisplay(); // clear the screen and set start position to top left corner
SeeedOled.setNormalDisplay(); // Set display to normal mode (i.e non-inverse mode)
SeeedOled.setPageMode(); // Set addressing mode to Page Mode

}


void loop()
{
ap_cnt = 0;
SeeedOled.clearDisplay();
SeeedOled.setTextXY(3,0);
SeeedOled.putString("Wifi Scan...");

cmd_send("AT+CWLAP");
wait_result();

display_ap();
delay(5000);
}

// send command
void cmd_send(char *cmd)
{
if(NULL == cmd)return;
Serial1.println(cmd);
}


// wait result of ap scan
// +CWLAP:(3,"360WiFi-UZ",-81,"08:57:00:01:61:ec",1)
void wait_result()
{
while(1)
{
LOOP1:
char c1=0;
if(Serial1.available()>=2)
{
c1 = Serial1.read();
if(c1 == 'O' && 'K' == Serial1.read())return; // OK means over
}

if('('==c1)
{
while(Serial1.available()<3);
Serial1.read();
Serial1.read();
Serial1.read();

int d = 0;
while(1)
{
if(Serial1.available() && '"' == Serial1.read()); // find "
{
while(1)
{
if(Serial1.available())
{
char c = Serial1.read();
ap_buf[ap_cnt][d++] = c;
if(c == '"' || d==16)
{
ap_buf[ap_cnt][d-1] = '\0';
ap_cnt++;
goto LOOP1;
}
}
}
}
}
}
}
}

// display
void display_ap()
{
char strtmp[16];
sprintf(strtmp, "get %d ap", ap_cnt);

SeeedOled.clearDisplay(); // clear
SeeedOled.setTextXY(3,3); // Set the cursor to Xth Page, Yth Column
SeeedOled.putString(strtmp); // Print the String

delay(2000);

int cnt = ap_cnt;
int offset = 0;
while(1)
{
SeeedOled.clearDisplay();
if(cnt>=8)
{
for(int i=0; i<8; i++)
{
SeeedOled.setTextXY(i,0); // Set the cursor to Xth Page, Yth Column
SeeedOled.putString(ap_buf[8*offset+i]); // Print the String
}
cnt-=8;
offset++;
}
else
{
for(int i=0; i<cnt; i++)
{
SeeedOled.setTextXY(i,0); // Set the cursor to Xth Page, Yth Column
SeeedOled.putString(ap_buf[8*offset+i]); // Print the String
}

return;
}

delay(2000);
}
}

  • Etapa 4. Faça upload da demonstração. Se você não sabe como fazer upload do código, consulte How to upload code.

Então você verá o OLED mostrar os pontos de acesso WiFi ao seu redor.

enter image description here

Atualização de firmware

atenção

Este firmware oferece suporte apenas à V1; se você gravar este firmware no Grove UART WIFI V2, o seu módulo será inutilizado.

Nossa placa de módulo já vem com um firmware gravado com as configurações de fábrica; você pode gravar outro firmware nela se quiser. Clique aqui para baixar o código‑fonte do firmware de configuração de fábrica.

Materiais necessários

  • É necessário um conversor USB para serial para atualização de firmware; você pode escolher o UartSBee V5 se não souber onde conseguir um.
  • É necessário um cabo conversor Grove‑Jump, que também oferecemos para venda.
  • É necessário um cabo micro USB (tipo A para tipo C).

Hardware

Etapa 1. Conecte uma extremidade do cabo conversor Grove‑Jump ao soquete Grove no Grove - Uart Wifi e conecte a outra extremidade ao UartSBee V5, como mostrado a seguir.

Etapa 2. Em seguida, conecte os cabos como na figura a seguir:

enter image description here

Software

Etapa 1. Baixe a ferramenta de gravação e o firmware

Etapa 2. Pressione e segure o botão até o LED vermelho acender, o que significa que ele está pronto para gravar o firmware.

Etapa 3. Inicie os arquivos executáveis na pasta FLASH DOWNLOAD TOOLS (clique duas vezes) para fazer as configurações conforme os passos a seguir:

enter image description here

1. Escolha os arquivos desejados a partir do arquivo bin de firmware baixado.

2. Selecione a caixa de seleção SpiAutoSet.

3. Escolha a porta COM e a taxa de transmissão (BAUDRATE).

4. Clique no botão START

  • A barra de progresso será exibida durante o processo de gravação do firmware.

enter image description here

  • Por fim, a gravação do firmware é concluída.

enter image description here

Comandos AT

Início rápido dos comandos AT

Hardware

Os Materiais necessários e a Conexão de hardware são os mesmos da seção Firmware update

Vamos para a parte de software

Software

Você pode usar qualquer ferramenta serial que preferir; aqui usamos o Arduino. E certifique‑se de ter conectado o conversor USB para serial ao seu PC.

Etapa 1. Abra a IDE do Arduino, clique em Tools e escolha a Port correspondente.

Etapa 2. Em seguida, clique no botão no canto superior direito para abrir o Serial Monitor do Arduino.

Etapa 3. Configure o Serial Monitor como na figura a seguir. Em particular: 2- Selecione Both NL & CR, 3-Defina a baud rate para 115200

Etapa 3. Digite o comando AT de que você precisa na linha de comando e clique no botão Send. Você verá as informações de retorno como na figura acima.

Comandos AT básicos

CommandDescription
ATTestar inicialização AT
AT+RSTReiniciar módulo
AT+GMRVer informações da versão
AT+GSLPEntrar no modo de hibernação profunda
ATEAtivar/Desativar eco de comandos AT
AT+RESTORERestaurar configurações de fábrica
AT+UARTConfiguração de UART (Obsoleto)
AT+UART_CURConfiguração atual de UART (Não será salva na Flash)
AT+UART_DEFConfiguração padrão de UART (Salva na Flash)
AT+SLEEPModo de suspensão
AT+RFPOWERDefinir potência de transmissão RF
AT+RFVDDDefinir potência de transmissão RF de acordo com VDD33

Comandos AT de WiFi

CommandDescription
AT+CWMODEModo WIFI (Obsoleto)
AT+CWMODE_CURModo WIFI atual (Não será salvo na Flash)
AT+CWMODE_DEFModo WIFI padrão (Salvo na Flash)
AT+CWJAPConectar a AP (Obsoleto)
AT+CWJAP_CURConexão atual a AP (Não será salva na Flash)
AT+CWJAP_DEFConexão padrão a AP (Salva na Flash)
AT+CWLAPLista APs disponíveis
AT+CWQAPDesconectar da AP
AT+CWSAPConfigurar softAP (Obsoleto)
AT+CWSAP_CURConfigurar softAP atual (Não será salvo na Flash)
AT+CWSAP_DEFConfigurar softAP padrão (Salvo na Flash)
AT+CWLIFListar estações conectadas ao softAP
AT+CWDHCPAtivar/Desativar DHCP (Obsoleto)
AT+CWDHCP_CURAtivar/Desativar DHCP atual (Não será salvo na Flash)
AT+CWDHCP_DEFAtivar/Desativar DHCP padrão (Salvo na Flash)
AT+CWAUTOCONNConectar automaticamente à AP ao ligar
AT+CIPSTAMACDefinir endereço MAC da estação (Obsoleto)
AT+CIPSTAMAC_CURDefinir endereço MAC da estação (Não será salvo na Flash)
AT+CIPSTAMAC_DEFDefinir endereço MAC da estação (Salvo na Flash)
AT+CIPAPMACDefinir endereço MAC do softAP (Obsoleto)
AT+CIPAPMAC_CURDefinir endereço MAC do softAP (Não será salvo na Flash)
AT+CIPAPMAC_DEFDefinir endereço MAC do softAP (Salvo na Flash)
AT+CIPSTADefinir endereço IP da estação (Obsoleto)
AT+CIPSTA_CURDefinir endereço IP da estação (Não será salvo na Flash)
AT+CIPSTA_DEFDefinir endereço IP da estação (Salvo na Flash)
AT+CIPAPDefinir endereço IP do softAP (Obsoleto)
AT+CIPAP_CURDefinir endereço IP do softAP (Não será salvo na Flash)
AT+CIPAP_DEFDefinir endereço IP do softAP (Salvo na Flash)
AT+CWSTARTSMARTIniciar SmartConfig
AT+CWSTOPSMARTParar SmartConfig

Comandos AT de TCP/IP

CommandDescription
AT+CIPSTATUSObter status da conexão
AT+CIPSTARTEstabelecer conexão TCP ou registrar porta UDP
AT+CIPSENDEnviar dados
AT+CIPSENDEXEnviar dados; se ou "\0" for encontrado, os dados serão enviados
AT+CIPSENDBUFGravar dados no buffer de envio TCP
AT+CIPBUFRESETRedefinir contagem de ID de segmento
AT+CIPBUFSTATUSVerificar status do buffer de envio TCP
AT+CIPCHECKSEQVerificar se um segmento específico foi enviado ou não
AT+CIPCLOSEFechar conexão TCP/UDP
AT+CIFSRObter endereço IP local
AT+CIPMUXDefinir modo de múltiplas conexões
AT+CIPSERVERConfigurar como servidor
AT+CIPMODEDefinir modo de transmissão
AT+SAVETRANSLINKSalvar link de transmissão transparente na Flash
AT+CIPSTODefinir tempo limite quando o ESP8266 funcionar como servidor TCP
AT+CIUPDATEAtualizar firmware pela rede
AT+PINGDar ping em um endereço IP ou nome de host

Comandos AT da Seeed

CommandDescription
AT+LEDONLigar o LED azul LINK
AT+LEDOFFDesligar o LED azul LINK

Visualizador de esquemático online

Recursos

Suporte técnico e discussão sobre o produto

Obrigado por escolher nossos produtos! Estamos aqui para fornecer diferentes formas de suporte e garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.

Loading Comments...