• Stars
    star
    1,681
  • Rank 27,769 (Top 0.6 %)
  • Language
    Python
  • License
    Other
  • Created about 6 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

MicroPython for K210 RISC-V, let's play with edge AI easier




Master branch build status master build firmware Latest release version License
Good first issues Bug issues Enhancement issues

中文



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

MaixPy, makes AIOT easier!

Maixpy is designed to make AIOT programming easier, based on the Micropython syntax, running on a very powerful embedded AIOT chip K210.

There are many things you can do with MaixPy, please refer to here

K210 brief:

  • Image Recognition with hardware AI acceleration
  • Dual core with FPU
  • 8MB(6MB+2MB) RAM
  • 16MB external Flash
  • Max 800MHz CPU freq (see the dev board in detail, usually 400MHz)
  • Microphone array(8 mics)
  • Hardware AES SHA256
  • FPIOA (Periphrals can map to any pins)
  • Peripherals: I2C, SPI, I2S, WDT, TIMER, RTC, UART, GPIO etc.

maix bit

Simple code

Find I2C devices:

from machine import I2C

i2c = I2C(I2C.I2C0, freq=100000, scl=28, sda=29)
devices = i2c.scan()
print(devices)

Take picture:

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:

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

Get latest commit firmware: master firmware

Custom your firmware, see build or use online custom tool

Documentation

Doc refer to maixpy.sipeed.com

Examples

MaixPy_scripts

Build From Source

See build doc

The historic version see historic branch (No longer maintained, just keep commit history)

Use online compilation tools to customize firmware

Go to maixhub.com to use online compilation to customize the functions you need

Model hub: Maixhub.com

Find more models on Maixhub.com

License

See LICENSE 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, 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

More Repositories

1

NanoKVM

NanoKVM: Affordable, Multifunctional, Nano RISC-V IP-KVM
TypeScript
1,867
star
2

TinyMaix

TinyMaix is a tiny inference library for microcontrollers (TinyML).
C
877
star
3

MaixPy-v1_scripts

micropython scripts for MaixPy
Python
622
star
4

Maix-Speech

Maix Speech AI lib, a fast and small speech lib running on embedded devices, including ASR, chat, TTS etc.
Python
312
star
5

Maixduino

Arduino port on Maix board ( k210 )
C++
213
star
6

TangNano-9K-example

TangNano-9K-example project
GLSL
211
star
7

platform-gd32v

GD32V: development platform for PlatformIO
Python
182
star
8

MaixPy3

Python sdk for Sipeed Maix-II-Dock(v831). Other board please use https://github.com/sipeed/MaixPy
Python
173
star
9

kflash_gui

Cross platform GUI wrapper for kflash.py (download(/burn) tool for k210)
Python
150
star
10

MaixPy

Easily create AI projects with Python on edge device
Python
142
star
11

RV-Debugger-BL702

RV-Debugger-BL702 Project, an opensource debugger implement
C
140
star
12

TangPrimer-20K-example

TangPrimer-20K-example project
GLSL
129
star
13

sipeed_wiki

sipeed wiki:https://wiki.sipeed.com
JavaScript
94
star
14

TangNano-4K-example

TangNano-4K-example project
GLSL
87
star
15

Longan_GD32VF_examples

example project for Longan Nano (GD32VF)
C
85
star
16

Maix_Toolbox

Maix Toolbox: Collections of model scripts
Python
82
star
17

maix_train

k210(MaixPy)/V831 model example train code, include mobilenet classifier and YOLO V2 detector
Python
81
star
18

platform-kendryte210

Kendryte K210: development platform for PlatformIO
Python
78
star
19

MaixUI

This is the MicroPython UI framework.
Python
76
star
20

bl602-hal

Hardware Abstract Layer for BL602 RISC-V WiFi + BLE SoC in embedded Rust
Rust
75
star
21

LicheeRV-Nano-Build

LicheeRV-Nano-Build
C
75
star
22

Longduino

Longduino is an Arduino port for gd32v mcu.
C
69
star
23

libmaix

New MaixCDK will replace this repo: https://github.com/sipeed/MaixCDK
C++
68
star
24

Maix-EMC

Maix-EMC: Embedded Model Convertor, convert NN model for embedded systems
Python
66
star
25

