Réception du kit SiPeed MAIX GO

(Bloc notes éditables au fur et à mesures de mes expérimentations)

La société chinoise SiPeed (le site s’affiche très mal avec firefox chez moi, par contre chromium marche mieux) lançait une campagne de crowdfunding en novembre dernier pour construire un kit de developpement à base de module Kendryte K210 muni d’un double cœurs Risc-V 64bits.

Pour $50 on pouvait acquérir un kit complet muni de :

  • La carte électronique SiPeed MAIX GO
  • un réseau de microphones
  • Un simple micro + HP
  • Un écran LCD + touchscreen
  • Une simple caméra
  • Une carte double caméras stéréo
  • Une antenne wifi et toute la visserie nécessaire pour faire un boîtier


Voici donc le contenu du colis reçu après deux mois de retard (ce qui n’est pas non plus exceptionnel dans ce genre de campagne de crowdfunding):

Contenu de la boite M1W

Une notice de montage est fournie sous forme de vidéo youtube (encore …).

Le kit complet
La carte «mère» et son fameux module SIPEED M1W

À l’allumage on détecte quelques trucs sur le dmesg

$ dmesg
[21758.478583] usb 3-2: new full-speed USB device number 4 using xhci_hcd
[21758.620109] usb 3-2: New USB device found, idVendor=c251, idProduct=f001
[21758.620113] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[21758.620116] usb 3-2: Product: CMSIS-DAP
[21758.620118] usb 3-2: Manufacturer: CMSIS-DAP by ARM
[21758.620119] usb 3-2: SerialNumber: 0001A0000000
[21758.620902] cdc_acm 3-2:1.0: ttyACM0: USB ACM device
[21758.622685] hid-generic 0003:C251:F001.0006: hiddev0,hidraw3: USB HID v1.00 Device [CMSIS-DAP by ARM CMSIS-DAP] on usb-0000:00:14.0-2/input2

Il est possible de se connecter au port série trouvé et on obtient un message du programme déjà chargé dans le kit :

$ kermit
C-Kermit 9.0.302 OPEN SOURCE:, 20 Aug 2011, for Linux+SSL+KRB5 (64-bit)
 Copyright (C) 1985, 2011,
  Trustees of Columbia University in the City of New York.
Type ? or HELP for help.
(/home/fabien/) C-Kermit>c
Connecting to /dev/ttyACM0, speed 115200
 Escape character: Ctrl-\ (ASCII 28, FS): enabled
Type the escape character followed by C to get back,
or followed by ? to see other options.
----------------------------------------------------

 __  __              _____  __   __  _____   __     __ 
|  \/  |     /\     |_   _| \ \ / / |  __ \  \ \   / /
| \  / |    /  \      | |    \ V /  | |__) |  \ \_/ / 
| |\/| |   / /\ \     | |     > <   |  ___/    \   /  
| |  | |  / ____ \   _| |_   / . \  | |         | |   
|_|  |_| /_/    \_\ |_____| /_/ \_\ |_|         |_|
Official Site:http://www.sipeed.com/
Wiki:http://maixpy.sipeed.com/
[MAIXPY]Pll0:freq:320666666
[MAIXPY]Pll1:freq:159714285
[MAIXPY]Flash:0xc8:0x17
[MAIXPY]:Spiffs Mount successful 
[MAIXPY]LCD:init

MicroPython 3b5c45649-dirty on 2018-11-15; Sipeed_M1 with kendryte-k210
Type "help()" for more information.
>>> 

Par contre, pour le moment, impossible d’écrire quoi que ce soit sur la console avec kermit. Michael Wilkinson donne quelques indices quand à ce problème dans les commentaires d’indiegogo :

«Michael Wilkinson 6 days ago

I’ve received my ALL IN ONE as well today. Quick tip: If you are having trouble connecting to the REPL out of box over serial, make sure you are using 115200 baud and hardware flow control or you’ll get nothing. From the schematic it appears that DTR and RTS are wired to BOOT and RST and so must be actively controlled. Might only be a thing on the MAIX GO boards which have a dedicated STM32 JTAG/UART bridge chip on them.»

Visiblement il suffirait d’activer le contrôle de flux pour que ça puisse marcher correctement.

Sentry donne une solution sur le forum sipeed. En utilisant un petit script python qui appel miniterm en désactivant les ligne dtr et rts on arrive à se logger correctement sur la carte.

import serial.tools.miniterm as MTM

MTM.main(default_port='/dev/ttyACM0',
        default_baudrate=115200,
        default_dtr=False,
        default_rts=False)

Le script se lance ensuite simplement avec python (2.7 chez moi) :

$ python sipeedcom.py 
--- forcing DTR inactive
--- forcing RTS inactive
--- Miniterm on /dev/ttyACM0  115200,8,N,1 ---
--- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---

 __  __              _____  __   __  _____   __     __ 
|  \/  |     /\     |_   _| \ \ / / |  __ \  \ \   / /
| \  / |    /  \      | |    \ V /  | |__) |  \ \_/ / 
| |\/| |   / /\ \     | |     > <   |  ___/    \   /  
| |  | |  / ____ \   _| |_   / . \  | |         | |   
|_|  |_| /_/    \_\ |_____| /_/ \_\ |_|         |_|
Official Site:http://www.sipeed.com/
Wiki:http://maixpy.sipeed.com/
[MAIXPY]Pll0:freq:320666666
[MAIXPY]Pll1:freq:159714285
[MAIXPY]Flash:0xc8:0x17
[MAIXPY]:Spiffs Mount successful 
[MAIXPY]LCD:init

MicroPython 3b5c45649-dirty on 2018-11-15; Sipeed_M1 with kendryte-k210
Type "help()" for more information.
>>> help()
Welcome to MicroPython on the Sipeed Maix One!

For generic online docs please visit http://maixpy.sipeed.com/

Official website : www.sipeed.com

Current installed module:
os modules:Built-in system operation module and file operation method
machine module:Built in some machine related modules
socket modules:Network operation method
app modules   :Provide some applications

Control commands:
  CTRL-A        -- on a blank line, enter raw REPL mode
  CTRL-B        -- on a blank line, enter normal REPL mode
  CTRL-C        -- interrupt a running program
  CTRL-D        -- on a blank line, do a soft reset of the board
  CTRL-E        -- on a blank line, enter paste mode

For further help on a specific object, type help(obj)
For a list of available modules, type help('modules')
>>> help('modules')
object modules is of type str
  encode -- <function>
  find -- <function>
  rfind -- <function>
  index -- <function>
  rindex -- <function>
  join -- <function>
  split -- <function>
  splitlines -- <function>
  rsplit -- <function>
  startswith -- <function>
  endswith -- <function>
  strip -- <function>
  lstrip -- <function>
  rstrip -- <function>
  format -- <function>
  replace -- <function>
  count -- <function>
  partition -- <function>
  rpartition -- <function>
  center -- <function>
  lower -- <function>
  upper -- <function>
  isspace -- <function>
  isalpha -- <function>
  isdigit -- <function>
  isupper -- <function>
  islower -- <function>
>>> 

Pour quitter miniterm faire un Ctrl+] ou éteindre le maixpy.

La documentation de MaixPY est disponible en anglais ici.

Ressources:

Ce contenu a été publié dans Non classé, avec comme mot(s)-clé(s) , , , , , . Vous pouvez le mettre en favoris avec ce permalien.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *