ラベル Nibble の投稿を表示しています。 すべての投稿を表示
ラベル Nibble の投稿を表示しています。 すべての投稿を表示

2023年8月8日火曜日

DIYレトロゲーム機「Nibble」がやってきた! その2

前回からの続きです。


さて、ようやく届いたクラウドファンディングサイト「Makuake」でオーダーした、DIYレトロゲーム機「Nibble(ニブル)」。

この「Nibble」執筆時点では、まだコチラで購入できますよ~。

Nibble


ゲームをプログラミングして遊ぶことを目的で購入したのですが、キット(半完成品)なので、まずは組み立てないといけません。

対象年齢9歳以上の知育玩具という位置付けなので、半田付けの難易度も低いはず。

不器用なプログラマーの私でも無事組み立てることができるでしょうか?


なにはともあれ、作業前にシッカリとドキュメントを読みましょう。

「Nibble」の箱を開封すると最初に目につく一枚の紙、ドキュメント類をダウンロードするためのURLが表記されています。


https://circuitmess-japan.tokyo/nibble-guide/

ドキュメントのダウンロードURL


このページでは、以下の4つのドキュメントがダウンロードできます。

ちゃんと日本語なのでご安心を。


1.組み立てガイド - Nibble_JP_Build Guide.pdf

2.コーディング最初のステップ - Nibble_JP coding-first steps.pdf

3.プログラミングガイド - Nibble_JP Programming Guide.pdf

4.セットアップガイド - Nibble_JP Setup Guide.pdf


最初の「組み立てガイド」以外は、プログラミングに関するドキュメントのようですね。

それらが非常に気になりますが、今注目すべきは「組み立てガイド」。


熟読中…。


ふむふむ…。

全80ページにも及ぶ、相当に丁寧なドキュメント!

子供でも失敗しないように…という配慮が感じられて好感が持てます。

これなら、流石の私でも大丈夫か!?

では、このドキュメントに沿って「Nibble」の組み立て開始!!


まずはメイン基板を用意。

メイン基板


ドキュメントに沿うと、最初に実装するのはボタン類です。

これらは、細かい部品がパッケージされたビニール袋の中に入っています。

ボタン以外にも細かい部品が沢山!

無くさないように注意です。

ビニール袋の中の部品


これらの中からボタンを拾っていきましょう。

すると、ボタンとボタンキャップが8組出てきました。

実際は7組しか使わないので、1組は予備ですね、親切ぅ~!!

ボタンとボタンキャップ


せっかくのご厚意ですが…今回これらは使わないことにしました。

理由は、仕事で同様のボタンとボタンキャップを使ったことがあるのですが、これが結構脆い。

ボタンにはボタンキャップを嵌めるためのクビれがあるのですが、ここからモゲることが良くありました。

ボタンのクビれ


なので、手持ちのクビれの無いボタンを使うことにしました。

です。

クビれの無いボタン


懐かしいSFCのコントローラーのイメージですね!

こういう、ちょっとした改善やカスタマイズができるのも、DIYキットの良いところです。

SFCのコントローラー


その他は、基本的にドキュメント通りにスイッチ、LCD、電池ボックスの順に半田付けを行っていきます。

作業中 - 1


強いて言うならば、LCDの取り付けが最難関でした。

ピンのショートに注意することと、半田ごての熱が分散して半田のノリが悪いピンがあること(接触不良の原因になります)。

更に、LCDをメイン基板と水平に取り付けようとすると、すでに基板に実装されているマイコンと干渉するので、ちょっと浮いた感じで実装する必要があります。

作業中 - 2


他は特に問題無しで、サクサク実装できます。

作業中 - 2


すべての部品を実装後、電池を入れて、スイッチをオンにする前にチップヒューズを挿入する必要があります。

チップヒューズ


これも、子供が作業して間違った配線で回路を壊さないように…という配慮でしょう。

しかも、チップヒューズは1つしか使わないのに3つも付属しています。

ここまで気を配っているクロアチア共和国のメーカー「CircuitMess」社の理念は素晴らしい!

さて、緊張の一瞬。


スイッチON!!



お、なんか写った!!

Bonk


スイッチをONにすると、まずメニューが立ち上がり、ここから設定画面や最初から入っているゲームを立ち上げることができるようです。

最初から入っているゲームは、かなりレトロなテニスゲーム「Bonk」、そしてヘビを操ってひたすらエサを食べていく「Snake」…。

Snake


そして、隕石を次々と破壊するシューティングゲームの「SpaceRocks」の計3本です。

SpaceRocks - 1


特に「SpaceRocks」は、グラフィックが良く描き込まれています。

フルカラーとはいえ、128x128の低解像度の可能性を感じさせるものです。

SpaceRocks - 2


SpaceRocks - 3


さて、動作チェックも終わったので次の作業です。

ケーシング(アクリル製)の装着です。

ケーシング(アクリル製)


…なのですが!

今回は、この作業は行わないことにします。

今後、色々とこの「Nibble」で遊ぶ上で、多分ハードウェアの改造やら線の引き出しやらをやるでしょう。

ケーシングをしてしまうと、その都度にバラして組み立てるのを繰り返すのも億劫です。

ちなみに、ケーシングを行うと、以下のような外観になるようです。

ケーシング後の外観


アクリル板は結構分厚いので、実物を見てみると全く安っぽい感じはなく、シッカリとした印象です。

