MixJuice に関する Q&A


MixJuice は技適認証済みですか?

はい。MixJuice が採用している Wi-Fi モジュール ESP-WROOM-02 が
工事設計認証 (技適) 取得済みとなっています。安心してご利用下さい。 

 

よく見ると、中央にある Wi-Fi モジュール表面に

Wi-Fi の機器には入っている技適マークが入っています。(右画像)

 

もちろん MixJuice のファームウェアを更新した場合でも、引き続き有効です。

 

現在は ESP-WROOM-02 に使用されている ESP8266EX および ESP8266 も
それぞれ技適取得が行われていますが、

モジュールで技適取得され、シールド部に技適マークがある ESP-WROOM-02 が

確実に日本で安心して使用できる状況です。

なお、ESP32-WROOM-32(ESP32)も技適認証済みですが、こちらは現在ファームウェアが対応していません。
MicJack が ESP32 対応を予定しているようです。


ESP-WROOM-02 モジュールで MixJuice は作成できますか?

秋月電子通商 発売の Wi-Fiモジュール ESP-WROOM-02 DIP化キット を MixJuice 互換機にしたブログ記事が公開されています。

 

ボクにもわかるブレッドボードによるMixJuice互換ボードの製作方法 | ボクにもわかる地上デジタル(ブログ)

 

ファームウェアは MixJuice 公式サイト で公開されています。この MixJuice ページにあるツールの使用で書き込む事が可能です。

ただし、発売場所・時期によって書き込み時の値を変更しなければいけない場合があるようです。

現在は MixJuice 上位互換の MicJack を入れると、Keyboard Mode も使用できるのでメリットがあります。

MixJuiice 公式サイト に回路図が含まれています。

 

ESP-WROOM-02 開発ボードだと、

基板上に必要なパーツが付いているため、追加パーツが(ほぼ)必要なく使用できます。

ファームウェア更新向けに USB-シリアルモジュールと

専用ボタン(スイッチ)が付いているのが普通です。

NodeMcu 向けのボードとしていくつか製品が存在します。

 

ファームウェアを更新する場合は、microUSB-USB ケーブルでパソコンと接続して、

PGM・IO0・GP0・FLASH ボタンを押しながら(またはスイッチを切り替えて)

RST・RESET ボタンを押す事でファームウェアの書き込みモードへ容易に入れます。

 

ESP-WROOM-02 開発ボードで MixJuice を通常使用する場合は次の接続になります。

ESP-WROOM-02   IchigoJam など
RX - TXD
TX - RXD
GND - GND
5V・VIN ☆ - 5V ☆
3V3・3.3V ☆ - VCC・3.3V ☆

☆ モジュールによって安定動作する方で使用して下さい。

 

ESP-WROOM-02 からダイレクトにピンが出ている DIP 化モジュールを使用している場合、更に配線が必要になります。

GND・3.3V/VCC または 5V の(経由)接続が多くなるため、ブレッドボードを使用する事になります。

 

IO0 ブートローダ書込時 - GND
通常使用時 - 10k Ω 抵抗 - 5V または VCC・3.3V ☆
IO2 - 10k Ω 抵抗 - 5V または VCC・3.3V ☆
IO15 - GND
EN - 10k Ω 抵抗 - 5V または VCC・3.3V ☆
RST 使用中 - 10k Ω 抵抗 - 5V または VCC・3.3V ☆
リセット動作 - GND

☆ モジュールによって安定動作している方で接続して下さい。


ESP-WROOM-02 搭載の開発ボードを入手し、こちらに MixJuice・MicJack を入れていますが、うまく入りません。

ボードによっては正常にファームウェアのインストール・更新作業が行われながら、

通常起動すると変化していない場合があります。

 

少なくても NodeMcu 向けの開発ボード(例えば IO13 の代わりに D7 表記になっています)の場合、

NodeMcu ボードを認識するツールでファームウェアを入れる必要があります。

  • バイナリーでは NodeMCU Flasher (A firmware Flash tool for nodemcu) が認識します。
  • MicJack で Arduino IDE を用いる場合は ツールバー ツール - ボード 内の選択肢に NodeMcu の項目が存在します。

