引き続き、Seeeduino Xiao側を動かしていきます。
追記)スマホのスクリーンショットの画面がGoogle Photo直結だったようで(?)、写真を整理した際に見えなくなってしまいました。
Seeeduino Xiaoのファームウェアの書き込み
Step 4のUpload Code to Your Host Microcontrollerに沿って進めます。
Arduinoを起動して、~/Arduino/libraries/AlexaConnectKit_HelloWorld/examples/HelloWorld.ino を読み込みます。
「ツール」→「ボード」→「Seeeduino Xiao」を選択し、「ツール」→「シリアルポート」→「/dev/ttyACM0」を選択して、ボードに書き込みます。
ACKモジュールをAlexaに登録する
Android上でAlexaアプリ(Amazon Alexa)をインストールします。
(スクリーンショット消失^^;)
Alexaアプリを開いてamazon developer accountでログインします。ログインしたら居住国で日本を選んだら・・・・先に進みません(なんで?)。
一旦アプリを終了して、再度起動したら、ライセンス許諾の後、セットアップに進みました。
(スクリーンショット消失^^;)
デバイスを登録するかと効いてきましたので、はいで進みます。
権限として位置情報を要求してくるので、許可します。
BlueToothを有効にするように要求してくるので、有効にします。
(スクリーンショット消失^^;)
セットアップするデバイスの選択に進みます。。
(スクリーンショット消失^^;)
他のデバイスを選択すると、自分のアカウントが出てくるので選択します。
(スクリーンショット消失^^;)
指示に従い、音声IDのセットアップをします。
(スクリーンショット消失^^;)
指示に従っていくと、再度、セットアップするデバイスの選択画面に戻ります。
(スクリーンショット消失^^;)
ここで、再度Seeeduino XiaoのUSBケーブルを抜いて挿し直して再起動します。
(スクリーンショット消失^^;)
スクロールしていくと、「開発デバイス」があるので、選択します。
(スクリーンショット消失^^;)
開発デバイスのブランドでACKを選択します。
(スクリーンショット消失^^;)
写真と動画の撮影を許可します。
(スクリーンショット消失^^;)
TutrialのStep3で作成した2次元バーコードのPNGファイルをスキャンします
(スクリーンショット消失^^;)
デバイスを検索すると、WiFiの設定画面になるので、ACKを接続させるAPを選択してパスワードを入力しして、再びしばらく待ちます。
・・・が、プロビジョニングが失敗してしまいます・・。
(スクリーンショット消失^^;)
ログ上では、途中でACK受信でエラーになるっぽく見えています。
3050 [INF ProcessEventIfAvailable] HOSTINT asserted; processing inbound event.
3050 [INF SetSize_] Heaplet high-water consumption: 15 bytes
3107 [WRN ProcessEventState_ReceiveNextEvent_] Event of acp_response type 1 not handled.
3107 [INF ProcessEventIfAvailable] HOSTINT asserted; processing inbound event.
3129 [INF ProcessEventState_ReceiveNextEvent_] Received connectivity module booted event.
3129 [INF LifecycleModuleBooted] Connectivity Module finished booting or rebooting.
3129 [INF ACKUser_OnLifecycleStateChange] ACK lifecycle state changed to 2
3129 [INF SatisfySendHostConfig] Sending host config to ACK Connectivity Module...
3129 [INF ACKModule_HostConfigWrite] Sending write host config command
3130 [INF SetSize_] Heaplet high-water consumption: 19 bytes
3456 [INF SatisfySendHostConfig] Sent host config to ACK Connectivity Module.
3500 [INF SetSize_] Heaplet high-water consumption: 59 bytes
3507 [INF ACKUser_OnLifecycleStateChange] ACK lifecycle state changed to 4
5976 [INF ACKUser_OnLifecycleStateChange] ACK lifecycle state changed to 5
63475 [INF ACK_GetStatus] Approximate epoch: 60 seconds
66456 [ERR ReadAck_] I/O error reading ack.
66456 [ERR SendRequestPacket_] Error 2 receiving ACK for request header.
66456 [ERR SendAcpCommand_] Unable to send Alexa response command, err: 2.
66456 [ERR ACKModule_GetStatus] Send acp_cmd and get and decode acp_response failed, err 2
66456 [INF ACKUser_OnLifecycleStateChange] ACK lifecycle state changed to 2
68460 [ERR ReadAck_] Alexa Connect Kit returned failure ack: 7.
68460 [ERR SendRequestPacket_] Error 3 receiving ACK for request header.
68461 [ERR SendAcpCommand_] Unable to send Alexa response command, err: 3.
68461 [ERR ACKModule_GetStatus] Send acp_cmd and get and decode acp_response failed, err 3
70972 [INF SetSize_] Heaplet high-water consumption: 63 bytes
70977 [INF ACK_GetStatus] Approximate epoch: 1638983450 seconds
70977 [INF ACKUser_OnLifecycleStateChange] ACK lifecycle state changed to 5
80977 [INF ACK_GetStatus] Approximate epoch: 1638983460 seconds
115976 [INF ACKUser_OnLifecycleStateChange] ACK lifecycle state changed to 4
140975 [INF ACK_GetStatus] Approximate epoch: 1638983520 seconds
200975 [INF ACK_GetStatus] Approximate epoch: 1638983580 seconds
260975 [INF ACK_GetStatus] Approximate epoch: 1638983640 seconds
320975 [INF ACK_GetStatus] Approximate epoch: 1638983700 seconds
うーん、何らかの方法でepochtimeは取得できているようなので、少なくともSeeeduino XiaoとACK moduleの間は通信できていて、ACK moduleとスマートフォンもしくはACK moduleとWi-Fi APの間の通信はできていると思えるのですが、エラーになってしまいます。