MaixPy Banner

MaixPy (v4)

Fast implementation of AI vision and auditory applications

GitHub Repo starsApache 2.0PyPIPyPI - DownloadsGitHub downloads Build MaixCAMTrigger wiki

English | 中文

MaixPy-v1 (K210) usage refer to MaixPy-v1. MaixPy v4 does not support Maix-I Maix-II series hardware, please upgrade to the MaixCAM platform.

If you like MaixPy, please give a star ⭐️ to the MaixPy open source project to encourage us to develop more features.

Simple API Design, AI Image Recognition with Just 10 Lines of Code

from maix import camera, display, image, nn

classifier = nn.Classifier(model="/root/models/mobilenetv2.mud")
cam = camera.Camera(classifier.input_width(), classifier.input_height(), classifier.input_format())
disp = display.Display()

while 1:
    img = cam.read()
    res = classifier.classify(img)
    max_idx, max_prob = res[0]
    msg = f"{max_prob:5.2f}: {classifier.labels[max_idx]}"
    img.draw_string(10, 10, msg, image.COLOR_RED)
    disp.show(img)

Hardware Peripheral Control, No Big Deal

Serial Communication:

from maix import uart

devices = uart.list_devices()

serial = uart.UART(devices[0], 115200)
serial.write_str("hello world")
print("received:", serial.read(timeout = 2000))

I2C Communication:

from maix import i2c

devices = i2c.list_devices()
dev1 = i2c.I2C(devices[0], freq=100000)
slaves = dev1.scan()
print("find slaves:", slaves)
dev1.writeto(0x12, b'hello')
print("received:", dev1.readfrom(0x12, 5))

Convenient MaixVision Workstation

Simplify the development environment to make development easier and faster

Online AI Training Platform MaixHub

No need for AI expertise or expensive training equipment, train models with one click, deploy to MaixCAM with one click.

High-performance MaixCAM Hardware Platform

MaixCAM


  • CPU: 1GHz RISC-V (Linux) + 700MHz RISC-V (RTOS) + 25~300MHz 8051 (Low Power)
  • NPU: 1Tops@INT8 NPU, supports BF16, YOLO11, YOLOv8, YOLOv5, etc.
  • Memory: 256MB DDR3
  • Communication: USB2.0/WiFi6/BLE5.4
  • Peripherals: IIC/PWM/SPI/UART/WDT/GPIO/ADC
  • Multimedia: 4M camera, 2.4" 640x480 HD capacitive touchscreen, H.264/H.265/MJPEG 2K hardware codec.
  • Purchase: Various hardware versions are available, see Store (contact the store for availability)
  • More: See MaixCAM and MaixCAM-Pro hardware documentation

More Features

Here are some feature highlights, find more in the Community

You can create new features using the rich API provided by MaixPy.

OpenCV + OpenMV

Supports OpenCV, compatible with OpenMV

C++ Version

MaixCDK C++ version SDK, same API as MaixPy, commercial-friendly

As a Serial Module

Control other MCUs via serial commands

APP Store

Share your apps with the community and install them with one click via the APP Store.

MaixPy-v1 Compatible API

Quickly migrate from MaixPy-v1 (K210) to MaixPy-v4

AI Classification

Identify object categories

AI Object Detection

Identify object categories and coordinates

AI Face Recognition

Recognize different facial features

AI Body Keypoint Detection

Posture recognition, body-sensing games

AI Self-learning Classifier

Instantly learn any object on the device without PC training

AI Self-learning Detector

Instantly learn any object on the device without PC training

AI Object Tracking

Track objects, count traffic

AI Surveillance, Streaming

Security monitoring, streaming, even live stream to platforms like Bilibili.com

Color Detection

Detect color spots

Line Following

Line-following car, logistics transportation

QR Code and AprilTag

Recognize QR codes and AprilTag

OCR

Recognize characters in images, digitize old items

Voice Recognition

Real-time continuous voice recognition

Desktop Monitor

Monitor PC information such as CPU, memory, and network.

Weather Station

Monitor weather information such as temperature and humidity.

Thermal Infrared Camera

Optional camera, for temperature image acquisition/measurement

HDMI Video Capture

Optional feature, capture images via HDMI for server monitoring (KVM), remote control, external AI, streaming devices, etc.

Large Screen Video Playback

Multiple screen sizes (2.3", 2.4", 5", 7", etc.), hardware decoding support

Microscope

Pair with 1/8" large sensor + microscope lens = digital microscope

High-Speed Recognition

Pair with a global shutter camera to accurately recognize high-speed moving objects

Time-lapse Photography

Pair with a 1/8" large sensor for all-day time-lapse photography

Astronomical Photography

Pair with a 1/8" large sensor + high-power lens for astronomical photography, supports long exposure mode and RAW image output

Gyroscope Stabilization

Onboard gyroscope (MaixCAM-Pro only), supports exporting gyroflow stabilization format for DIY photography

Who Uses MaixPy?

  • AI Algorithm Engineers: Easily deploy your AI models to embedded devices.

Easy-to-use API to access NPU, open-source quantization tools, detailed documentation on AI models.

  • STEM: Teachers who want to teach students AI and embedded development.

Easy-to-use API, PC tools, online AI training services, allowing you to focus on teaching AI instead of hardware and complex software development.

  • Makers: Want to create cool projects without spending too much time on complex hardware and software.

