# MaixPy
**Repository Path**: QTDesign/MaixPy
## Basic Information
- **Project Name**: MaixPy
- **Description**: Maixpy 的目的是让 AIOT 编程更简单, 基于 Micropython 语法, 运行在一款有着便宜价格的高性能芯片 K210 上.
- **Primary Language**: Python
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 22
- **Forks**: 3
- **Created**: 2020-10-14
- **Last Updated**: 2025-04-14
## Categories & Tags
**Categories**: iot
**Tags**: None
## README
## Simple code
Find I2C devices:
```python
from machine import I2C
i2c = I2C(I2C.I2C0, freq=100000, scl=28, sda=29)
devices = i2c.scan()
print(devices)
```
Take picture:
```python
import sensor
import image
import lcd
lcd.init()
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.run(1)
while True:
img=sensor.snapshot()
lcd.display(img)
```
Use AI model to recognize object:
```python
import KPU as kpu
import sensor
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.set_windowing((224, 224))
model = kpu.load("/sd/mobilenet.kmodel") # load model
while(True):
img = sensor.snapshot() # take picture by camera
out = kpu.forward(task, img)[:] # inference, get one-hot output
print(max(out)) # print max probability object ID
```
> please read doc before run it
## Release
See [Releases page](https://github.com/sipeed/MaixPy/releases)
Get latest commit firmware: [master firmware](http://dl.sipeed.com/MAIX/MaixPy/release/master/)
Custom your firmware, see [build](#build-from-source) or use [online custom tool](#use-online-compilation-tools-to-customize-firmware)
## Documentation
Doc refer to [maixpy.sipeed.com](https://maixpy.sipeed.com)
## Examples
[MaixPy_scripts](https://github.com/sipeed/MaixPy_scripts)
## Build From Source
See [build doc](build.md)
The historic version see [historic branch](https://github.com/sipeed/MaixPy/tree/historic) (No longer maintained, just keep commit history)
## Use online compilation tools to customize firmware
Go to [maixhub.com](https://www.maixhub.com/compile.html) to use online compilation to customize the functions you need
## Model hub: Maixhub.com
Find more models on [Maixhub.com](https://maixhub.com)
## License
See [LICENSE](LICENSE.md) file
## Other: As C SDK for C developers
In addition to the source code of the `MaixPy` project, since `MaixPy` exists as a component, it can be configured to not participate in compilation, so this repository can also be developed as `C SDK`. For the usage details, see [Building Documentation](build.md), which can be started by compiling and downloading `projects/hello_world`.
The compilation process is briefly as follows:
```
wget http://dl.cdn.sipeed.com/kendryte-toolchain-ubuntu-amd64-8.2.0-20190409.tar.xz
sudo tar -Jxvf kendryte-toolchain-ubuntu-amd64-8.2.0-20190409.tar.xz -C /opt
cd projects/hello_world
python3 project.py menuconfig
python3 project.py build
python3 project.py flash -B dan -b 1500000 -p /dev/ttyUSB0 -t
```