サロンdeねくすたぁ~ その32017年09月17日 15:52

遅い夏休み中。

部品がそろったので、「サロンdeねくすたあ~」のSDカードの電源部分を強化してみた。
3.3Vの定電圧レギュレーターを利用し、スロットからの5Vから新たに3.3Vを生成、直接SDカードスロットに供給してみた。
SDカードスロットの電源ラインは抵抗(R1)を介しているのでこれを取り外し(1608のチップ抵抗なので小さい!)、本来の電源供給を遮断。代わりに生成した3.3Vを投入。

結果、あっさりFlashAirの無線機能が機能するようになった。
ノーマルだとエラーが発生するディレクトリ変更も問題なく動作する。
よしよしと思いながら、ふと取り外した抵抗を計ってみると10Ω。

あれ?
回路図上はR1って1Ωじゃなかったっけ?
と、電源強化部分を取り外し、R1に手持ちの1Ω抵抗つけてみたらそれでもFlashAirは動作した。

動いたから、いいか。

サロンdeねくすたぁ~ その22017年08月26日 17:26

サロンdeねくすたあ~でFlashAirを認識しない問題、原因が分かったかも。

現在直面している現象をまとめると
1・サロンdeねくすたあ~にFlashAirをセットして起動するとドライブを認識しない。(FlasAirは変換アダプタを利用)
2・起動時は認識するSDカードをセットして起動、その後FlashAirに入れ替えるとMSXからドライブとして認識する
3・2で認識したドライブに実際に書き込みを行おうとするとハングする。
4・ディレクトリ移動を繰り返すと、「ドライブが存在しません」というエラーが発生する。
5・FlashAirの無線LANが有効にならない(無線LANへの接続に失敗する)

で、5がおかしい。
FlashAirの無線LANはCONFIG設定さえ正しければ、電源さえ供給されていれば有効になるはず。
それが使えないということは電源供給が間に合っていないのではと考えた。
※FlashAirは普通のSDカードより無線LAN機能の分消費電力が多い(常時100mA~200mA位らしい)

試しにCONFIGを
APPMODE=2
無線LANのキーになる画像ファイル
/DCIM/100__TSB/FA000001.JPG
を読み取り専用にし、無線LAN手動起動モード(無線LAN-OFF)する。

この状態のFlashAirをサロンdeねくすたあ~にセットしてみた。

結果、起動時のドライブ認識に成功し、試した範囲では書き込みでハングするようなこともないように見えた。
ということで、電源供給さえどうにかすれば変換アダプタ経由でFlashAirも使える、のかな?

サロンdeねくすたぁ~2017年08月21日 23:09

M.A.D.社製のMSXでNextorやMicroSDが使えたり音声LSIでおしゃべりさせたりすることができるカートリッジ。
こいつのMicroSDにFlashAirを繋げないかと考えて、変換名人のSDカード→MicroSD逆変換アダプタを買ってみた。

・・・FlashAir認識しない。
他のSDカードを変換掛けたところ認識するものもあるので、相性が出ている模様。
M.A.D.さんの検証でも動作するカードと動作しないカードがあったみたいだし。

DEVINFO.COMではちゃんとカード認識してるんだけどなぁ…
DRVINFO.COMでドライブ認識していないのでドライブの割り当てに失敗してるみたい。
でも、MAPDRV.COMでのドライブ割り当てにも失敗する模様。

う~ん、もうちょっと調べてみよう。

今気が付いたけど2017年03月22日 00:02

MegaFlashROM SCC+ SDのSDカードスロットってmicroSDであってフルサイズのSDカード刺さらないのか…
ってことはFlashAir使うには、通常とは逆のSDmicroSDの変換アダプタが必要と。

理屈上は動くと思うんだけどなぁ…

FlashAirのRTC取得プログラム (FA_CLOCK Ver0.01)2017年03月05日 18:21

1chipMSX専用、FlashAirのRTCから取得した日付時刻をMSXに設定するプログラム。
プログラム内でSDカードの初期化は行っていないので、1chipNextorMSX等SDHCを利用できる環境必須で。
FlashAirのRTCをluaスクリプトで設定の上ご利用ください。

※余り厳密なエラーチェックはしていないので暴走とかしたらごめんなさい。

ダウンロードはこちら。

RTC設定luaスクリプトのサンプル。
FlashAirがインターネットにアクセスできる(STAモード等)事前提。

FlashAirのカレントに
SCRIPT ディレクトリ
を用意

FlashAirのSD_WLANディレクトリのCONFIGファイルに1行追加
LUA_RUN_SCRIPT=/SCRIPT/startup.lua

このサイトからダウンロードした
libFlashTime.lua
をlibFT.luaという名前でSCRIPTディレクトリに配置

以下スクリプトを
startup.lua
という名前でSCRIPTディレクトリに配置
---------------------------------------------
print("Script Start")
sleep(5500)
local t = require "/SCRIPT/libFT"
print("Get Time from NICT")
t.SetNICT();
print("Script End")

これで起動時にFlashAirのRTCに現在時刻がセットされる。
あとは、FA_CLOCK.COMを実行するごとに
FlashAirから取得した日付時刻をMSXに設定する。