IchigoJam(イチゴジャム)とは

Last-modified: 2021-01-10 (日) 10:07:20

IchigoJamはこどもパソコンですが、大人パソコンでもあります :)


IchigoJamとはなんでしょうか。
説明とリンクを掲載します。

 

こどもパソコン

ichigojams.jpeg

こどもパソコンとして開発されました。簡単に起動、打ち込み、動作まで出来ます。
ほぼBASIC言語が動きます。
ビデオ入力(黄色いコンポジット端子)の付いたテレビがディスプレイになります。
電源は5Vです。
消費電流は40mAくらいです。
起動時間は1秒かかりません。
プログラムは4つまで本体にセーブできます。
長いプログラムは入りません(1つのプログラムは1kB、約1000文字まで)。
キーボードはUSB端子のタイプの多くが利用できません。(注:一般のUSB接続キーボードの中には、PS/2のI/Fに変換するアダプタ(中身は配線の接続替えのみのアダプタ)でPS/2の信号を扱えるものがあります。IchigoJamの基板にはUSBコネクタがついていますが、信号はPS/2となっています(IchigoJamが変換アダプタを内蔵しているイメージ)。
利用可能なタイプは、仕様に「PS/2」と記載されています。

使用可能なキーボード一覧・情報

基本的には「PS/2キーボード」あるいは「PS/2対応の信号が出力できるUSBキーボード」が使えます。Ichigojam Rより完全な「USBキーボード」となるのでご注意下さい。
まずは家のパソコンのキーボードをIchigoJamに挿してみよう。動いたらラッキー。
家のキーボード端子がUSB(長方形のA端子)で、IchigoJam (プリント基板初代)・IchigoJam Uに使用する場合は、USB-PS/2変換アダプタを利用する。
家のキーボード端子がPS/2(丸型)で、IchigoJam T・IchigoJam Sに使用する場合は、PS/2-USB変換アダプタを利用する。
IchigoJam Tからは、キーボードの接続端子がUSB端子になっているが、USB規格のみ対応しているキーボードは使えない。USBとPS/2の両規格に対応したキーボードなら、接続するとキーボード内のマイコンが接続状態を認識して、PS/2規格の信号を出力してIchigoJamと通信できます。

PS/2キーボードが無くならない理由 福野さんの互換情報

 
 

BASIC言語について

30年以上前ですかね。ポケットコンピュータというボタン電池で動く計算機に搭載されたBASICでいろいろ作っていたのは。
とにかく初心者がコンピュータに触れる言語としては最適と思います。

IchigoJam BASICの特徴 (IchigoJam BASIC 1.2 の場合)

  • 整数BASICなので小数が扱えない。使えるのは2バイト符号付き整数(-32768~32767)。
  • 変数はA~Zまでの26個と配列変数102個([0]~[101])。
  • 文字列変数は無いが、「A="ABC"」とするとAに文字列の先頭アドレス(ポインタ)が入る。
  • コード容量は1Kバイト(1024バイト)。容量節約のために、GOSUB→GSB、RETURN→RTNなどの省略形が使える。
  • 本体IC内のフラッシュメモリに4個のプログラムを保存できる(SAVE0~3)。LRUN命令を使うと他のメモリのプログラムへジャンプできる。ただしジャンプ時にスタックがクリアされるので、FOR~NEXTやGOSUB~RETURNの途中で他のプログラムへジャンプすると、その後NEXTやRETURNに出会ってもエラーで戻れないので注意。
  • GOTO、GOSUBなどの飛び先指定でラベル「@~」が使える。行番号指定に計算式も使えるので、「GOTO A*10」などとON A GOTO、ON A GOSUBのようなこともできる。
  • 画面表示は横32文字×縦24行。16文字×12行、8文字×6行などの拡大表示モードもある。色は白黒2色のみ。
  • グラフィック表示はできないが、グラフィック文字で代用することもできる。また32文字分のPCG機能があり、オリジナルの文字(8×8ドット)を作ることができる。
  • 拡張基板「PanCake」を使うと、カラーグラフィック表示ができる。
  • 「VIDEO 0」で画面表示を消すと、画面表示割り込みが停止するので動作速度が上がる。また「VIDEO 0,X」と第2パラメータを指定すると動作クロックがX分の1になるので、組み込み用途などでIchigoJamを省電力化できる。ただし動作クロックを下げるとBEEPやPLAYなどの音出力が乱れて聞くに堪えなくなる。またWAITの数もX分の1にしないと同じタイミングにならないので注意。
 

IchigoJamの特徴

キーボードとモニタをつなげて、電源を入れたらすぐに使える

接続する必要のあるものは、microUSBのACアダプタと市販のキーボード、テレビのみ。
ビデオ入力(黄色いコンポジット端子)のあるテレビが少なくなってきています。ブラウン管テレビにはほとんどのものにビデオ入力がついています。ちょっと前のデジタルテレビなら必ずついています。今のデジタルテレビは、わかりません。ビデオ入力の端子がいつまで生き残るかという点については、テレビのメーカ次第と思います。ちなみにNTSC入力をHDMI出力に変換するアダプタはAmazonで680円です。

 

I/Oもついている

デジタル入出力、アナログ入力、PWM出力が使えます。
それぞれの端子の数は制限されています。制限されているからいろんな工夫が出来ます。
ほかにLEDが1つとボタンが1つ。これはカムロボのように単独で使う時には唯一のユーザI/Fとなります。

 

音も出る

別売り(キットによっては付属されている)のサウンダ(圧電素子)をSND端子とGND端子間に接続することで、BEEP音が出ます。
PLAY命令を使うと「PLAY "ABC"」などとMMLで音楽も鳴らせます。ただしちょっと音痴なので注意。
2019年2月5日出荷分のIchigoJam(IchigoJam S)から、圧電ブザーがオンボードで搭載されました。標準で音が出ます。

 

拡張基板が接続できる

拡張基板が接続できます。IchigoJam向けに製造販売する場合は株式会社jig.jpとの協議は不要です FAQ at ichigojam.net)。
PCNによる純正ボードには、カラー映像と4種類のサウンドが出せるPanCake、モーターなどの電流が必要な周辺機器を駆動するMapleSyrup、WiFiを使ってネットワーク接続できるMixJuiceが存在します。
他には独自のI/Oを拡張してセンサー類の接続できるもの(株式会社FaBo)や、公衆網に接続してIoT機器として利用できるもの(IchigoSoda)(IchigoSodaはシールドではなくIchigoJam互換機となります)もあります。
回路図が公開されており、2.54mmピッチのユニバーサル基板と接続用の14pinのピンソケットを使用して自分で製作することもできます。
基板の実際の回路図は公式出典がなく、ガーバーデータを見て確認することになります。

 

あえて、面倒なところ

ファームウェアアップデートが面倒

キーボードは日本語106キーボードと英語101キーボードが選べます。通常出荷時は日本語キーボードに対応しているため、英語キーボードを使う場合はIchigoJamのファームウェアを書き換える必要があります。(Get Started Setのキーボードは英語キーボードのため、ファームウェアは英語キーボード版です)

ファームウェアを書き換える場合、パソコンとUSBケーブル、USBシリアル変換器(基板状のもの)が必要です。さらに、ファームウェアの書き換えのためのソフトウェアもダウンロードします。操作が多少複雑でもあります。
キーボード以外にファームウェアを書き換える理由としては、バージョンアップでしょうか。IchigoJamは2014年に登場しましたが、2018年現在1.2.3になるまで、そこそこ変更がありました。自分でプログラムを楽しむにはわざわざ変更する必要はないですが、雑誌や掲載されているプログラムを打ち込む場合には新しいファームウェアである必要があります。現在の1.2.3のバージョンは個人的にステーブル(機能的に改善余地が少ない)と思います。つい最近IchigoDakeのファームがメインボードの分岐によりアップデートしました。ファームアップが面倒な人は、しばらくしてから購入すると良いかもしれません。(アップデートしないと使えないということはありませんので誤解の無いように)
自分で書き換えできない方は、PCNでファームウェア書き換えサービスを展開されているのでそれを利用する手もあります。Assemblageへ持ち込んでの書き換えも可能です。
ファームウェアの書き換えが面倒なんて機器としてどうなの?などと感じるかもしれませんが、そこがIchigoJamがIchigoJamたる所以でもあるのです。ファームが簡単に書き換えられるということは、それだけハードウェアがおごられているとも言えるのです。(紫外線のROMイレーサ使っていた管理人は、232C経由でファームの書き換えができること自体ありがたいですけどね。)

本体の種類が複数存在する

まず最初に。ハードウェア仕様が最初から最後まで変わらないマイコンボードを開発出来たら神です。IchigoJamのプリント基板は
IchigoJam(初代)IchigoJam UIchigoJam TIchigoJam Sが存在します。(他にブレッドボード版IchigoDake & IchigoIgaiもあります。)初代とそれ以降は基板サイズと配置が異なっています。したがってPanCakeやMapleSyrup等のシールド基板が挿せるのはU以降。UとT・Sの違いはキーボードコネクタがPS/2のタイプ(U)か、USBのタイプ(T・S)という点。二代目以降に対応したアクリルケースが発売されていますが、購入前にどのタイプに合うか確認が必要です。厳密にはそれぞれに水晶の有無があり、さらに二分されます。水晶はビデオ出力信号の安定性の問題?から搭載することが出来る物という扱いでした。ファームウェアも水晶の有無で二通りありました。途中から水晶有無の自動判別ができるようになり1つに統合されています。最新基板では最初から水晶がついて販売されており、含まれている IchigoJam BASIC は自動判別対応済みのため、外しても動作可能です。IchigoLatte・IchigonQuest は外すと動作しなくなります。(個人的には水晶無しの内部発振でビデオ出力できるのはcoolでした [tip] )。