🧪 New tutorials are being published — build from robot arms to sensors step by step
Skip to content

ESP32-NanoCam Quick Start Guide ​

Buy in Store


Prerequisites ​

  • NanoCam core board + base board (ESP32-S3 N16R8 + CH340K)
  • USB Type-C data cable (data transfer supported)
  • Computer (Windows / Mac / Linux)
  • GC2145 camera module (connected at the factory)

Figure 1: ESP32-NanoCam core board, frontFigure 2: ESP32-NanoCam base board (USB-C power and serial flashing)


Step 1: Flash the Firmware (3 minutes) ​

  1. Open your browser and visit esptool-js
  2. Connect the NanoCam to your computer with a Type-C cable
  3. Select the serial port, baud rate 115200
  4. Find the firmware file nanocam_xxx.bin inside the extracted archive
  5. Select the firmware file nanocam_xxx.bin, address 0x0
  6. Click "START" and wait for completion

Method B: Command Line (Advanced) ​

Bash
pip install esptool
esptool.py --chip esp32s3 --port COM3 write_flash 0x0 nanocam.bin

Step 2: Connect to WiFi (2 minutes) ​

By default the NanoCam runs AP+STA dual mode simultaneously — no switching required:

  • The AP hotspot is always on: connect your phone directly to NanoCam-AP (password 12345678), then open http://192.168.4.1 in a browser
  • STA to a router: configure the WiFi once Connect to the NanoCam's Type-C port with a serial tool (baud rate 115200 8N1):
Plaintext
sta_ssid:your WiFi name
sta_pd:your WiFi password

Receiving OK means the configuration succeeded. The device reboots automatically after the password is changed. To switch WiFi modes (usually not necessary):

CommandModeDescription
wifi_mode:0AP onlyDisables STA, keeps only the hotspot
wifi_mode:1STA onlyDisables the hotspot, connects only to the router
wifi_mode:2AP+STADefault; both work simultaneously

Step 3: View the Video (1 minute) ​

  1. Send sta_ip over serial to get the STA IP
  2. Enter http://<IP address> in your browser (or http://192.168.4.1 in AP mode)
  3. The web page shows the live video

Step 4: Explore the AI (2 minutes) ​

Send the following commands over serial to switch modes:

CommandModeEffect
ai_mode:0Normal streamingReal-time MJPEG video
ai_mode:1Cat face detectionCat face detection boxes appear on screen
ai_mode:2Face detectionFace detection boxes appear on screen
ai_mode:3Color recognitionSelect a color → real-time tracking
ai_mode:4Face recognitionEnroll → identify → delete
ai_mode:5QR code scanningAim at a QR code → content output to serial
ai_mode:6LLM agentVoice wake-up "你好小智" (XiaoZhi AI)
ai_mode:7ESP-ClawESP-Claw AI Agent (official Espressif framework)

Each mode switch requires a manual reboot — press the module's RST button to reboot; the new mode takes effect after the restart.


Step 5: Integrate Into Your Project ​

Arduino Control ​

C++
Serial.begin(115200);
Serial.print("ai_mode:2");  // Switch to face detection

Python Control ​

Python
import serial
ser = serial.Serial("COM3", 115200)
ser.write(b"ai_mode:1\r\n")  # Switch to cat face detection

View the Complete Command List ​

→ Serial Protocol Manual


FAQ ​

ProblemSolution
Flashing failsCheck that the Type-C cable supports data; hold S2(BOOT) on the base board while powering on
No videoSend sta_ip over serial to confirm the IP; check that both devices are on the same subnet
Camera stays darkCheck that the FPC cable is fully seated with the metal contacts facing down; check PWDN(IO12)/RESET(IO14)
Cannot connect to WiFiSend wifi_reset to restore factory settings, then configure again

More questions → FAQ


Next Steps ​