0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

MILK-V:極小 RISC-Vデバイスを試す

Last updated at Posted at 2025-05-20

Milk-V Duo 256M を偶然発見

ちょうど東京方面へ出社する用があったので、ついでに秋月によってMOSFETでも買おうと、いろいろ探している時にとても惹かれるものを見つけた。

image.png

このサイズでLinuxが動いて256Mも使えるんですか!しかも1TOPSのNPUまで乗ってるって。
1TOPSがどの程度の処理できるか知らんが、すげーな。

いや、確かに256Mじゃぁ難しいもは動かないけどなんかLinuxサーバとしては動くんじゃないの…。

公式情報ページのピン情報見るといろいろできそうでワクワクしますね。
image.png

購入

ということで、帰宅途中に秋月に寄って買ってきました。

ホームページで「色はランダムで選べない」と記載があります。いくつか眺めたところ、店頭にある商品の箱はピンク色でした。
中が違う色だったらいいなぁと思いつつ、あけるとばっちりピンクでした。

起動まで

日本は変態がたくさんいるので、すでに試している方がいるようです。ありがたい!
先達の手順をそのまままねることにします。

イメージ書き込み

image.png

起動

書き込みには成功しまして、起動します。
起動しますといってもUSBにぶすっとさすだけです。青いランプが点滅を始めたらログインのためにSSHをうちます。2025年5月時点では何もせずにSSHがとおってログインできました。

そののち、sshを打ちます。** え…パスワード... ** 往年の間でいくつかためしたところ、正解はmilkvでした。

> ssh root@192.168.42.1
root@192.168.42.1's password: ここでmilkvを入力
[root@milkv-duo]~# ls
[root@milkv-duo]~# pwd
/root

…早い。

[root@milkv-duo]~# cat /proc/cpuinfo
processor       : 0
hart            : 0
isa             : rv64imafdvcsu
mmu             : sv39

改めてスペックは以下のような感じ。RISC-VでCPUは2つ載せているけど一つはハード周りの制御で仕事しているらしい。

Duo 256M
SoC SG2002
RISC-V CPU C906@1Ghz + C906@700MHz
Arm CPU 1 x Cortex-A53@1GHz
MCU 8051@6KB SRAM
TPU 1TOPS@INT8
Memory SIP DRAM 256MB
USB 1 x Type-C for power and data, USB Pads available

Lチカ

ちょっくらPINの状態を見ます。コマンドduo-pinmuxで確認できるようです。
これで確認するとGP14があまり使ってなさそうです。

[root@milkv-duo]~# duo-pinmux -l
GP0 function:
[ ] CV_SCL0
[v] UART1_TX
[ ] UART2_TX
[ ] GP0
[ ] WG0_D0
[ ] DBG_10

GP1 function:
[ ] CV_SDA0
[v] UART1_RX
[ ] UART2_RX
[ ] GP1
[ ] WG0_D1
[ ] WG1_D0
[ ] DBG_11

…中略…

GP14 function:
[ ] SDIO0_PWR_EN
[v] GP14

…後略…

裏返してみると…GP14は後ろから2番目ですね。
3番目のGNDとGP14にLEDをつなぎます。

マイコンあるあるでややこしいのですが、GPの番号となにやらPIN番号は違うということで、以下の表からGP14のNUMを確認します。494のようです。
https://milkv.io/zh/docs/duo/getting-started/duo256m

GP14を出力用に設定していきます。

[root@milkv-duo]/sys/class/gpio# ls
export  gpio354  gpiochip352  gpiochip384  gpiochip416  gpiochip448  gpiochip480  unexport
[root@milkv-duo]/sys/class/gpio# echo 494 > export
export  gpio354  gpio494  gpiochip352  gpiochip384  gpiochip416  gpiochip448  gpiochip480  unexport
[root@milkv-duo]/sys/class/gpio# echo "out" > gpio494/direction

これで、0や1を書き出すとLEDがON/OFFされます。LinuxからGISPをArduinoのように容易に触れるのは私にとっては少し新鮮です。

[root@milkv-duo]/sys/class/gpio# echo "0" > gpio494/value
[root@milkv-duo]/sys/class/gpio# echo "1" > gpio494/value

PXL_20250516_144340934.jpg

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?