sipeed_keyboard

sipeed opensource mechanical keyboard make with BL706
C
64
star
26

TangNano-20K-example

TangNano-20K-example
GLSL
64
star
27

Tang-Nano-examples

Tang-Nano-examples
GLSL
62
star
28

M1s_BL808_example

M1s_BL808_example
C
61
star
29

M1s_BL808_SDK

M1s(BL808)SDK
C
56
star
30

Tang-Nano-Doc

Document for Tang Nano FPGA board
CSS
56
star
31

TangMega-138KPro-example

Tang Mega 138K Pro examples
F#
52
star
32

sipeed2022_autumn_competition

sipeed2022_autumn_competition
47
star
33

MF1-User-Manual

MF1 Face Recognition Module User Manual
Python
46
star
34

Longan-DOC

Longan RV32 Boards Document
CSS
46
star
35

MaixCDK

C/C++ development kit for Sipeed Maix ecosystem boards
C
42
star
36

axpi_bsp_sdk

linux bsp app & sample for axpi (ax620a)
C
34
star
37

bl602-rust-guide

Instructions and examples for BL602 Rust support libraries
Rust
32
star
38

LicheePi4A

LicheePi4A info&sdk
32
star
39

TangPrimer-25K-example

TangPrimer-25K-example project
Verilog
31
star
40

TangMega-138K-example

TangMega-138K-example project
Verilog
28
star
41

Sipeed_HardWare

Sipeed_HardWare wiki
27
star
42

M0S_BL616_example

M0S BL616 example (M0S dock)
C
25
star
43

MF1_SDK

C
22
star
44

bl602-pac

Embedded Rust's Peripheral Access Crate for BL602 microcontrollers
Rust
19
star
45

R329-Tina-jishu

Roff
18
star
46

M0sense_BL702_example

M0sense_BL702_example
C
16
star
47

Maixduino_DOC

Docs of Maixduino
CSS
14
star
48

MaixPy_Doc_Us_En_Backup

Python
14
star
49

Tang-Hex-BSP

Tang-Hex-BSP: BSP for ZYNQ 7020 based FPGA Board Tang-Hex
13
star
50

sipeed2022_spring_competition

sipeed2022_spring_competition
Python
11
star
51

Maix-Keras-workspace

Keras workspace for Sipeed MAIX boards
Python
11
star
52

Maix-TF-workspace

Maix-TF-workspace: collections of tensorflow works
Python
11
star
53

rpyc_ikernel

more lightweight remote calling Python on jupyter.
Jupyter Notebook
11
star
54

Maix-Face-Uart-Lib

Sipeed Maix Uart Face Recognition Module/Firmware's Protocol Parse Library
C
10
star
55

TangNano-1K-examples

TangNano-1K-examples (GW1NZ-LV1)
GLSL
10
star
56

Tang-Hex-Doc

Tang-Hex-Doc: Documents for ZYNQ 7020 Based FPGA Board Tang-Hex
HTML
10
star
57

LonganPi-3H-SDK

LonganPi 3H SDK
Shell
7
star
58

MetaSense-ComTool

MetaSense A010's ComTool
Python
6
star
59

r329-linux-4.9

C
5
star
60

MaixSense_ROS

ROS package for MaixSense RGBD/ToF Sensor
C
5
star
61

M0P_BL618_examples

M0P_BL618_examples
C
5
star
62

LicheePi4A-Build

LicheePi4A-Build
C
5
star
63

libomv

Transplantation of openMV core algorithm imlib
C
5
star
64

Nano-Doc-Backup

The backup of Lichee Nano Doc,building with sphnix. http://nano.lichee.pro
Python
4
star
65

r329-target

Roff
3
star
66

ullama2.c

ullama2.c: run llama2 on MCUs (minimum 480KB SRAM)
3
star
67

r329-package

C
2
star
68

platform-riscv-e203

platform IDE for E203 RISC-V core, based on Lichee Tang board
2
star
69

BL702_Si2c_uart_translation

BL702 Slave i2c uart translation.
C
2
star
70

MaixPy_Doc_Zh_Cn_Backup

Python
2
star
71

TangMega-60K-example

TangMega 60K example
Verilog
1
star