0

members

Easy Basics: Project 083d Sipeed Maixduino Kit for RISC-V AI and IoT

of Acoptex.com in ESP8266 ESP-32

Basics: Project 083d

Project name: Sipeed Maixduino Kit for RISC-V AI and IoT

Tags: Arduino, Sipeed Maixduino Kit for RISC-V AI and IoT, seeedstudio, Artificial intelligence, AI, IOT, Internet of things, learning Maix with Arduino IDE, Arduino IDE

Attachments: none

In this project, you need these parts :

1. Sipeed Maixduino Kit for RISC-V AI + IoT 1 pc

2. Arduino IDE (you can download it here)

3. USB Type C cable 1 pc

4. Micro SD card and SD card adapter 1 pc

General

Seeed Studio has now released the board with Kendryte K210 RISC-V AI processor, based on Arduino UNO form factor and equipped with an ESP32 module for WiFi and Bluetooth connectivity. We will review the RISC-V 64 development board for AI + IoT applications - Sipeed Maixduino in this project. The estimated availability date is 17th of June 2019 but you can do pre order on seeedstudio.com website. 

The price of this developement board is not very high, just 23.90 USD and it's very good for AI + IoT applications. The package includes Maixduino development board, OV2640 camera module and 2.4 inch LCD TFT display. By default, the LCD (24pin interface) of the st7789 driver chip is used with a resolution of 320x240.

Let's get some idea about AI first.

Artificial intelligence (AI)

As described in Wikipedia "In computer science, artificial intelligence (AI), sometimes called machine intelligence, is intelligence demonstrated by machines, in contrast to the natural intelligence displayed by humans. Colloquially, the term "artificial intelligence" is used to describe machines/computers that mimic "cognitive" functions that humans associate with other human minds, such as "learning" and "problem solving"".

So basically AI is a computer system or other machine able to perform tasks that ordinarily require human intelligence - like planning, learning, reasoning, problem solving, knowledge representation, perception, motion, manipulation and even social intelligence and creativity. AI is incorporated into a variety of different types of technology. Seeedstudio mainly focus on the types that more closely related to hardwares.

Understanding the Sipeed Maixduino Kit for RISC-V AI + IoT

What is Maixduino

Maixduino makes the Arduino IDE and libraries support the Maix series of development boards (k210 chips), making it easy to use a large number of existing open source Arduino libraries for rapid development and prototyping.

The Maixduino is a RISC-V 64 development board for AI + IoT applications which is based on MAIX Module. Different with other Sipeed MAIX development boards, Maixduino was designed in an Arduino Uno form factor, with ESP32 and MAIX AI modules together on board.

MAIX is Sipeed' s purpose-built product series designed to run AI at the edge. Move AI models from cloud down to devices on the edge of the network where they can run faster, at lower cost, and with greater privacy. MAIX isn't just a hardware solution, it combines custom hardware, open software, and state-of-the-art AI algorithms. Different kinds of dev. boards, kits, peripherals as well as wide compatibility enable rapid and agile prototype development, make AIoT projects much easier. And thanks to MAIX' s performance, small footprint, low power, and low cost, it enables the broad deployment of high-quality Edge AI.

Features:

  • CPU: RISC-V Dual Core 64bit, with FPU; 400MHz neural network processor
  • QVGA@60FPS/VGA@30FPS image identification
  • Onboard ESP32 module support 2.4G 802.11. b/g/n and Bluetooth 4.2
  • Arduino Uno form factor, Arduino compatible interface
  • Onboard omnidirectional I2S digital output MEMS Microphone
  • 24P 0.5mm FPC connector for DVP Camera
  • 8bit MCU LCD 24P 0.5mm FPC connector
  • Support self-elastic micro SD card holder
  • Reset and boot button; 3W DAC+PA Audio output
  • Just connect the USB Type-C cable to complete the download
  • Machine vision based on convolutional neural network
  • High performance microphone array processor for machine hearing
  • Support MaixPy IDE, Arduino IDE, OpenMV IDE, and PlatformIO IDE
  • Support Tiny-Yolo, Mobilenet and TensorFlow Lite for deep learning

Applications:

  • Smart Home applications like robot cleaners, smart speakers, electronic door locks, household monitoring etc.
  • Medical Industry  applications like Auxiliary diagnosis and treatment, medical image recognition, emergency alarm etc.
  • Smart Industry applications like industrial machinery, intelligent sorting, monitoring of electrical equipment, etc.
  • Education applications like educational robots, intelligent interactive platforms, educational efficiency inspection, various DIY projects etc.
  • Agriculture applications like agricultural monitoring, pest and disease monitoring, automated control, etc.

Specification:

  • Master module -Sipeed MAIX-I AIoT module
  • Power input - USB Type-C, DC-DC step-down circuit: support 6-12V input; provide 5V 1.2A output
  • Micro SD card(TF card) slot - Support Self-elastic card holder
  • Onboard MEMS microphone - MSM261S4030H0 is an omnidirectional, Bottom-ported, I2S digital output MEMS Microphone. It has high performance and reliability.
  • DVP Camera interface - 24P 0.5mm FPC connector
  • LCD connector - 8bit MCU LCD 24P 0.5mm FPC connector
  • Audio output -DAC+PA:TM8211:16 bit dynamic range;Low harmonic distortion; NS4150:3W output power;Up to 90% efficiency;
  • ESP32 module - Support 2.4G 802.11.b/g/n, 802.11 n (2.4 GHz) speeds up to 150 Mbps
  • Bluetooth v4.2 full standard, including traditional Bluetooth (BR/EDR) and Bluetooth Low Energy (BLE)
  • Supply voltage of external power supply 4.8V ~ 5.2V
  • Supply current of external power supply >600mA
  • Temperature rise <30K
  • Range of working temperature -30℃ ~ 85℃
  • MCU: ESP8285 Tensilica L106 32-bit MCU
  • Wireless Standard 802.11 b/g/n
  • Frequency Range 2400Mhz - 2483.5Mhz
  • TX Power(Conduction test) 802.11.b : +15dBm, 802.11.g : +10dBm(54Mbps), 802.11.n : +10dBm (65Mbps)
  • Antenna Connector IPEX 3.0x3.0mm
  • Wi-Fi mode Station/SoftAP/SoftAP+Station

