Seeedの坪井です。最近、技適マークも付いたWio Terminalについてまとめてみます。
Wio Terminalは、Seeedが4月に発売した液晶と無線LAN、BLEを積んだCortex-M4 with FPUなMicrochipのSAMD51の筐体入りの開発ボードです。 無線LANは、よくある2.4GHz対応だけでなく5GHzにも対応している点が特徴で、 RealtekのRTL8720DNというチップを使っています。 RTL8720DNもマイコン入りのチップですが、Wio TerminalのメインMCUであるSAMD51からUARTを通じてATコマンドで通信をするように作られています。このATコマンドはESP互換だそうです。
Wio Terminalにはバッテリーは内蔵されていません。これは、全ての方がバッテリーを必要とするわけではなく、使わない方にとってはバッテリーは邪魔であるという事情によります。バッテリーで運用したい方は、Battery Chassisをオプションとして用意していますので、こちらもご検討ください。Groveコネクタも6つ増えます。
日本の流通では、Battery Chassisには電源スイッチを付け設計を改めたものを発売予定です。
どこで売っているのか
秋月電子通商 トップページ - 電子部品・半導体 【通販・販売】 [M-15275]
Wio Terminal / 102991299 共立エレショップ
Wio Terminal 102991299|電子部品・半導体通販のマルツ
SeeedのECサイトであるBazaarでも販売をしていますが、現在は物流の状態があまり良くないのでお届けまでに時間を要してしまいます。ですので、国内の販売店さんからお買い上げいただくことをお勧めします。
Blogなどにまとめてくださっている記事は「Wio Terminalドキュメントガイド」で纏めさせていただくことにしました。 seeedjp.github.io
ドキュメントの類
Wio Terminalを使うには、ここを参照してください。基本的にはArduinoでの使用を想定しています。
Lチカきたー!#WioTerminal pic.twitter.com/YINd4gthUi
— Nochi (@shikarunochi) 2020年5月10日
なお、Getting StartedでやるLEDチカチカのLEDは、こちらにあります……
以下にある情報は、あくまでこういう使い方をしている方が居らっしゃるという情報提供です。 何らかの問題が発生したり、損害を被ったとしても、著者の方もSeeedとしても責を負うものではないことをご承知ください。
記事書いてくださった
小ネタ
Wio Terminalには磁石が入っています。ですので、金属に磁力で貼り付けることができます。磁石も付いてる。M5Stackと違って内蔵バッテリー無いので電源コード必要だけども、常時こうやって使うのなら、外部給電になりますもんね。#WioTerminal pic.twitter.com/lRnDJBTS29
— Nochi (@shikarunochi) 2020年5月10日
Wio Terminalの底面の40ピンGPIOは、Raspberry PiのGPIOに刺さります。ただし、直接挿すことはできず、高さを稼ぐために連結ソケットなどを使う必要があります。Wio terminal をラズパイに刺す場合はこっちですね。#持っててよかった連結ピンソケット pic.twitter.com/3VScexLGKI
— じぇーけーそふと(JKではありません) (@jksoft913) 2020年5月10日
プリインストールのゲームで高得点を取ると何か貰えるらしいです。Wow! We also prepared a gift to you! https://t.co/1KVh4FKw5n
— Seeed Studio (@seeedstudio) 2020年5月6日
液晶のドライバとかベンチマークとか
送信バッファが4Byteまで使えたので最大4Byte単位で送信するようにしてみた。
— らびやん (@lovyan03) 2020年5月9日
画面がバグらない程度のクロックという事でCPU150MHzのSPI75MHz設定でベンチ。まずまずの結果が出たかな? pic.twitter.com/C1pFN5t6CX
#LovyanGFX v0.1.3 github更新。#WioTerminal 対応分をmasterブランチに反映しました。
— らびやん (@lovyan03) 2020年5月13日
LGFXはTFT_eSPI互換の関数を提供しつつ、より高速かつ高機能なライブラリです。既存のコードからinclude文をひとつ変更するだけで動くモードもあります。現状まだβ扱いですが、何卒…!https://t.co/ilO0fkkGW9
SDへのアクセス
「Smooth Fonts」のサンプルでSDカード使うので、この方法だと或いは?https://t.co/3ScPOQUcNc
— やまねこ⚙楢ノ木技研 (@felis_silv) 2020年5月10日
無線LAN
めんどくさいですが、RTL8720のファームウェアのアップデートと、大量のライブラリのインストールをお願いします。 ファームウェアのアップデートには、Windowsが必要です。僕はmacOSユーザーなのでVMware FusionでWindowsの仮想マシンを立ち上げてアップデートしました。
実際の使い方はこちらです。
とりあえず、Wio terminalからwifi繋いでwebアクセスいけた。蟹チップのファームアップデートとか超めんどかった pic.twitter.com/YgDhTmainL
— やまねこ⚙楢ノ木技研 (@felis_silv) 2020年5月10日
ブザー
Wio Terminal、ブザーON/OFFでの音階出力こんな感じです。 pic.twitter.com/RuroS0qvwL
— Nochi (@shikarunochi) 2020年5月13日
ボタンとブザー#WioTerminal pic.twitter.com/bon2Xuxcf8
— HomeMadeGarbage (@H0meMadeGarbage) 2020年5月13日
明るさセンサ
ディスプレイと照度センサの
— HomeMadeGarbage (@H0meMadeGarbage) 2020年5月13日
バリエーション#WioTerminal pic.twitter.com/ddJwnuGqxQ
赤外線送信機
赤外線もバシバシでとる#WioTerminal #テレビリモコン pic.twitter.com/zmRBWO0Mog
— HomeMadeGarbage (@H0meMadeGarbage) 2020年5月13日
Grove
#WioTerminal が届いたのでとりあえず Seeed 純正の Grove な水位センサーをお試し。あっさり動いた。静電容量を使うのは電極の腐食を気にしなくていいので良いですね。 pic.twitter.com/5ttK1x0Ed0
— ミクミンP/Kazuhiro Sasao (@ksasao) 2020年5月15日
USB Host
USB Host機能使用時の給電は後ろの40ピンコレクタの5Vから
— HomeMadeGarbage (@H0meMadeGarbage) 2020年5月16日
リシアルモニタはUSBシリアル変換モジュールをTDX/RDXに接続してTera Termで実施 pic.twitter.com/xFlsGPUoDX
背面の40ピンコネクタに5V出ているのは便利ですね。
UF2ブートローダーを使っています。
wio terminal 買えなかった人もいるみたいだし、忙しくてもちょっとくらいは遊ばないといけないよね。
— Shuichi TAKANO (@shuichi_takano) 2020年5月10日
とりあえず.binからuf2conv使って.uf2を作って、ストレージデバイスとして認識されてるドライブに放り込んだらFlashできるのは確認。
配布するの簡単でいいかもしれない。
すごい勢いで作られたものたち
日本語でもあいさつ! https://t.co/tVay7DLFmY pic.twitter.com/zbWnqVUS5q
— Nochi (@shikarunochi) 2020年5月10日
Wio terminalで、にゃーん pic.twitter.com/mOPEw9l4nR
— やまねこ⚙楢ノ木技研 (@felis_silv) 2020年5月10日
Wio TerminalでMAG画像データ表示できたー! pic.twitter.com/CRCcyLLpTB
— Nochi (@shikarunochi) 2020年5月10日
Wio Terminalに限らず、Cortex-MなArduino向けにRustで作ったライブラリを組み込めるサンプルプロジェクトを作りました!!!(多分動きます、多分)https://t.co/OnUMh0bXnH
— kamiya (@kamiya_owl) 2020年5月13日
とりあえずHOSでも… #WioTerminal #LovyanGFX pic.twitter.com/XHME1Ryiar
— らびやん (@lovyan03) 2020年5月12日
あれ以外の何かさん!#WioTerminal pic.twitter.com/L5Pz03xo5s
— Nochi (@shikarunochi) 2020年5月13日
WioTerminalでLCDの読み出しが出来たので、 LovyanGFXの塗り潰し関数などか使用可能になりました。ということで動作確認の迷路の塗り潰しテスト。 pic.twitter.com/IHLJlKA9zc
— らびやん (@lovyan03) 2020年5月13日
とりあえず連番jpgを全部オンメモリしてから連続デコードしてみるテスト。9fpsぐらい。#WioTerminal #LovyanGFX pic.twitter.com/c4mqWvY52t
— らびやん (@lovyan03) 2020年5月13日
Arduino開発環境のソースコードリンク集
GitHub - Seeed-Studio/ArduinoCore-samd Wio Terminalの開発をArduino IDEで行うためのボードサポート
GitHub - LynnL4/uf2-samdx1: MSC bootloader (based on UF2) for SAMD21 Wio Terminalで使われているブートローダー
GitHub - Seeed-Studio/seeed-ambd-sdk: SDK for AmebaD RTL8720DNで動いているファームウェア (無線関係はバイナリファイルであるため、アプリケーションコードを書き換えても認証には影響を与えないと聞いています。)
分解のしかた
Wio Terminalばらせた。裏蓋は左上・右下の足を剥がせば出てくるネジ+ネジがないあたりの側面のツメで止まってる。
— Kenta IDA (@ciniml) 2020年5月10日
筐体とPCBは液晶が両面テープで止まってるので、ゆっくり持ち上げれば剥がれてくれるっぽい。
技適的にバラすのどうなのか怪しいのでその辺気にする人はばらさんように。 #seeedstudio pic.twitter.com/EkGO0U5TH1
#WioTerminal デバッグコネクタ外に出せるように筐体加工できた。ちょっと本体下面のリブとか切ってるので、筐体下面が弱くなるけど、まあ許容範囲内かな。 pic.twitter.com/y6meneoLm3
— Kenta IDA (@ciniml) 2020年5月13日
Seeedとして分解を推奨するものではありません。Wio Terminalとりあえず分解できた。ネジ2本外して、爪で留まってる裏蓋をひっぺがす。5方向スイッチのキャップを取る。基板の左上のネジ穴にドライバーを差し込むか40ピンコネクタを持ってゆっくりLCDを留めてる両面テープを剥がすイメージで浮かした。(自己責任でどうぞ。公式ではありません。) pic.twitter.com/ssCsHuReAS
— TSUBOI Yoshihiro (@ytsuboi) 2020年5月10日
デバッグしたい!
Arduino IDEではデバッグできません。
Wio Terminalのデバッグ用コネクタこんな感じになった。筐体加工したらそのまま入れられそうな気がする。 #wioterminal #seeedstudio pic.twitter.com/L7T80Q7YZa
— Kenta IDA (@ciniml) 2020年5月10日
わーい。あとでちょっと筐体削る。 pic.twitter.com/nWUbzDmA1E
— TSUBOI Yoshihiro (@ytsuboi) 2020年5月10日
とりあえずMPLAB Harmonyを使って生成したWio Terminal用コードを、OpenOCD+VSCodeで快適に開発するサンプルプロジェクトを上げといたで。快適。おすすめ。 調整すればArduino coreも使えると思われる。 https://t.co/gdHZivc39X #wioterminal #seeedstudio
— Kenta IDA (@ciniml) 2020年5月11日
まとめ
自分の作ったものも見て欲しい!という方は、Twitterで @ytsuboi 宛にmentionを飛ばしていただければ幸いです。
また、ハッシュタグ#WioTerminal
の利用も歓迎です。
変更履歴
このページは頻繁に更新するつもりですので、変更履歴は割愛させていただきます。