Skip to main content

MaixPy (v4)

Let's Sipeed up, Maximize AI's power!

MaixPy (v4): Easily create AI projects with Python on edge device

Quick Start | Documentation | API | Hardware

GitHub Repo stars Apache 2.0 PyPI PyPI - Downloads GitHub repo size Build MaixCAM Trigger wiki

English | 中文

MaixCAM

Feature Overview

MaixPy offers simple Python programming combined with powerful edge computing hardware. Integrated hardware peripheral operations, video streaming, AI vision algorithms, and audio algorithms etc. With its plug-and-play design, MaixPy enables you to quickly implement your intelligent projects.

Additionally, MaixPy provides the MaixVision IDE, MaixHub online training platform, detailed documentation, and even a C/C++ SDK with identical APIs, ensuring seamless development and production deployment.

Here is a partial video demonstration of the features. For more documentation, please visit the official website: wiki.sipeed.com/maixpy/

If you like this project, please click Star on the top right of the MaixPy Project to encourage us to develop more exciting content!

Concise and Efficient Code (API) Design

With MaixPy you can easily create AI vision project within 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)

Result:

Edge(embeded) friendly

Simply use hardware peripheral like serial port:

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))

MaixVision workstation

We also provide a handy MaixVision workstation software to make development easier and faster:

MaixVision

MaixHub online platform

MaixHub provide free online AI train service, one click to train AI model and deploy to MaixCAM even you have no AI knowledge and expensive training equipment.

MaixHub

Hardware platform MaixCAM

And we provide two powerful hardware platform MaixCAM and MaixCAM-Pro, with datasheet register level open.

MaixCAM

CPU NPU Memory
- 1GHz RISC-V(Linux)
- 700MHz RISCV-V(RTOS)
- 25~300MHz 8051(LowPower)
1Tops@INT8 NPU, support BF16
support YOLOv5 YOLOv8 etc.
256MB DDR3
Connecting Peripheral MultiMedia Buy
USB2.0/WiFi6/BLE5.4 IIC/PWM/SPI/UART/WDT/ADC - 4M Camera
- 2.3" 552x368 Touchscreen
- H.264/H.265/MJPEG codec
Sipeed Official Store

Who are using MaixPy?

  • AI Algorithm Engineer who want to deploy your AI model to embedded devices.

MaixPy provide easy-to-use API to access NPU, and docs to help you develop your AI model.

  • STEM teacher who wants to teach AI and embedded devices to students.

MaixPy provide easy-to-use API, PC tools, online AI train service ... Let you focus on teaching AI, not the hardware and complicated software usage.

  • Maker who want to make some cool projects but don't want to learn complicated hardware and software.

MaixPy provide Python API, so all you need is learn basic Python syntax, and MaixPy's API is so easy to use, you can make your project even in a few minutes.

  • Engineer who want to make some projects but want a prototype as soon as possible.

MaixPy is easy to build projects, and provide corresponding C++ SDK, so you can directly use MaixPy to deploy or transfer Python code to C++ in a few minutes.

  • Students who want to learn AI, embedded development.

We provide many docs and tutorials, and lot of open source code, to help you find learning route, and grow up step by step. From simple Python programming to Vision, AI, Audio, Linux, RTOS etc.

  • Enterprise who want to develop AI vision products but have no time or engineers to develop complicated embedded system.

Use MaixPy even graphic programming to develop your products with no more employees and time. For example, add a AI QA system to your production line, or add a AI security monitor to your office as your demand.

  • Contestants who want to win the competition.

MaixPy integrate many functions and easy to use, fasten your work to win the competition in limited time. There are already many contestants win the competition with MaixPy.

Performance comparison

K210 and v831 are outdated, they have many limitations in memory, performance, NPU operators missing etc.
No matter you are using them or new comer, it's recommended to upgrade to MaixCAM and MaixPy v4.