Rich, simple Python and C++ APIs, quick to get started, complete your DIY projects in just minutes.

  • Engineers: Want to build projects but hope to have prototypes and solutions quickly.

Rich Python and C++ APIs, efficient, stable, and easy to use, helping you quickly create prototypes and implement projects directly.

  • Students: Want to learn AI and embedded development.

Offers rich documentation, tutorials, and open-source code, helping you find learning paths and gradually grow, from simple Python programming to vision, AI, audio, Linux, RTOS, etc.

  • Companies: Want to develop AI vision products but don’t have the time or engineers to develop complex embedded systems.

Use MaixPy or even graphical programming to reduce the number of employees and time. For example, adding an AI QA system to the production line, or an AI security monitor to the office.

  • Competitors: People who want to win competitions.

MaixPy integrates many features, is easy to use, speeds up the output of your work, and helps you win competitions in a short time. Many students use MaixPy to win common competitions in China.

Performance Comparison

Compared to the limited NPU operator support and memory constraints of the previous two generations of Maix series products (K210, V831), MaixCAM offers significant improvements in performance and experience while maintaining an excellent price-performance ratio.

Feature Maix-I K210 Maix-II v831 MaixCAM
CPU 400MHz RISC-V x2 800MHz ARM7 1GHz RISC-V(Linux)
700MHz RISC-V(RTOS)
25~300MHz 8051(Low Power)
Memory 6MB SRAM 64MB DDR2 256MB DDR3
NPU 0.25Tops@INT8
official says 1T but...
0.25Tops@INT8 1Tops@INT8
Encoder 1080p@30fps 2K@30fps
Screen 2.4" 320x240 1.3" 240x240 2.3" 552x368(MaixCAM)
2.4" 640x480(MaixCAM-Pro)
5" 1280x720
7" 1280x800
10“ 1280x800
Touchscreen 2.3" 552x368
Camera 30W 200W 500W
WiFi 2.4G 2.4G WiFi6 2.4G/5G
USB USB2.0 USB2.0
Ethernet 100M(optional) 100M(optional)
SD Card Interface SPI SDIO SDIO
BLE BLE5.4
Operating System RTOS Tina Linux Linux + RTOS
Programming Language C / C++ / MicroPython C / C++ / Python3 C / C++ / Python3
Software MaixPy MaixPy3 MaixCDK + MaixPy v4 + OpenCV + Numpy + ...
PC Software MaixPy IDE MaixPy3 IDE MaixVision Workstation
Documentation ⭐️⭐️⭐️⭐️ ⭐️⭐️⭐️ 🌟🌟🌟🌟🌟
Online AI Training ⭐️⭐️⭐️ ⭐️⭐️⭐️⭐️ 🌟🌟🌟🌟🌟
Official Apps ⭐️ ⭐️⭐️⭐️ 🌟🌟🌟🌟🌟
AI Classification (224x224) MobileNetv1 50fps
MobileNetv2 ✖
Resnet ✖
MobileNet ✖
Resnet18 20fps
Resnet50 ✖
MobileNetv2 130fps
Resnet18 62fps
Resnet50 28fps
AI Detection (NPU inference part) YOLOv2(224x224) 15fps YOLOv2(224x224) 15fps YOLOv5s(224x224) 100fps
YOLOv5s(320x256) 70fps
YOLOv5s(640x640) 15fps
YOLOv8n(640x640) 23fps
YOLO11n(224x224)175fps
YOLO11n(320x224)120fps
YOLO11n(320x320)95fps
YOLO11n(640x640)23fps
Ease of Use ⭐️⭐️⭐️⭐️ ⭐️⭐️⭐️ 🌟🌟🌟🌟🌟

MaixCAM-Pro Upgrades compared to MaixCAM:

  1. Optimized case design for better aesthetics and heat dissipation
  2. Screen upgraded to 2.4 inches with 640x480 resolution
  3. Dual-channel PWM servo interface, standard PMOD interface, 6-pin terminal interface
  4. Onboard AXP2101 PMU, supports lithium battery charging and discharging, power metering function
  5. Onboard six-axis IMU, qmi8658, supports video stabilization
  6. Built-in 1W small speaker
  7. Added 1/4 inch standard thread mount for easy installation
  8. Added auxiliary lighting LED
  9. Added RTC chip BM8653 and RTC battery

Maix Ecosystem

Community

Community Address
Documentation MaixPy Documentation
App Store maixhub.com/app
Project Sharing maixhub.com/share
Bilibili Search for MaixCAM or MaixPy on Bilibili
Discussion maixhub.com/discussion
MaixPy issues github.com/sipeed/MaixPy/issues
Telegram t.me/maixpy
QQ Group 862340358

What Are the Differences Between MaixPy v1, MaixPy3, and MaixPy v4?

  • MaixPy v1 uses the MicroPython programming language and only supports the Sipeed Maix-I K210 series hardware with limited third-party packages.
  • MaixPy3 is specifically designed for Sipeed Maix-II-Dock v831 and is not a long-term support version.
  • MaixPy v4 uses the Python programming language, allowing direct use of many packages.
    MaixPy v4 supports Sipeed's new hardware platform and is a long-term support version. Future hardware platforms will support this version.
    MaixPy v4 has a MaixPy-v1 compatible API, so you can quickly migrate your MaixPy v1 projects to MaixPy v4.

(MaixPy v4 does not support the K210 series. It is recommended to upgrade your hardware platform to use this version for more features, better performance,
and a more convenient programming experience.)