他にも使用するボードによっては細かい設定が必要な場合があります。


PanCake も重ねて使用できますか?

はい。下から IchigoJam U・T・S、MixJuice、PanCake の順に重ねて
動作する事が確認されています。

PanCake と MixJuice はそれぞれ認識するコマンドが異なるため、

この状態で使用する事が可能です。

PanCake も 115200bps で動作するようにして下さい。

CN5 端子は PanCake の基板で塞がれるので使用できません。

 

PanCake を含めての使用は、安定して動作できるよう、
BASIC・IchigoLatte と PanCake が 1 基板になっている
IchigoCake に MixJuice を重ねての使用がおすすめです。

 

多く拡張している場合、また構成パーツが多い IchigoJam EX は
電源供給の違いにより動作に問題があるかもしれません。

動作がおかしくなる場合は電源供給源を変えてみて下さい。


MixJuice の電源を入れたところ、不明なテキストが出力されます。

MixJuice の電源を入れた時に

IchigoJam BASIC では右のようなテキストが出力されます。

これは正常な動作です。

IchigoLatte でもはじめて cat uart で出力した場合に出力されます。

 

この正体は ESP-WROOM-02 が初期設定で出力する文字列ですが、
通信速度の違いにより、文字化けされたテキストが出力されています。

通信速度を正常にすると、IchigoJam BASIC がコマンドと誤って実行する恐れがあり、

あえてこの状態にしている、という理由もあるそうです。

 

なお、IchigoJam の電源を入れたまま MixJuice の電源をオフ→オンとした場合は
通信速度がそのままになり、英数の文字列が表示される場合があります。

 

MicJack でも起動直後数秒文字化けが発生している場合があります。(特に他にもボードなどを接続している場合)

数秒して正常に出力されるようであれば、そのまま使用してかまいません。

 

3.3V-VCC 接続だと不安定で様々な文字列が表示され、送信しても反応しない場合があります。

5V・VIN-5V で接続すると安定動作します。


コマンドに使われている ?" はなんですか?

? は IchigoJam BASIC で PRINT の省略表記です。PRINT は末尾の " を省略しても動作します。
つまり次の 2 コマンドは同じ動作をします。

  • PRINT"MJ GET kidspod.com/mj/593"
  • ?"MJ GET kidspod.com/mj/593

PRINT 文に続けてコマンドを記載する場合(マルチステートメントで記載する場合)は区切り記号 : の前に " が必要です。


コマンドを送信しているのですが、何も表示されません。

MixJuice の通信速度は 115200bps です。

IchigoJam BASIC で BPS コマンドを用いて通信速度を変更していた場合は BPS 0 を実行して下さい。

またコマンドが通るためには PRINT 文で送出して下さい。普通に手入力した場合はウェイトによりコマンドとみなしません。

 

はじめて正しいコマンドを入力しているのに MixJuice が反応しない場合は電源供給が行われていないか、供給不足です。

MixJuice 側にも電源があります。LED 1 が光っている事をご確認下さい。

また MixJuice に接続している電源供給源を変えてみて下さい。

 

まれに赤色 LED が点灯したままになり、画面に表示されなくなる事があります。運営者や他の利用者が確認済みです。

この場合は MixJuice が一切反応しなくなります。電源を入れなおして下さい。
MixJuice 1.0.3 より、このようになった場合は数秒でタイムアウトするように改善されています。

 

ジャンパワイヤで接続している場合は、接続している端子が正しいかも確認してみて下さい。

 

たまに正常なコマンドを入力しているのに、MixJuice がコマンドを認識しない場合があります。

(MixJuice コンテンツを参照中など)
矢印 ↑ キーで GET・GETS コマンド部分へ移動して再度 Enter(return)を押すと返ってくる場合があります。


Wi-Fi アクセスポイントに接続できません。

アクセスポイントも名称に空白が含まれている場合に接続できない事が確認されています。

