XIAOML Kit: kit da Seeed Studio com ESP32-S3, câmera, microfone e IMU para o livro Machine Learning Systems
Recentemente adquiri o XIAOML Kit, um kit de hardware da Seeed Studio criado para acompanhar os laboratórios práticos do livro “Machine Learning Systems”, do professor Vijay Janapa Reddi, de Harvard. O XIAOML Kit junta a XIAO ESP32-S3 Sense, com câmera OV3660 e microfone digital, a uma placa de expansão com IMU de 6 eixos e display OLED de 0,42″, e cobre as três modalidades de dados trabalhadas no livro: imagem, som e movimento. Os laboratórios do XIAOML Kit foram desenvolvidos com o professor Marcelo Rovai, da UNIFEI, em Itajubá, dentro das atividades do grupo tinyML4D.
Nesse texto, vamos ver o que vem no kit, os detalhes do hardware e como os laboratórios usam cada sensor.
O que vem no XIAOML Kit?
O XIAOML Kit é composto por:
- 1x XIAO ESP32-S3 Sense com headers já soldados (câmera OV3660, microfone digital e leitor de cartão SD)
- 1x IMU Breakout Board for XIAO ESP32-S3 (IMU de 6 eixos, OLED de 0,42″, botão de reset e conector de bateria)
- 1x antena FPC de 2,4 GHz (1,16 dBi)
- 2x dissipadores de calor
- Kit de cartão microSD: cartão SanDisk de 32 GB, adaptador USB Type-C para USB Type-A e cabo Type-A para Type-C de 20 cm
Detalhes do hardware
A base é a XIAO ESP32-S3 Sense, que já cobrimos em detalhe aqui no Embarcados. O SoC é o ESP32-S3R8, dual-core Xtensa LX7 a 240 MHz, com 512 KB de SRAM, 8 MB de PSRAM e 8 MB de flash. A câmera e o microfone ficam na placa de expansão da Sense, conectada pelo conector B2B, com o slot de cartão SD.
A novidade do kit é a segunda placa. A IMU Breakout Board encaixa nos headers da XIAO pelo lado oposto e traz um IMU LSM6DS3TR-C (acelerômetro e giroscópio de 3 eixos cada) e um OLED monocromático de 0,42″ com controlador SSD1315. Como a câmera usa o B2B e a placa do IMU usa os headers, as duas expansões convivem na mesma placa. O conjunto montado mede 21 x 17,8 x 30 mm e pesa 10,6 g.
IMU e OLED dividem o mesmo barramento I2C, nos endereços 0x6A e 0x3C, respectivamente. Para quem quiser pendurar outro sensor I2C no projeto, esses dois endereços já estão ocupados.
O OLED tem resolução de 72 x 40 pixels. Na biblioteca U8g2, usada nos laboratórios, ele é tratado com o construtor do SSD1306 72×40, já que o SSD1315 é compatível com o conjunto de comandos do SSD1306. Com essa resolução, o display serve para mostrar a classe inferida, uma porcentagem de confiança ou um ícone. Não espere mais que duas ou três linhas de texto legível.
A placa do IMU também tem um conector de bateria JST de 1,0 mm e 2 pinos, para bateria de lítio de 3,7 V. Com ele, não é preciso soldar fios nos pads de bateria da XIAO, o que ajuda em projetos vestíveis e na captura de dados de movimento sem cabo USB pendurado.
Especificações completas
| Componente | Especificação |
|---|---|
| Placa principal | XIAO ESP32-S3 Sense, headers pré-soldados |
| SoC | ESP32-S3R8, dual-core Xtensa LX7 32 bits, até 240 MHz |
| Memória | 512 KB SRAM, 8 MB PSRAM, 8 MB flash |
| Armazenamento externo | Slot microSD (cartão de 32 GB incluso) |
| Conectividade | Wi-Fi 4 (2,4 GHz), Bluetooth 5.0 LE, conector U.FL com antena FPC de 1,16 dBi |
| Câmera | OV3660 |
| Microfone | Microfone digital PDM (clock no GPIO42, dados no GPIO41) |
| IMU | LSM6DS3TR-C, 6 eixos, I2C 0x6A; acelerômetro ±2/4/8/16 g, giroscópio ±125 a ±2000 dps |
| Display | OLED 0,42″ monocromático, 72 x 40 pixels, controlador SSD1315, I2C 0x3C |
| LEDs | LED de usuário (GPIO21, lógica invertida) e LED de carga, na XIAO |
| Botões | Reset e Boot na XIAO; Reset na IMU Breakout Board |
| Conector de bateria | JST 1,0 mm, 2 pinos, na IMU Breakout Board |
| Alimentação | USB Type-C 5 V ou bateria de lítio 3,7 V |
| Conexão entre placas | Câmera/microfone/SD via conector B2B; IMU Breakout Board via headers e pogo pins |
| Dissipadores | 2 unidades (para uso sem a IMU Breakout Board) |
| Acessórios | Adaptador USB-C para USB-A, cabo USB-A para USB-C de 20 cm |
| Dimensões | 21 x 17,8 x 30 mm (montado) |
| Peso | 10,6 g |
Uso do XIAOML Kit com o livro aberto Machine Learning Systems
O “Machine Learning Systems” é um livro aberto: o texto e os códigos são desenvolvidos publicamente no GitHub e o PDF pode ser baixado gratuitamente em mlsysbook.ai. O livro também terá edição pela MIT Press.
A proposta do livro é ensinar a construir o sistema que roda o modelo, não só treinar o modelo. Segundo Reddi, a ideia surgiu da percepção de que os alunos sabiam treinar modelos de IA, mas poucos entendiam como montar os sistemas que fazem esses modelos funcionarem de verdade.
O kit é uma das plataformas de hardware usadas no livro. As outras são Raspberry Pi, Arduino Nicla Vision e o módulo Grove Vision AI V2.
Os laboratórios
As lições do kit estão no PDF do livro e em mlsysbook.ai. São quatro:
- Classificação de imagens, com a câmera
- Detecção de objetos, com a câmera
- Keyword spotting, com o microfone
- Classificação de movimento e detecção de anomalias, com o IMU
O fluxo principal usa Arduino IDE para firmware e o Edge Impulse Studio para coleta de dados, treino e deploy. No laboratório de movimento, por exemplo, os dados do IMU são coletados a 50 Hz e enviados ao Edge Impulse pelo Data Forwarder da CLI. O modelo é uma rede densa pequena, com 63 features espectrais de entrada (21 por eixo, em janelas de 2 segundos), camadas ocultas de 20 e 10 neurônios e 4 classes de saída. A detecção de anomalia usa K-means com 32 clusters: um movimento que não se parece com nada do treino, como o dispositivo de cabeça para baixo, gera score alto.
O áudio é capturado a 16 kHz, 16 bits, mono, em modo PDM pela biblioteca ESP_I2S, com gravação em WAV no cartão SD.
Quem não quiser treinar modelo também pode usar a SenseCraft AI, plataforma no-code da Seeed com modelos pré-treinados de visão e áudio para deploy direto na placa. TensorFlow Lite (LiteRT) também é suportado.
Pontos de atenção na configuração
Alguns detalhes do guia de setup do livro evitam dor de cabeça:
- Selecionar a placa XIAO_ESP32S3 no Arduino IDE e ativar Tools > PSRAM > “OPI PSRAM”. Sem isso, a gravação de áudio não funciona.
- O guia recomenda o core ESP32 na versão 2.0.x. A série 3.x pode ter problemas de compatibilidade com as bibliotecas exportadas pelo Edge Impulse.
- Para o IMU, a biblioteca é a “Seeed Arduino LSM6DS3”, da Seeed, e não a “Arduino_LSM6DS3”. Para o OLED, U8g2.
- Não confundir o pacote “Arduino ESP32 Boards”, da Arduino, que é para o Nano ESP32, com o pacote esp32 da Espressif.
O guia de setup ainda cita a câmera OV2640 em alguns trechos, herança das primeiras versões da XIAO ESP32-S3 Sense. O kit vendido hoje vem com a OV3660, e o código de câmera do core ESP32 suporta os dois sensores.
Aplicações
- Visão computacional: classificação de imagens e detecção de objetos
- Detecção de palavras-chave e comandos de voz
- Reconhecimento de gestos e análise de movimento
- Dispositivos vestíveis
- Monitoramento de saúde
- Educação e laboratórios de TinyML
Conclusão
O XIAOML Kit resolve um problema prático de quem ensina ou estuda TinyML: ter câmera, microfone e IMU numa placa só, com material didático pronto e alinhado a um livro aberto. Para disciplina de graduação ou curso de extensão, a combinação de preço abaixo de US$ 40 e laboratórios já testados reduz bastante o trabalho de montar a parte prática. Para quem já tem uma XIAO ESP32-S3 Sense, a diferença está na IMU Breakout Board e nos laboratórios, que podem ser seguidos com o livro aberto do lado.
Referências
- Seeed Studio, página do produto The XIAOML Kit: https://www.seeedstudio.com/The-XIAOML-Kit.html
- Seeed Studio Blog, Introducing The XIAOML Kit: https://www.seeedstudio.com/blog/2025/08/05/introducing-the-xiaoml-kit-your-tinyml-journey-starts-here/
- Machine Learning Systems, laboratórios do XIAOML Kit: https://mlsysbook.ai/kits/contents/seeed/xiao_esp32s3/xiao_esp32s3.html
Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.


