秋月電子の「太陽誘電 小型BLEモジュール基板」AE-TYBLE16
このモジュールは太陽誘電の EYSGJNAWY-WX を搭載している。
https://www.yuden.co.jp/jp/solutions/ble/product/
EYSGJNAWY-WX はマイコンとシリアルでつながって BLE通信 が行える。
しかしながらこれに搭載しているNordic nRF51822 はCortex-M0のARMコアであり、これを再プログラムして自分のアプリを実行できる。
書き換えたら技適ってどうなるの?
技適はファームウェア込で取得されるので、ファームを変更すると新たに技適を取り直す必要がある。しかしながら例えばAPIを分離し、APIライブラリをコールして使うのであれば技適の範囲内になるように工夫することができる。その場合はAPIライブラリを呼ぶアプリ部分は書き換えてもOKになる。
検索すると
工事設計認証番号 001-A05676
工事設計認証を受けた特定無線設備の型式又は名称 EYSGJN
とある。
EYSGJNはバリエーションがあり、ユーザーアプリを実行することのできるものがある。そのうち、WXのついていないEYSGJNZWYが、ハード的にEYSGJNAWY-WXと同じっぽい。
そして、EYSGJNZWYはユーザプログラムを書き込むことができる。となるとEYSGJNZWYはAPIライブラリのようなものが存在するのだろう。
そして、EYSGJNとして一括で技適を取得しているということはEYSGJNシリーズのハードウェア+APIライブラリのようなものの組み合わせが技適の前提条件なのだろう。
とするとそのAPIライブラリのようなものを使う限りにおいては技適は再取得しなくてもいいということになる。
書き換えの方法は?
ここらへん、APIライブラリを使うSDKとか公開していないかな?
秋月電子のパッケージにはこんな紙がついている。
うーむ、ここにアクセスするとなにかわかるかも知れないけれど、それを元に開発してもQiitaに公開なんてできなくなりますね。
オープンソースハードウェアの開発などをするにはこの縛りは回避したいので、この方法は辿らずに、別のルートで攻める。
オープンなやり方で
さて、似たモジュールとして台湾 RAYTAC の nRF52 を使ったシリーズがある。それを試した資料はここ。
「BLEモジュール MDBT42」 https://qiita.com/nanbuwks/items/d26447c0bfa28b1d05df
このやりかたが使えないかな?
Softdevice
NordicのnRFシリーズには Softdevice というのがある。Softdevice は先のAPIライブラリのようなもので、それを使う上においては各種認証はキープされる。
MDBT42 も Softdevice を使う前提で、技適クリアしながらユーザアプリを作ることができる。先の「BLEモジュール MDBT42」も、 Softdevice を使ってArduino開発環境でアプリを開発するやり方。
さて、太陽誘電の EYSGCNZWY の APIライブラリ が Softdevice なのか、太陽誘電のオリジナルなのか? もし Softdevice なら、MDBT42 と同じ方法が使えることになる。
調べてみると、digikey にあるデータシートに記述がありました。
これらによると、やはり両方共Softdeviceを用いているようです。特に EYSGJNZWY は S120 V2.1.0 を使用していると明示してありました。
Softdevice と アップデート
ただしSoftdeviceも随時アップデートされている。厳密に考えれば技適を取得したバージョンのSoftdeviceと1バイトでも異なれば技適が通らないのではないか? という疑問があるが、実際にはこういったもののupdateは許容されているようだ。
実際の書き換え
このように、ピンを立ててみました。
ピンを立てたところは電源、GND,SWDI,SWDCとP004です。
「BLEモジュール MDBT42」 https://qiita.com/nanbuwks/items/d26447c0bfa28b1d05df
と同じように環境設定、配線をします。
以下のように設定をしました。
Lチカのコード
void setup() {
pinMode(4, OUTPUT);
}
void loop() {
digitalWrite(4, HIGH);
delay(1000);
digitalWrite(4, LOW);
delay(1000);
}
Lチカできました。