IchigoJam

**IchigoJam**（イチゴジャム）は低消費電力、低コストのシングルボードコンピュータ・開発プラットフォーム。株式会社jig.jpによって公開され、プログラミング クラブ ネットワークより発売されている。

## 概要
2014年4月1日に福野泰介（株式会社jig.jp取締役 創業者、公開当時は代表取締役）が開発・公開。当初はBASICが動作するファームウェアと回路図などが公開され、組み立てる前提となっていたが、2014年7月にプリント基板が公開され、現在はこれが主流である。後にプリント基板などの販売・卸はプログラミング クラブ ネットワーク（通称PCN）で、ライセンス管理などをjig.jpで行うようになった。後にjig.jpの子会社B Inc.が設立され、実質的なIchigoJam関連事業はB Inc.が継承している。jig.jpおよびB inc.はライセンスなどの発行は行っているが、IchigoJamプリント基板の販売は行っていない。

通常はプログラミング クラブ ネットワークからの卸によって販売を行っているが、同様仕様または上位互換で独自に製作・販売されているIchigoJam互換機も存在する。またファームウェアは無償でダウンロードでき（ただし再販はライセンスが必要）必要なパーツや回路図が公開されているため、自作も可能。

多くのシングルボードコンピュータは開発をパソコンなどから別途行う必要があったが、IchigoJamは電源を入れるだけでBASICが起動し、すぐにプログラミングが可能な事が特徴。入出力ポートも備えているため、プログラムに限らず、電子工作の制御が容易に行える。

「こどもパソコン」として、子供向けのプログラミング教育向けに展開している。

## モデル
### IchigoJam
プログラミング クラブ ネットワーク によって発売されている IchigoJam は次が存在する。

; IchigoJam
: 2014年7月公開。初代プリント基板。
; IchigoJam U
: 2015年7月公開。U=Universal。ユニバーサル基板に合わせた大きさに変更された。水晶振動子を基板に追加し映像表示の安定化を実現。CN5端子が追加されている。
; IchigoJam T
: 2016年7月より発売。品薄になってきていたLPC1114FN28に代わってLPC1114FDH28を採用するようになった。キーボードのコネクタをUSBに変更（信号はPS/2のまま）。
; IchigoJam S
: 2018年7月より発売。IchigoJam Tの改良版で、壊れやすいスライドスイッチの強化、半田付けミス防止のためLPC1114FN28向け端子を削除など。
;IchigoJam R
: 2021年1月より発売。IchigoJam Sの改良版で、ICをNXP社のLPC1114、Arm Cortex-M0アーキテクチャーに加え、RISC-Vに対応、それに従って端子の追加、インタプリタの高速化、本体に格納できるプログラムの大幅増量、従来のPS/2キーボードに加えUSBキーボードに対応など。
;IchigoJam Get Started Kit
:組み立て済みの IchigoJam S、ふにゃふにゃキーボード(US)、ビデオケーブル、microUSBケーブル、IchigoJam入門テキストが、特製IchigoJamセットケースに入ったもの。ビデオ入力端子のついたテレビ等のモニター、5Vが供給できる電源を別途用意する必要がある。福井県鯖江市のふるさと納税返礼品になった。
; IchigoJam (ブレッドボード)
: ブレッドボード版。半田付けの代わりにパーツをブレッドボードに構築する。

### IchigoLatte 本体
ファームウェアはIchigoJam BASICに代わってIchigoLatteを採用。
BASICではなく、JavaScriptでプログラミングできるファームウェア。

; IchigoLatte
: 2016年9月にβを販売後、2017年1月より正式販売開始。βはIchigoJam Tをベースにしている。

### IchigoDake & IchigoIgai
2017年4月に限定発売後、2017年6月より量産販売された。IchigoDakeとIchigoIgaiに分かれていて、IchigoDakeは首にぶら下げるなどして別に持ち歩ける。IchigoDakeを交換してOSを変更できる。

; IchigoDake BASIC
: IchigoJam BASICが入っている。基板は IchigoJam プリント基板同等の緑。
; IchigoDake JavaScript
: IchigoLatteが入っている。基板は IchigoLatte プリント基板同様の黒。
; IchigoDake IchigonQuest
: IchigonQuestが入っている。基板は青。2018年4月より発売開始。
; IchigoIgai
: IchigoDakeの接続部、ビデオ出力、キーボード、電源、圧電サウンダ、EEPROM向けピンソケットを備える。基板は赤。
; DakeJacket
: IchigoJamの拡張ボードを重ねられるようにした、IchigoDake用ドックステーション。2018年4月発売開始。

### IchigoJam 互換機
プログラミング クラブ ネットワーク以外で開発・販売されているIchigoJam互換機が存在する。
* ai.Jam シリーズ
* IchigoJam EX
* SkyBerryJAM
* IchigoSoda
*KumaJam
*Ichigokamuy

その他、企業や個人による互換機などが存在する。

### 拡張基板
; PanCake
: マルチメディアボード。カラー表示、スプライト表示、多重演奏などができる
; MixJuice
: ネットワークボード。Wi-Fiによるインターネット接続
; MapleSyrup
: モーターの制御
; Juice Server
: バッテリーシールド。単四乾電池2本が入る基盤で、IchigoJamの上に挿し込んで使用する。ファイブ・テン 製。
; IchigoToast
: USBーシリアル変換ボード。IchigoシリーズとPCをシリアル通信で繋いだり、Ichigoシリーズのファームウェアの書換えに使える。北の電子工房 製。
; IchigoJam専用学習リモコン基板
: 基板上に7個のスイッチを搭載し、各スイッチ毎に赤外線リモコン信号を基板本体内に記録可能。IchigoJamのI/Oピンに接続することで、IchigoJamを赤外線学習リモコンとして動作させる拡張基板。株式会社ビット・トレード・ワン 製。

### アプリケーション
基板とは別にパソコン内でアプリケーションとしての使用も可能。

; IchigoJam ap
: WindowsおよびmacOSのアプリケーションとして
; IchigoJam web by WebAssembly
: Web ブラウザ上で動作

これ以外にIchigoJam PCも過去公開されていた。

## 仕様
* CPU - NXP LPC1114 - ARM Cortex-M0搭載 32-bitマイコン 48MHz 
* メモリ - 4KB
* プログラミング言語 - IchigoJam BASIC
* グラフィックス
** 32x24 テキスト（PCG対応） / NTSCビデオ出力
** 16x6 テキスト（PCG対応） / AQM1248A液晶ディスプレイ
* キーボード PS/2キーボード（ファームウェアでJP/US選択可能）
* I/Oボタン、汎用入力x4 (アナログ入力x2) / LED x1、汎用出力x6（IO切替により入力最大x10、出力最大x10、アナログ最大x6）PWM x4（2ch）シリアル入出力（TXD/RXD） 最大115,200bps
* 記憶媒体 - 内蔵Flashメモリ4つ / 外付けEEPROM対応
* 拡張機能 - PanCake を接続することで、80x45 16色＋4和音に対応

## プログラミング言語
IchigoJam では次のプログラミング言語を使用できる。ハード構造はIchigoJamR以外は全部共通となっていてLPC1114にファームウェアを入れて使用可能。

### IchigoJam BASIC
IchigoJamとその互換機で動作可能なBASICプログラミング言語とその総称。自作したIchigoJamにも入れることは可能だが、再配布する場合はライセンスが必要。
2019年6月現在の最新バージョンは1.3.1(正式版）。
保存媒体としてEEPROMを使用できる。本体にもプログラムを保存できる。またシリアル信号による通信が可能。
当初はMSXの影響を受けて開発されて、いくつか共通点が存在するが、LPC1114の制限による独自仕様も増えている。
テキストと入出力の処理に特化されており、周辺機器ボードの追加によって機能を拡張できる。

#### IchigoJam BASIC RPi/RPi+
株式会社ナチュラルスタイルによってRaspberry Piに実装されたIchigoJam BASIC。IchigoJam RPi/RPi+の表記も公式を含め用いられる。2019年6月現在の最新バージョンは1.2.6RPi。

基本的にオリジナルであるLPC1114版の仕様を踏襲した物となっており、プラットホームがRaspberry PiであることによってUSBキーボードやHDMI対応のディスプレイなど、レガシーデバイスを用いずに近年入手性の高いハードウェアで動作させることができる。

IchigoJam BASIC RPiは基本的にフリーで提供され自分で公式ページよりダウンロード、使用する分には無料で使用することができる。但しその再頒布などは禁止されており、頒布にはライセンスの締結が必要である。ショップのふうせんがその時点での最新版を書き込み済みのMicroSDカードを販売しており、動作確認済みのメディアで入手することも可能である。

IchigoJam BASIC RPi+はアイ・オー・データ機器からUD-RPSDIJの型番で書き込み済みMicroSDカード+SDカード変換アダプタと言う形の商品として販売されている。フリー版の仕様に加え、Raspberry PiのオプションであるSense Hat、Touchscreenに対応したコマンドが追加された上位版となっている。基本的にサポート対象外の製品となっており、アイ・オー・データ機器はサポートライブラリでのアップデータ提供以外はMicroSDカードのハードウェア保証のみに対応する。システムの更新がほぼ一式入れ替える形となっているため、アップデータの入手には製品シリアルナンバーの入力を必要とする。また、フリー版ならびに公式の更新情報の頻度に対し、アップデータの提供が遅延する傾向にあり、Version1.2.6の時点でリリース日が2018年6月18日にもかかわらず、サポートライブラリの登録は2018年8月28日であった。また、BASICプログラミングキットとして、UD-RP3PKIの名前でUD-RPSDIJに加え、ナチュラルスタイル監修のテキスト本、ファンクションキー部分にコマンドの刻印があるUSBキーボードIS-KBJ、並びにACアダプタと、ケース入りのRaspberry Pi 3 Model Bのセット品も販売されている。

### IchigoLatte
JavaScriptベース。プログラミング クラブ ネットワークによって公開されている。

### IchigonQuest
矢印キーとEnter・Escキーのみでプログラミング可能。

## マイコンBASICマガジンの復活
電子工作マガジン2015年春号よりマイコンBASICマガジンのコーナーが含まれ、IchigoJam BASICが当初からのプログラム投稿対象になっている。

## 脚注

### 出典

## 関連項目
* シングルボードコンピュータ
* IoT

## 外部リンク
* こどもパソコン IchigoJam - jig.jp子会社B inc.による公式サイト
* PCN プログラミング クラブ ネットワーク