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.1-cp313-cp313-manylinux2014_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.13

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

Uploaded CPython 3.12

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

Uploaded CPython 3.10

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

Uploaded CPython 3.9

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

Uploaded CPython 3.8

File details

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

File metadata

File hashes

Hashes for maixpy-4.11.1-cp313-cp313-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e533c94e704a961f2640bd9229555d2fc8498ad94737915211412218cda77765
MD5 25365379bb8fb04163093268904acf99
BLAKE2b-256 0c2cfe72c9e8a837ab83ff558054d2c6b4256da76efe25953854812021367588

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for maixpy-4.11.1-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6e7fc97ffe3e4051b7afbe8504dd42105c85c48681c8bbf7d786c5c2cdf8124f
MD5 511eafac9f0e694819ce2cbcffb7b502
BLAKE2b-256 8f438e586d0792d850b60588e81742a3a483f219847faa0ceab5e2b7bf4eb4da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for maixpy-4.11.1-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dfd89c4a1770e51b5b2754aa36bf76c47482d9209afb3c62cc6218707e72aee0
MD5 6bb5bb809c131fbc5b76aad3933f5113
BLAKE2b-256 5003e412e45c1c792d60cfd7f4da02e3ffb7cc92e57da6f435301f79b4964818

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for maixpy-4.11.1-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 764a787cffc953648f12a522317f913e9f7060eb7182aef1ed84491b8bbabfc9
MD5 363c10dc3340e6a0a1adc2710acdec1b
BLAKE2b-256 03b6a74769c1e04f36909a1e21645417d25f0c5ffdb7e4383d2ae14391c8b0ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for maixpy-4.11.1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ee02d1e6f9e7802535fab3b0556cb456963cbf47da36b3d77e8e4dbd39892384
MD5 851a6ee49d4951187fd7cd8189239bee
BLAKE2b-256 0d397bbecd9410c378862eea7a9b6acc6a5c0311364e656355781496b777a4c5

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

4.11.4

5 files

4.11.3

6 files

4.11.2

5 files

This release

4.11.1 This release

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