The majority of camera-based microcontrollers are based on the ESP32. The two main programming languages for ESP32-based microcontrollers are Arduino C and MicroPython.
The following is a list of three such microcontrollers that can be programmed with either language:
- ESP32-CAM: The ESP32-CAM (as shown in the following photograph) is a small-sized, camera-based microcontroller for image recognition applications. It has 520 KB of SRAM, external 4M PSRAM, and microSD card slot for storage:
The ESP32-CAM can support the OV2640 and OV7670 cameras and features a built-in flash lamp. With the lack of a USB port, an FTDI USB to TTL serial adapter must be used to program the ESP32 CAM.
- ESP-EYE: The ESP-EYE (as shown in the following photograph) is a development board from Espressif for audio processing and image recognition. Unlike many other camera-based microcontrollers, the ESP-EYE features a microphone that may be used for voice command applications:
A built-in USB port allows for the easy setup and programming of the ESP-EYE. With 8 Mbyte PSRAM, 4 Mbyte flash, and a Micro SD card slot, the ESP-EYE is one of the more powerful development boards for edge intelligence applications.
- Maix K210: The Maix K210 microcontroller (as shown in the following photograph) is one of the latest AIoT microcontrollers to come out. Made by Chinese company Sipeed, the Maix K210 features a 64-bit dual-core RISC-V CPU with a hardware FPU co-processor. An OV-2640 camera and on-board microphone make this microcontroller perfect for AIoT applications:
The Maix K210 uses the MaixPy IDE for programming and setup. The MaixPy IDE provides a frame buffer for viewing video from the camera. The Maix K210 comes pre-installed with MicroPython.