知育玩具として本当に良く出来たキットです。

ただし、特に半田付けなど対象年齢の9歳児が一発で成功するほど簡単な作業とは言い難いでしょう。

半田ごてなど、危険な道具も扱いますから、12歳位までは大人同伴での作業が前提となるでしょうね。

これで遊んだ子供たちが一人でも多く「モノ作り」に興味を持ち、組み込みエンジニアへの道に進んでくれると嬉しいですね!


…ウソです。

海外ではいざ知らず日本では、組み込みエンジニアなんてキツい割に低収…


というリアルな話は置いといて~。


さて、無事に「Nibble」を組み立てることが出来ました!

最初から入っているゲームを遊び倒したら、いよいよプログラミングに挑戦したいと思います。

これらのゲームはオープンソースとして公開されていますので、プログラミングの際にも貴重なサンプルになるでしょう。

何か作ったら、このブログでその過程からレポートしましょうかね…。

皆さんも夏休みの工作として、この「Nibble」いかがですか?


<終わり>

2023年7月21日金曜日

DIYレトロゲーム機「Nibble」がやってきた! その1

今年の初めくらいにクラウドファンディングサイト「Makuake」でオーダーした、DIYレトロゲーム機「Nibble(ニブル)」が届きました!

この「Nibble」とは?

詳細は公式サイトを参照ください。

Nibble


どことなく往年のPSPに似ているゲーム機のキット(半完成品)です。

最初から三つくらいのゲームが入っているみたいですが、自分でプログラミングして開発することもできます。

この「Nibble」の私の購入動機は、当然、最初から入っているゲームではなくてプログラミングをして遊ぶことです。

その際の開発環境/言語は、

初心者向けの「CircuitBlocks」(ブロックを組み合わせるビジュアル言語)、

中級者向けの「Arduino」(実質C言語)、

上級者向けの「C++」

などが、それぞれ利用できるようです。

いきなり「C++」に挑戦しても大丈夫でしょうかね?

この「Nibble」執筆時点では、まだコチラで購入できるみたいですよ~。


メーカーのCircuitMess社は、クロアチア共和国の会社です。

なので、外箱はどことなく色使いがヨーロピアンテイスト。

外箱 - 1


外箱の裏には簡単な商品解説が。

外箱 - 2


何はともあれ御開帳!

開封 - 1


なにやら、紙が入っています。

ドキュメント類は、サイトからダウンロードしてください、という旨が書いてあります。

続きはWebでっ!」ってやつです。

内容物は、以下のような感じです。

開封 - 2


目を引くのがプラスチック(アクリルかも?)筐体。

白い色をしていますが、これは保護シートが貼られているみたいです。

それを剥がすと無色透明のようです。

ホント…小さいPSP。

プラスチック(アクリルかも?)筐体


部品類は、こんな感じ。

ドライバーや半田なども同梱されています。

(半田は「鉛フリー」のようです。これは使い難いので破棄するでしょう…。)

液晶は128x128ドットのフルカラーとのこと。

往年の名機MSXが256x192ですから、それより相当荒いのですが、発色数だけは圧倒的ですか。

ほか、プッシュスイッチやボタンなど、半田付けが必要な部品は最小限です。

私のようなブキッチョ(って、きょうび聞かねぇなぁ~)にとってはありがたいです。

部品類


肝心のメイン基板がこちら。

結構、シッカリした基板で好感が持てます。

コッチは裏側かな?

メイン基板(裏)


メイン基板をひっくり返してみましょう。

CPUのお出まし!

面実装の細かい部品は、すでに実装済みです。

メイン基板(表)


さて、ここで奇妙なことに気付きます。

このCPU、パターンアンテナが出てますね。

これは、何らかの無線通信機能を持っていることを意味します。

なんだろう?

そんな仕様、上記のサイトに書いていなかったのに?

では、このCPUの正体とは、一体!?

CPU


あ~、これは以前このブログでMSX関連の記事でも取り上げた、中国のEspressif Systems社の「ESP32」マイコンの廉価版「ESP-12F」ですね。

アメリカのTensilica社がライセンスする「Xtensa LX106」CPUコアを採用し(今どき珍しくARMじゃない!)、80MHzのクロックで動作します。

そしてこのマイコン、確かにWiFi機能を内蔵しています。

しかし、それならばこの「Nibble」の強力な売り文句として、もっとアピールすれば良いのに?

この「Nibble」に対して、メーカーのCircuitMess社がどのようなゲーム開発用ライブラリを提供しているのか?…まだ分かりませんが、そこは対応していないということでしょうか?

果たして、どのような開発環境を提供しているのか?

そして仮に、その開発環境が対応していないのであれば、閉ざされしWiFiの封印を解くことができるのか!?

気になるので、早速見てみたいです!!

とはいえ、まずは組み立てを成功させねばなりませんね…。


次回は、組み立ての過程とゲーム機の起動までレポートしたいと思います。

…無事に組み立てられたらねw!


<続く>

オープンソース・ソフトウェアのライセンス

仕事で自社の製品に組み込まれているオープンソース・ソフトウェアのライセンスについての調査を命じられました。 私も今までの経歴からオープンソースのソフトウェアを利用して製品開発を行ってきましたので、その手の書籍も熟読しており、人より少しだけライセンスについての知識は持ち合わせている...