Here's the comparison between them:

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.28" 552x368 / 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
Eth 100M(Optional) 100M(Optional)
SD Interface SPI SDIO SDIO
BLE BLE5.4
OS RTOS Tina Linux Linux + RTOS
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
Docs ⭐️⭐️⭐️⭐️ ⭐️⭐️⭐️ 🌟🌟🌟🌟🌟
Online AI train ⭐️⭐️⭐️ ⭐️⭐️⭐️⭐️ 🌟🌟🌟🌟🌟
Official APPs ⭐️⭐️ ⭐️⭐️⭐️ 🌟🌟🌟🌟🌟
AI classify(224x224) MobileNetv1 50fps
MobileNetv2 ✖
Resnet ✖
MobileNet ✖
Resnet18 20fps
Resnet50 ✖
MobileNetv2 130fps
Resnet18 62fps
Resnet50 28fps
AI detect(NPU forward 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 ⭐️⭐️⭐️⭐️ ⭐️⭐️⭐️ 🌟🌟🌟🌟🌟

Maix Ecosystem

MaixPy not only a Python SDK, but have a whole ecosystem, including hardware, software, tools, docs, even cloud platform etc. See the picture below:

What difference between MaixPy v1, MaixPy3 and MaixPy v4?

  • MaixPy v1 use MicroPython programming language, only support Sipeed Maix-I K210 series hardware, have limited third-party packages.
  • MaixPy3 is designed for Sipeed Maix-II-Dock v831, not a long-term support version.
  • MaixPy v4 use Python programming language, so there's much package we can use directly. MaixPy v4 support new hardware platforms of Sipeed, it's a long-term support version, the future's hardware platforms will support this version. MaixPy v4 have a MaixPy-v1 compatible API, so you can quickly migrate your MaixPy v1 project to MaixPy v4.

(MaixPy v4 Will not support Maix-I K210 series, if you are using Maix-I K210 series, it's recommended to upgrade hardware platform to use this to get more features and better performance.)

Compile Source Code

If you want to compile MaixPy firmware from source code, refer to Build MaixPy source code page.

License

All files in this repository are under the terms of the Apache License 2.0 Sipeed Ltd. except the third-party libraries or have their own license.

Community

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

maixpy-4.11.4-cp313-cp313-manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.13

maixpy-4.11.4-cp312-cp312-manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.12

maixpy-4.11.4-cp310-cp310-manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.10

maixpy-4.11.4-cp39-cp39-manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.9

maixpy-4.11.4-cp38-cp38-manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.8

File details

Details for the file maixpy-4.11.4-cp313-cp313-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for maixpy-4.11.4-cp313-cp313-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 573529b84bd63dc8a9323061f09a3e09b6df280eb047a6bb6d593222cb2cb126
MD5 4448d51737acdd73e31b67ca964a58d8
BLAKE2b-256 8d29e60d4c957c8f5172f59da2f6db2ce0a0f5a3826f780976b314f34c1efc61

See more details on using hashes here.

File details

Details for the file maixpy-4.11.4-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for maixpy-4.11.4-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6e9c25770b5082873c6b3b33ff4261f56d683e6eca1d63115c64fe04b7a950e7
MD5 b69cbfb123eeb0451604a259ad7ed014
BLAKE2b-256 dd9cc34dd799cc72e01f2d179244e62499ce1786de1b368ac453b47ea3516f14

See more details on using hashes here.

File details

Details for the file maixpy-4.11.4-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for maixpy-4.11.4-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 898e1b630175072029b2a9061a80666176cb6c3a740bc30aee5cb9dc012e6623
MD5 1e139d788fa0a9ab817477d67e7ac25c
BLAKE2b-256 b995d3c739e54e30cc581ec222ef7b2d4963d30ab4c0498748cdbe26dfcfc341

See more details on using hashes here.

File details

Details for the file maixpy-4.11.4-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for maixpy-4.11.4-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 be5f1fc464819ed20bffaf7f09a5d04f18269ee39483cb7131cc1645d9339410
MD5 90b91356752e56660e0f51b20447adfb
BLAKE2b-256 d930b5f3b59848b49806e589969bad49965aeae881bb4ae3048821e8ad636e72

See more details on using hashes here.

File details

Details for the file maixpy-4.11.4-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for maixpy-4.11.4-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 068e91374e69df6a56db71c82265bc3430552a0d8598853af9fb159e8a61e8a3
MD5 25a98ac5f96709386cc4af4d2d1649ac
BLAKE2b-256 163ceca34101c97d6736db02514b89e4dbcabf70ea50b737884f6a96893c0b3b

See more details on using hashes here.

Release history Release notifications | RSS feed

4.12.5

5 files

4.12.4

5 files

4.12.1

7 files

4.12.0

7 files

4.11.9

7 files

4.11.8

7 files

4.11.7

7 files

4.11.6

7 files

4.11.5

6 files

This release

4.11.4 This release

5 files

4.11.3

6 files

4.11.2

5 files

4.11.1

5 files

4.11.0

5 files

4.10.3

6 files

4.10.2

6 files

4.10.1

6 files

4.10.0

6 files

4.9.3

6 files

4.9.2

6 files

4.9.1

6 files

4.9.0

4 files

4.8.2

6 files

4.8.1

4 files

4.8.0

6 files

4.7.8

6 files

4.7.7

6 files

4.7.6

6 files

4.7.5

6 files

4.7.3

6 files

4.7.2

6 files

4.7.1

4 files

4.7.0

4 files

4.6.0

6 files

4.5.1

6 files

4.5.0

4 files

4.4.22

6 files

4.4.21

4 files

4.4.20

6 files

4.4.19

6 files

4.4.18

6 files

4.4.17

6 files

4.4.16

6 files

4.4.15

6 files

4.4.13

6 files

4.4.12

6 files

4.4.11

4 files

4.4.10

6 files

4.4.9

4 files

4.4.8

4 files

4.4.7

4 files

4.4.6

4 files

4.4.5

4 files

4.4.2

4 files

4.4.0

4 files

4.3.7

6 files

4.3.6

4 files

4.3.5

4 files

4.3.4

6 files

4.3.3

2 files

4.3.2

2 files

4.2.1

1 file

4.1.4

1 file

4.1.3

1 file

4.1.2

1 file

4.1.0

1 file

4.0.11

1 file

4.0.10

1 file

4.0.7

1 file

4.0.6

1 file

4.0.5

2 files

4.0.4

1 file

4.0.3

2 files

4.0.2

1 file

4.0.1

1 file

4.0.0

3 files

0.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page