ファームウェア MixJuice 1.0.2 より空白の前に \ を付ける事で空白を含めた指定が可能です。

それ以外に記号を用いている場合は全角文字を用いている場合は接続できない場合があります。

 

WEP キーは 5 文字です。WPA キーはそれよりも長い場合が多いです。

 

ネットワーク環境を固定 IP にしている場合、DHCP を有効にして下さい。通常それはルータの設定で可能になります。


IchigoJam BASIC の自動起動でアクセスポイントの接続に失敗します。

MixJuice は一度 APC コマンドで接続すると、電源を入れた後、自動的にアクセスポイントへの接続を試みます。

そのため、IchigoJam BASIC の自動起動時はすでに MixJuice はアクセスポイントの接続を試みている状態です。

プログラム上では APC コマンドで接続動作を行う必要はありません。

 

自動的に接続する前提であれば、自動起動後 IchigoJam BASIC の WAIT コマンドで数秒待った後に

APS コマンドで接続状態を確認し、未接続であれば APC コマンドで接続するようにすると良いでしょう。

 

この動作は MicJack も同様です。サーバ起動なども行うため、MixJuice より接続に時間を要します。


特定サーバの参照に失敗します。

サーバによって大文字・小文字の判別があります。大文字・小文字は正しく入力して下さい。
MixJuice 1.0.5 より、大文字・小文字の区別がないドメイン部を大文字で入力しても接続できるようになりました。

MicJack も大文字のドメインに対応していますが、動作がおかしい場合は小文字のドメインで試して下さい。

 

ローカル環境では参照に失敗する報告が多いです。ネット上で参照できる環境で試して下さい。

 

発売開始直後のファームウェア MixJuice 1.0 では一部参照に問題があるサーバがあります。

これは MixJuice 1.0.1 で改善されています。MixJuice のファームウェアを更新して下さい。

 

まれにコンテンツ取得に失敗している事があります。LED 2 ランプが光りっぱなしになっています。

この場合は MixJuice と IchigoJam の電源を切り、入れなおして、再度接続しなおしてみて下さい。

ファームウェア MixJuice 1.0.3 では、タイムアウト処理によって中断するため、この問題を改善しています。

 

MixJuice の場合、サーバ名のみの場合は末尾が / で終わらせる必要がああります。

例えば 15ja.ml というアドレスであれば、?"MJ GETS 15ja.ml/ とする必要があります。

MicJack は末尾 / なしでも参照できるので、注意を要します。

 

2017 年ごろから MixJuice で GETS・POSTS を用いた参照は一部のサーバで接続できなくなる事が分かっています。

SSL 証明書やサーバ新機能対応の更新で状況が変わるため、
現在接続可能なサーバでも数ヶ月後には参照できなくなる場合があります。
この問題は MixJuice 1.2.2 で TLS ライブラリが更新され、改善されています。ファームウェアを更新して下さい。

また、MicJack は GETS・POSTS を正常に参照できます。


GET・GETS コマンドを入れたところ、<> に囲まれた英数の文字列が出てきました。

コマンドのアドレス部分に入力ミスがあったか、HTTP 関連のエラーによる HTML が出力されています。

これは停止できないため、そのまま出力が止まるのを待って、その後改めてコマンドを入力しなおして下さい。

入力ミスがないのにこの状態になっている場合はこの公開元に問い合わせても良いかもしれません。


コマンドを入れたところ、ERROR が表示されました。

多くの場合は入力ミスです。GET コマンドなどの場合、大文字・小文字も間違えずに入力して下さい。

 

MixJuice では Location(ステータスコード 301・302)も ERROR 処理となります。
例えば GETS 必須となっているコンテンツで GET コマンドを使用した場合です。


MixJuice や関連コンテンツでは左に´が付いているものが多いのはなぜですか?

´を付ける事で、IchigoJam BASIC でコメント文扱いにして無視するようにするためです。(REM の省略形)

´をなくすと IchigoJam BASIC のダイレクト文やプログラムとして扱われてしまいます。

