Giter VIP home page Giter VIP logo

maixpy's Introduction




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

maixpy's People

Contributors

neutree avatar junhuanchen avatar trekmax avatar marstechhan avatar xelll avatar takeru avatar lowlevel-1989 avatar chegewara avatar vamoosebbf avatar ganhailin avatar sanxml avatar nongxiaoming avatar marconi1964 avatar lixin7 avatar mongonta0716 avatar smuehlst avatar mtikekar avatar hwang215 avatar chahatdeep avatar kartben avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.