Makecode Arcadeがすごい!本体を最安で自作する

2022年2月11日

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

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

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

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

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

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

昔遊んだゲームボーイは中身がギッチギチに詰まっている感じがしました。しかし、私が作ったハードウェアは自作基盤の上に液晶とボタンとCPU基板が乗っているだけのスカスカな本体です。

第1号のゲーム機本体は下の写真のような感じです。

表面
裏面

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

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

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

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

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

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

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

本体の電源をつなぐためにUSBタイプCケーブルとUSB電源が必要ですが、スマートフォンのものが流用できます。本体の写真のようにUSBモバイルバッテリーを使うのも良いと思います。

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

合計は1650円となり完成品よりも安価ですが、(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ケーブルでも書き込めると情報がありますが、私はできませんでした。数百円の部品なので買っておいたほうが確実に良いです。

ソフトウェアの自作

この自作ゲーム機は自作のソフトウェアが動きます。私もボンバーマンみたいなソフトを作って見ました。リンク先でプレイできるので試してみてください。

ソフトウェアの作り方は直観的なのでわかると思いますが、そのうち詳しい方法をまとめようと思います。

ソフトウェアのインストール

作ったソフトウェアは上のボンバーマンのようにブラウザからも遊べますが、自作ゲーム機にインストールして遊ぶこともできます。

インストールは簡単です。

例えば、上のボンバーマンの例だと、ページの中央上にあるEdit Codeボタンを押します。画面が開発用の画面に遷移しますので今度は左下のダウンロードボタンを押します。

「ハードウェアを選んでください」画面になるので、この機器の場合だと一番下の「F4」を選びます。F4を選ぶと自動でコードのコンパイルが実行されて、拡張子が.uf2の実行ファイルがダウンロードされます。

次にゲーム機本体をPCにUSBケーブルで接続します。接続するとPCからはUSBフラッシュメモリーのように見えますので、このドライブに先ほどの.uf2ファイルをコピーします。

コピーが完了するとゲーム機本体は自動で接続を切って再起動します。再起動するとゲームが実行されます。

まとめ

この記事ではmake code arcadeのゲーム機本体の作り方とソフトウェアについてちょっと説明しました。

私もまだ初めたばかりなのでもう少しやりこんで記事を増やしていきたいです。