Maixduino can be programmed with MaixPy IDE (MicroPython), Arduino IDE, OpenMV IDE, and PlatformIO IDE, and supports Tiny-Yolo, Mobilenet and TensorFlow Lite deep learning frameworks with QVGA @ 60fps or VGA @ 30fps image identification.

This development board has the TF card slot. You need to use the Micro SD card with fast speed, such as SD 2 generation protocol, Class10 memory card.

You can find Maixduino specification here. Kendryte K210 datasheet located here. Kendryte Standalone SDK Programming Guide located here and Kendryte FreeRTOS SDK Programming Guide located here.

Kendryte K210 FreeRTOS SDK v0.7.0 located here.

Kendryte K210 Standalone SDK v0.5.6 located here.

Signals and connections of the Sipeed Maixduino Kit for RISC-V AI + IoT


Maxduino pinout

Sipeed M1 pinout. See detailed description about pins here.

ADC - Analog to Digital Converter or Analog pins.This devepment board has 5.

GND - Ground pin.

RST - Reset pin.

Vin - External power supply pin 6V

I2C - It has dedicated pins available for two-wire I2C communication. One pin is used for data transfer (SDA) and another pin is used for clock synchronization (SCL). 

Pin 0, Pin 1 - hardware serial communication pins.

5V, 3V3 - power supply pins.

ESP32-WROOM-32 - ESP32-WROOM-32 module soldered to the development board. Optionally ESP32-WROOM-32D, ESP32-WROOM-32U or ESP32-SOLO-1 module may be soldered instead of the ESP32-WROOM-32.

Reset button - to reset the development board

BOOT button - to upload the firmware/sketch

USB type C port - USB interface. It functions as the power supply for the board and the communication interface between PC and the ESP module.

Step by step istruction

The Arduino environment has to be set up to make it compatible with the Sipeed Maixduino Kit for RISC-V AI + IoT.

1. Installing add-on in Arduino IDE (Windows 10 OS)

  1. Download and install the latest Arduino IDE Windows Installer from arduino.cc
  2. Open Arduino IDE. 
  3. Open the Preferences window from the Arduino IDE. Go to File -> Preferences.
  4. Enter http://dl.sipeed.com/MAIX/Maixduino/package_Maixduino_k210_index.json into Additional Board Manager URLs field
    try this URL if the download speed is too slow:
    http://dl.sipeed.com/MAIX/Maixduino/package_Maixduino_k210_dl_cdn_index.json
    or try this URL if the download speed is too slow:
    http://dl.sipeed.com/MAIX/Maixduino/package_Maixduino_k210_dl_cdn_index.json and click OK button. If you already have a URL in there, and want to keep it, you can separate multiple URLs by placing a comma between them. 

  5. Open Boards manager. Go to Tools -> Board -> Boards Manager…

  6. There should be a couple new entries in addition to the standard Arduino boards. Look for Maixduino or scroll down to the Maixduino entry (usually at the bottom). Select the Maixduino entry. When you click it an install option will appear. Select the latest version and click Install button. 
  7. It may take a few minutes to download and install (the archived file is ~54MB). Once the installation has completed, an Arduino-blue INSTALLED will appear next to the entry.
  8. Click on Close button.
  9. Open Boards manager. Go to Tools -> Board -> and you can see that the Maixduino board installed in your Arduino IDE.

2. Uploading sketch to Maixduino development board

  1. Do wiring.
  2. Plug the Maixduino development board to your PC and wait for the drivers to install (or install manually any that might be required).
  3. Open Arduino IDE.
  4. Open Boards manager. Go to Tools -> Board -> and select the board (in our case it’s the )
  5. Check the settings: for the Sipeed Maix Go board the Burn Tool Firmware by default is open-ec, Burn Baudrate - decrease it if the download fails, Programmer - you MUST select k-flash.
  6. Select COM port that the board is attached to (if you don’t see the COM Port in your Arduino IDE, you need to install the drivers). CH340/CH341USB to serial port WINDOWS driver, support 32/64 bit Windows 10/8.1/8/7/VISTA/XP, SERVER 2016/2012/2008/2003, 2000/ME/98, Microsoft digital signature authentication, support USB Transfer to 3-wire and 9-wire serial ports for distribution to end users. You can download it here.
  7. Open sketch, compile and upload it to your development board. If everything went as expected, you should see a “Done uploading” message. (You need to hold the development board on-board Boot button while uploading).
  8. Press the development board on-board Reset button to reboot it. 

Summary

We have learnt about the RISC-V 64 development board for AI + IoT applications - Sipeed Maixduino, we have also learnt how to install the board in Arduino UNO and how to upload the sketch to it.

The specifications and features of RISC-V 64 development board for AI + IoT applications are very impressive. It's a good development board to buy.

We are going to publish a new project with this development board soon on how to upload the firmware to it.

Libraries

  • No libraries required for this project

Sketch

  • None


Other projects of Acoptex.com
Easy Basics: Project 086d ESP-12E module, BME280 sensor - Web server of Acoptex.com in ESP8266 ESP-12 18-07-2019

« Go back to category
Is this project fake? Report it!   
Recommend to a friend
Published at 16-06-2019
Viewed: 337 times