🧪 Novos tutoriais em andamento — do braço robótico ao sensor
Ir para o conteúdo
Compre este produtoLoja oficialSite oficial

Manual do protocolo serial do ESP32-NanoCam

Comprar na loja

Baud rate: 115200 | Bits de dados: 8 | Paridade: nenhuma | Bits de parada: 1 | Controle de fluxo: nenhum

Compatível com o conjunto de comandos AT dos principais módulos de câmera, com novos comandos estendidos do NanoCam.

1. Regras gerais

  • Os comandos não diferenciam maiúsculas de minúsculas (STA_SSID = sta_ssid)
  • Após o comando, é necessário um sinal de pontuação ASCII qualquer (, . : ; etc.) como terminador
  • Alguns comandos reinicializam automaticamente o dispositivo após a alteração
  • Cada comando termina com \r\n (o assistente de porta serial normalmente adiciona automaticamente)

2. Configuração de WiFi

Modo STA (conectar ao roteador)

ComandoDescriçãoExemploRetorno
sta_ssid:nomeDefine o nome do WiFista_ssid:MyWiFiOK
sta_pd:senhaDefine a senha do WiFi (reinicia após alterar)sta_pd:12345678OK (reinicia)

O nome e a senha do WiFi têm no máximo 30 caracteres e não suportam caracteres chineses.

Modo AP (hotspot próprio)

ComandoDescriçãoExemploRetorno
ap_ssid:nomeDefine o nome do hotspotap_ssid:NanoCam-APOK
ap_pd:senhaDefine a senha do hotspot (reinicia após alterar)ap_pd:12345678OK (reinicia)

Modo WiFi

ComandoDescriçãoParâmetroRetorno
wifi_mode:XAlterna o modo0=AP 1=STA 2=AP+STAOK (reinicia quando alterado)

3. Troca de modos de IA

ComandoModoDescriçãoReinício
ai_mode:0NormalTransmissão MJPEG, sem IA
ai_mode:1Detecção de rosto de gatoCaixa desenhada no rosto de gato em tempo real + confiança
ai_mode:2Detecção de rostosCaixa desenhada no rosto em tempo real + coordenadas
ai_mode:3Reconhecimento de corSelecione a cor → detecção em tempo real
ai_mode:4Reconhecimento facialCadastro → identificação → exclusão
ai_mode:5QR codeDecodificação em tempo real → saída pela porta serial
ai_mode:6Agente LLMDiálogo por voz XiaoZhi AI + visão por IA
ai_mode:7ESP-ClawControle por voz + análise visual por foto + OpenAI Vision

Valores válidos de ai_mode: 0-7. Fora desse intervalo, o valor padrão passa a ser 0. O dispositivo reinicia automaticamente após a alteração; o novo modo entra em vigor após o reinício.

4. Consulta de informações

ComandoDescriçãoExemplo de retorno
sta_ipConsulta o IP do STAsta_ip:192.168.1.100
ap_ipConsulta o IP do APap_ip:192.168.4.1
wifi_verConsulta a versão do firmwareNanoCam Board Ver:0.2.0

5. Controle do sistema

ComandoDescriçãoRetorno
wifi_resetRestaura as configurações de fábrica (reinicia)Reset_OK
nano_rebootReset por softwareRebooting...
nano_infoInformações completas do dispositivo (JSON)Ver abaixo

Exemplo de retorno do nano_info

JSON
{
  "device": "NanoCam",
  "ver": "0.2.0",
  "chip": "ESP32-S3",
  "flash": "16MB",
  "psram": "8MB",
  "ai_mode": 1,
  "wifi_mode": 2,
  "sta_ip": "192.168.1.100",
  "free_heap": 245760
}

6. Comandos exclusivos do reconhecimento facial

Válido apenas no ai_mode:4 (modo de reconhecimento facial).

ComandoDescriçãoComportamento da etiquetaExemplo de retorno
face_erilCadastra o rosto detectado no quadro atualEtiqueta azul "Enroll: ID N", pisca por 0.5s>>> face enroll triggered
face_rzEntra no modo de reconhecimento facial contínuoVerde "ID: N" / vermelha "who?", permanece visível sem desaparecer>>> face recognize triggered
face_delExclui o último ID facial cadastradoEtiqueta vermelha "N IDs left", pisca por 0.5s>>> face delete triggered
face_detectSai do modo de reconhecimento e volta à detecção de rostosRemove todas as etiquetas>>> face detect mode

Fluxo de operação do reconhecimento facial

Plaintext
ai_mode:4          # entra no modo de reconhecimento facial (o dispositivo reinicia automaticamente)
face_eril          # cadastra o rosto (garanta que apenas um rosto esteja no quadro)
face_rz            # inicia o reconhecimento contínuo — a etiqueta permanece visível
face_detect        # sai do modo de reconhecimento — as etiquetas são removidas
face_del           # exclui o último rosto cadastrado

Observações sobre o reconhecimento facial

  1. No cadastro, garanta que haja apenas um rosto no quadro, a uma distância de 30-50cm
  2. No modo de reconhecimento (face_rz), a etiqueta permanece visível e não desaparece após 0.5 segundo — este é o novo comportamento da versão 0.3.0
  3. Para sair do modo de reconhecimento, é preciso enviar face_detect; caso contrário, a etiqueta continua visível
  4. As características faciais são armazenadas na partição fr da Flash, não se perdem sem energia e suportam no máximo 47 IDs
  5. O reconhecimento usa uma estratégia de salto de quadros (inferência MFN a cada 10 quadros)

7. Comandos estendidos (exclusivos do NanoCam)

ComandoDescriçãoStatus
nano_server:urlDefine o endereço do servidor LLM (salvo na NVS)
nano_api_key:keyDefine a chave de API do LLM (salva na NVS)
nano_mqtt:broker,port,topicConfigura o servidor MQTT🔨
nano_led:R,G,BDefine o LED RGB (WS2812, GPIO18 DIN)📋
nano_snapFotografa e armazena (SPIFFS)
nano_stream:on/offInicia/para a transmissão de vídeo📋

nano_server / nano_api_key

ComandoDescriçãoExemploRetorno
nano_server:URLDefine o endereço do servidor LLMnano_server:https://api.openai.comOK server=https://api.openai.com
nano_api_key:KEYDefine a chave de APInano_api_key:sk-xxxxOK

Suporta qualquer API compatível com OpenAI (vLLM / Ollama / modelos locais são todos suportados). O modo ESP-Claw (ai_mode:7) suporta o uso de nano_server; o XiaoZhi AI (ai_mode:6) usa uma configuração de servidor independente.

8. Observações

  1. sta_pd / ap_pd reiniciam automaticamente após a alteração; a nova senha entra em vigor após o reinício
  2. ai_mode reinicia automaticamente após a alteração (apenas quando o modo muda)
  3. No modo de reconhecimento facial (mode 4), a configuração pela porta serial Type-C pode falhar (memória insuficiente)
  4. O nome/senha do WiFi não pode exceder 30 caracteres nem conter caracteres chineses
  5. Após o comando, é necessário um sinal de pontuação como terminador

Próximos passos

  • Início rápido — fluxo completo de primeiros passos, da gravação do firmware à troca de modos de IA