別の方法として、プログラムを読み込んで、
プログラム内で特定のページを読み出す方法もあり、これなら ' をなくせますが、
代わりにプログラムを読み込むところを表示しなければいけなくなります。


毎回アドレスを入力するのが面倒です。ページのブックマークを行えますか?

MixJuice そのものにはブックマーク機能はありませんが、

コンテンツ名(サイト名)と GET・GETS コマンド(URL)を入れたプログラムとして

IchigoJam 本体や EEPROM へ保存してしまうと楽に操作できるでしょう。

 

運営者がいくつかブックマークプログラムを製作しています。

これにより、いつもの FILES で一覧表示して、LRUN で実行する操作で MixJuice を使用可能です。

プログラム一覧・ローダー も使えます。

プログラム番号 0 へ保存し自動起動する場合は

MixJuice が Wi-Fi 接続するための WAIT を入れておくと良いでしょう。

 

ボクにもわかる for MixJuice ではプログラム番号 0 へ保存する操作がメニューにあります。

 

上位互換の MicJack はホームを設定・参照できる GETHOME コマンドと Kidspod; 専用コマンドが存在します。

 

ブックマークではないですが、運営者による MixJuice 短縮 URL 15ja.ml ができました。

まずは ?"MJ GETS 15ja.ml/ を入力して参照して下さい。(MixJuice は MixJuice 1.2.2 以降)


IchigoLatte で MixJuice を使う時の表示・ダウンロードはコマンドのどこが異なるのですか?

IchigoLatte 向けの場合、表示は例えば次のコマンドです。

 

lash>echo MJ GETS 15jr.ml/program> uart;cat uart

 

一方ダウンロードは例えば次のコマンドです。

 

lash>echo MJ GETS 15jr.ml/balloon> uart;cat uart > .

 

違いは末尾 cat コマンドの > . 有無です。

uart はシリアルで、cat のデォルト出力は画面表示ですが、. は本体内部のプログラムを表すので、

cat uart > . でシリアルから本体へプログラムを転送する命令となります。

MixJuice は USB-シリアル と同じシリアル(TXD・RXD)の送受信で通信を行っています。


パソコン通信、チャットのようなシステムは構築できますか?

ボクにもわかる for MixJuice がパソコン通信に近い表示・操作性を実現しています。

 

1 行入力の掲示板みたいなシステムであれば、MixHJuice+IchigoJam BASIC 上で実現できそうです。
(GET・GETS の末尾にパラメータとして任意の文字を入力し、それをデータベース・ファイル保存)


乾電池などで運用する事はできますか?

乾電池動作で IoT 温湿度センサーを用いた実例があります。
IchigoJam を SLEEP させるなどしているところがポイントです。

 

低消費電力IchigoJamで乾電池動作のIoT温湿度センサを製作する | ボクにもわかる電子工作

IchigoJam + MixJuiceで製作するIoTセンサ | Ambient


1.3b 版の HTTP サーバで何かができるのですか?

三辻 さんより、MixJuice 1.3b1 が自信のブログ mitsui.org 内で公開されています。

MixJuice をサーバー化して paprika ロボットを動かす | mitsuji.org

 

http://(MixJuice アドレス)/ で payload=(送出内容) を POST 通信する事で、
(送出内容) が IchigoJam などへ入力されます。改行は %0A です。

特定のコマンドやプログラムをパソコン等から送出できるようになります。
POST 通信なのが面倒な点です。(アドレス部分の ? 以降に含めるのは通常 GET 通信になります)


MixJuice は転載禁止ですか?

アーカイブ内の readme.txt に転載禁止の明記がありますが、

PCN に確認したところ、「MixJuice のバイナリー(を含むアーカイブ)は転載禁止」という意味で、
Web サイトを含むコマンドなどの解説についてはその限りではない(むしろ歓迎)の事でした。

MixJuice のコマンドなどを Web に掲載するのは問題ないと思われます。
ただし現在ライセンス指定がないため、丸々引用する場合は PCN に予め連絡を行うと良いでしょう。