← Projects

XIAO ESP32-S3 SenseOV2640 cameraVision + VoiceMQTTHeadless

TinyEye

A tiny AI "eye" on a Seeed XIAO ESP32-S3 Sense. Press the button to take a photo and have the assistant describe what it sees — and bridge everything over your own MQTT broker. Meet จ่อย / Joy, the assistant behind the lens.

What it does

TinyEye is a headless, thumb-sized AI vision device. There's no screen and no speaker — just a camera, a microphone, and one button. Click it and TinyEye snaps a photo, sends it to an AI assistant, and gets back a spoken/text description of what's in front of it. It's designed to plug straight into your own automations over MQTT.

Button controls

  • Single-click — take a photo and ask the assistant to describe it
  • Double-click — enter voice-chat mode
  • Long-press — toggle the microphone mute

The onboard LED shows status; the single BOOT button does everything via multi-tap.

MQTT bridge

Everything is wired to your MQTT broker so TinyEye is easy to script, log or chain into other devices. Each unit uses topics under its own device id:

  • tinyeye/<device-id>/askin: request a photo + description
  • tinyeye/<device-id>/visionout: the assistant's description of the scene
  • tinyeye/<device-id>/mic — control the microphone

Works with the public broker.emqx.io broker out of the box, or point it at your own.

Hardware

  • Board: Seeed Studio XIAO ESP32-S3 Sense
  • Camera: built-in OV2640
  • Audio: PDM microphone (no speaker — headless)
  • Input: single BOOT button (multi-tap) · Output: status LED
  • No display / no speaker — a deliberately minimal, pocketable build

Software

Built on ESP-IDF 5.4+, TinyEye is a fork of the open-source XiaoZhi ESP32 firmware (MIT). It speaks both WebSocket and MQTT+UDP, streams audio with the Opus codec, and supports device-side MCP for hardware control, plus multi-language operation (Chinese, English, Japanese). Prebuilt firmware is available in the repo's Releases, and it integrates with the xiaozhi.me cloud platform.

Source: github.com/raspberrypi66/TinyEye · based on 78/xiaozhi-esp32 (MIT).

Get the parts ← Back to all projects