Archiv für den Monat Februar 2019

Sipeed MAix BiT for RISC-V AI+IoT

Heute eingetroffen:

Sipeed MAix BiT Front

Sipeed MAix BiT Back

Was hat Sipeeds MAix BiT zu bieten?

MAix’s CPU

Kendryte K210 system-on-chip (SoC), bietet folgende Features:

  • Dual-Core RISC-V 64bit IMAFDC
  • 8 MB high-speed SRAM
  • max. 800 MHz Clock
  • KPU (Neural Network Processor)
  • APU (Audio Processor)
  • Flexible FPIOA (Field Programmable IO Array) for GPIO Mapping
  • DVP camera and MCU LCD interface
  • Accelerators and peripherals: AES Accelerator, SHA256 Accelerator, FFT Accelerator (not APU’s one), OTP, UART, WDT, IIC, SPI, I2S, TIMER, RTC, PWM, etc

MAix’s Module integrates K210, 3-channel DC-DC power, 8MB/16MB/128MB Flash (M1w module add wifi chip esp8285 on it) into Square Inch Module.

M1 Module

Sipeed MAix BiT Development Board

Integriert USB2UART Chip, Auto-Download Schaltung, RGB LED, DVP Camera FPC Anschluss für FPC camera und Standard M12 Kamera), MCU LCD FPC Anschluss (für 2.4 inch QVGA LCD), SD Card Slot (Bild oben).

MAix’s SoftWare

  • MAIX wird durch ein Standalone SDK, FreeRTOS SDK auf Basis von C/C++ unterstützt.
  • Ein MicroPython Port unterstützt FPIOA, GPIO, TIMER, PWM, Flash, OV2640, LCD, etc. Das MaixPy Projekt und die MaixPy Dokumentation stehen auf Github zur Verfügung.

Ich bin gespannt auf die ersten Schritte in diesem neuen Umfeld…

Externer ADC am ESP32

In einem früheren Post hatte ich das ADDA-Subsystem des ESP32 untersucht und konnte nur wenig überzeugende Resultate präsentieren.

Ich habe die Messungen an einem neuen ESP32_Core_board v2 wiederholt. Die Resultate waren vergleichbar zur letzten Untersuchung.

ESP32 DAC-ADC-Characteristics

Im ESP32 Forum habe ich einen Hinweise zum Thema gefunden (https://www.esp32.com/viewtopic.php?f=2&t=4784&hilit=adc+accuracy) und eine Polynomapproximation der Kennlinie auf Github.

Diese Funktion habe ich in meinen Test eingebaut und die folgenden Ergebnisse erzielt:

ESP32 DAC-ADC-Characteristics

Schon in der Gesamtcharakteristik ist eine verbleibende Nichtlinearität zu erkennen, die im Detailbild noch deutlicher wird. Die Trendlinie zeigt eine Korrekturmöglichkeit am Gain. Es bleiben aber die nichtlineare Abweichungen , die allenfalls durch ein angepasstes Polynom reduziert werden könnten.

ESP32 DAC-ADS1015-Characteristics – Abweichung der ADC Spannung

Eine Alternative ist ein externer ADC. Ich verwende einen 12-bit ADC ADS1015, den es als Breakout Board von Adafruit u.a. gibt.

Adafruit ADS1915

Das Testprogramm ESP32_DAAD_ext_Test.ino ist auf Github abgelegt.

Die Resultate sehen folgendermassen aus:

ESP32 DAC-ADS1015-Characteristics

Erwartungsgemäss bekommen wir eine lineare Kennlinie, die aber bei näherem Hinsehen mit einem Offset und einem Gain behaftet ist, wie die folgende Darstellung besser zeigt.

ESP32 DAC-ADS1015-Characteristics – Abweichung der ADC Spannung

Diese Eigenschaften lassen sich kalkulatorisch ausgleichen und wir erhalten schliesslich Abweichungen im Bereich weniger mV.

Abweichung der ADC Spannung nach Offset- und Gain-Korrektur