Makecode Arcadeがすごい!さっそく自作しました

2021年8月4日

この記事ではMicrosoft のMakecode arcadeについて書きます。

MakecodeはMicrosoftが作ったScracheなどのブロック言語でプログラムを作ることができる枠組みです。MicrosoftのMakecodeのウェブサイトではMicrobitやMincraftのプログラムミングをすることができます。

Makecode Arcadeはそれらのプログラミング環境のうちの1つですが、主にゲームをプログラミングすることを目的にしたプログラムイング環境です。簡単に昔のゲームボーイのような携帯ゲーム機が作れてしまいます。

この記事ではMakeCode Arcadeのゲーム機とその機器用にゲームを作ったので、それについて説明します。

Makecode Arcade用ゲーム機器(ハードウェア)の自作

私は今40代のおじさんですが、私くらいの年代ならばゲームボーイで遊んだことがあると思います。Makecode Arcadeではそれと同じようなハードウェア(カラー画面)が一般人でも簡単に作れてしまいます。

ゲームボーイは単3電池込ですが、中身がギッチギチに詰まっている感じがしました。しかし、私が作ったハードウェアは自作基盤の上に液晶とボタンとCPU基板が乗っているだけです。

Arcadeのハードウェアにはいくつか種類があり(主にCPUの違い)それに合わせてソフトウェアのコンパイル方法が変わります。実は完成品も売っているので自作がめんどくさい人はそちらを買ってもOKです。

有名な物だとスイッチサイエンスのとか。これだと国内の販売サイトで買えます。

値段は5104円なのでゲームボーイと同等の性能と考えると妥当なんですが、せっかくなら安さを追求したいと思い、自作してみました。

ハードウェアの自作にあたり下のサイトを参考にさせてもらいました。ボタンのピンアサインなども真似させてもらいましたのでファームウェアがそのまま使えます。

このハードウェアの部品ですが、全てAliexpressで入手しました。いくらかかっているのか知りたかったので一覧にしてみました。

Aliexpressは中国のECサイトなので商品到着までに2〜3週間かかるのと、中国の企業に個人情報を渡すのがいやな人がいるかも知れません。一応国内でも同じものが買えるサイトを調べておいたのでその購入先も載せておきます。

品名金額(送料込み)国内
1CPUボード(STM32F411)1000円switch science
2液晶ディスプレイ(1.8インチ)530円aitendo
3タクトスイッチ(6個)100円秋月電子
4ブザー20円秋月電子
5USBケーブル(100円ショップ)100円
6モバイルバッテリー(100円ショップ)300円
合計2050円

これらの他にプリント基板を作る材料が必要ですが、手元にあるもので自作しましたので入っていません。その他にスペーサーやネジが必要ですが、平均すると1円単位になるので省きました。タクトスイッチとブザーは1ロット20個、10個なので必要個数で割った値段です。

合計は2050円となり完成品よりも安価ですが、1のCPUボードと2のディスプレイは半導体不足の影響で一時期に比べて数十%値上がりしています。時期を改めて計算するともっと安いかもしれません。

私はピンヘッダを使ってCPU基板とディスプレイの抜き差しができるようにしましたが、基板に直接はんだ付けしてもいいでしょう。ピンヘッダは全部で数百円ですが、省略すればコスト削減できます。

出来上がったゲーム機本体は下の写真のような感じです。

表面
裏面

ファームウェアのインストール

CPUボードにはmakecode arcade用のソフトウェアを動かすファームウェアをインストールする必要があります。インストールには次のものが必要です。

  • CPUボード本体(書き込み用ポートにピンヘッダのはんだ付けが必要)
  • Windows PC
  • STMicro Electronicsの書き込みソフト「Cube-Prog」
  • ST‐Link2

ST-Link2はCPU基板のSWD(Serial Wire Debug)端子の4本につなぎます。ST-Link2のSWD端子はピンヘッダがついていないのではんだ付け必須です。

ハードウェアの材料とは別にCPUにファームウェアを書き込む際にSTM32用のST-Link2が必要です。USBケーブルでも書き込めると情報がありますが、私はできませんでした。数百円の部品なので買っておいたほうが確実に良いです。

ソフトウェアの自作