Google AIY 보이스 키트의 기기 동작을 사용하여 LED를 제어해 보세요.
샘플 코드를 들여다 보면 어쩐지 그것 같은 기술이 있거나, 장치 등록의 순서로 수수께끼의 키워드가 나오거나 했기 때문에, 어쩐지 사용할 수 있을까? 라고 하는 곳으로부터, 실제로 놀아 보았습니다.
준비
이전 기사 까지의 순서로 Voice kit를 사용할 수 있게 되어 있다고 합니다.
또한 샘플 코드는 이전 기사에서 복사 및 편집한 것을 계속 사용합니다.
나중에 설명하겠지만 보이스 HAT에 LED를 연결하기 위해 LED를 준비하십시오.
기기 등록 업데이트
이미 등록된 기기의 정보를 업데이트하여 기기가 특정 작업에 반응하도록 합니다.
먼저 장치 모델 정보를 업데이트합니다.
(env) pi@raspberrypi:~/AIY-voice-kit-python $ googlesamples-assistant-devicetool register-model --manufacturer "Assistant SDK developer" --product-name "Assistant SDK light" --type LIGHT --model <model-name> --trait action.devices.traits.OnOff --trait action.devices.traits.Brightness --trait action.devices.traits.ColorTemperature
여기서 나오는 --type
와 --trait
의 종류는 Google Assistant SDK 문서 를 참고로 선택합니다. 위의 예에서는 라이트의 온 오프, 밝기, 색을 조정하는 옵션을 붙이고 있습니다.
명령을 실행하고 성공적으로 업데이트되면 확실히 확인하십시오. 다음과 같은 출력을 얻을 수 있습니다.
(env) pi@raspberrypi:~/AIY-voice-kit-python $ googlesamples-assistant-devicetool list --model
Device Model Id: <model-name>
Project Id: <Project ID>
Device Type: action.devices.types.LIGHT
Trait action.devices.traits.Brightness
Trait action.devices.traits.ColorTemperature
Trait action.devices.traits.OnOff
확인이 완료되면 기기 정보를 업데이트합니다.
(env) pi@raspberrypi:~/AIY-voice-kit-python $ googlesamples-assistant-devicetool register-device --device <device-id> --model <model-name> --client-type SERVICE
지금까지 오류없이 가면 아마 정보 업데이트가 완료되었습니다.
Voice HAT에 LED를 연결
AIY Project 페이지의 Voice HAT GPIO 및 Voice kit와 함께 제공된 설명서 P.58을 참조하여 LED를 연결합니다.
이번에는 풀 컬러 LED를 사용하여 Servo0에 LED 적색, Servo1에 LED 녹색, Servo2에 LED 파란색을 연결했습니다.
샘플 코드 추가 개조
디바이스 액션이 실행될 때 GPIO를 직접 두드려 LED를 빛내도록 샘플 코드를 개조합니다.
이전 기사 에서 편집한 파일을 계속 사용합니다.
PWM을 사용하거나 하면 좋았을지도 모릅니다만, 어디까지나 샘플이므로 꽤 손발입니다, 양해 바랍니다.
호와 rd. py
--- hotword.py.1 2018-02-21 02:42:00.071501759 +0900
+++ hotword.py 2018-02-22 03:59:04.228139279 +0900
@@ -21,6 +21,8 @@ import argparse
import os.path
import json
+import RPi.GPIO as GPIO
+
import google.auth.transport.requests
import google.oauth2.credentials
@@ -34,6 +36,10 @@ from google.assistant.library.file_helpe
DEVICE_API_URL = 'https://embeddedassistant.googleapis.com/v1alpha2'
+# GPIO Pin no.
+RED_PIN = 26
+GREEN_PIN = 6
+BLUE_PIN = 13
def process_device_actions(event, device_id):
if 'inputs' in event.args:
@@ -48,6 +54,30 @@ def process_device_actions(event, device
yield e['command'], e['params']
else:
yield e['command'], None
+ if e['command'] == 'action.devices.commands.OnOff':
+ if e['params']['on']:
+ GPIO.output(RED_PIN,GPIO.HIGH)
+ GPIO.output(GREEN_PIN,GPIO.HIGH)
+ GPIO.output(BLUE_PIN,GPIO.HIGH)
+ else :
+ GPIO.output(RED_PIN,GPIO.LOW)
+ GPIO.output(GREEN_PIN,GPIO.LOW)
+ GPIO.output(BLUE_PIN,GPIO.LOW)
+ if e['command'] == 'action.devices.commands.ColorAbsolute':
+ print(e['params']['color']['spectrumRGB'])
+ if e['params']['color']["spectrumRGB"] & 0xff0000:
+ GPIO.output(RED_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(RED_PIN,GPIO.LOW)
+ if e['params']['color']["spectrumRGB"] & 0x00ff00:
+ GPIO.output(GREEN_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(GREEN_PIN,GPIO.LOW)
+ if e['params']['color']["spectrumRGB"] & 0x0000ff:
+ GPIO.output(BLUE_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(BLUE_PIN,GPIO.LOW)
+
def process_event(event, device_id):
@@ -139,6 +169,13 @@ def main():
credentials = google.oauth2.credentials.Credentials(token=None,
**json.load(f))
+ # GPIO setup
+ GPIO.setmode(GPIO.BCM)
+ GPIO.setwarnings(False)
+ GPIO.setup(RED_PIN,GPIO.OUT)
+ GPIO.setup(GREEN_PIN,GPIO.OUT)
+ GPIO.setup(BLUE_PIN,GPIO.OUT)
+
with Assistant(credentials, args.device_model_id) as assistant:
events = assistant.start()
부 sh와 다른 lk. py
--- pushtotalk.py.1 2018-02-21 02:18:19.228083473 +0900
+++ pushtotalk.py 2018-02-22 04:04:27.796660481 +0900
@@ -22,6 +22,8 @@ import os.path
import sys
import uuid
+import RPi.GPIO as GPIO
+
import click
import grpc
import google.auth.transport.grpc
@@ -54,6 +56,10 @@ DIALOG_FOLLOW_ON = embedded_assistant_pb
CLOSE_MICROPHONE = embedded_assistant_pb2.DialogStateOut.CLOSE_MICROPHONE
DEFAULT_GRPC_DEADLINE = 60 * 3 + 5
+# GPIO Pin no.
+RED_PIN = 26
+GREEN_PIN = 6
+BLUE_PIN = 13
class SampleAssistant(object):
"""Sample Assistant that supports conversations and device actions.
@@ -296,6 +302,13 @@ def main(api_endpoint, credentials, proj
$ python -m googlesamples.assistant -i <input file> -o <output file>
"""
+ # GPIO setup
+ GPIO.setmode(GPIO.BCM)
+ GPIO.setwarnings(False)
+ GPIO.setup(RED_PIN,GPIO.OUT)
+ GPIO.setup(GREEN_PIN,GPIO.OUT)
+ GPIO.setup(BLUE_PIN,GPIO.OUT)
+
# Setup logging.
logging.basicConfig(level=logging.DEBUG if verbose else logging.INFO)
@@ -363,8 +376,33 @@ def main(api_endpoint, credentials, proj
def onoff(on):
if on:
logging.info('Turning device on')
+ GPIO.output(RED_PIN,GPIO.HIGH)
+ GPIO.output(GREEN_PIN,GPIO.HIGH)
+ GPIO.output(BLUE_PIN,GPIO.HIGH)
else:
logging.info('Turning device off')
+ GPIO.output(RED_PIN,GPIO.LOW)
+ GPIO.output(GREEN_PIN,GPIO.LOW)
+ GPIO.output(BLUE_PIN,GPIO.LOW)
+
+ @device_handler.command('action.devices.commands.ColorAbsolute')
+ def colorabsolute(color):
+ logging.info(color["spectrumRGB"])
+ if color["spectrumRGB"] & 0xff0000:
+ logging.info('RED')
+ GPIO.output(RED_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(RED_PIN,GPIO.LOW)
+ if color["spectrumRGB"] & 0x00ff00:
+ logging.info('GREEN')
+ GPIO.output(GREEN_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(GREEN_PIN,GPIO.LOW)
+ if color["spectrumRGB"] & 0x0000ff:
+ logging.info('BLUE')
+ GPIO.output(BLUE_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(BLUE_PIN,GPIO.LOW)
if not device_id or not device_model_id:
try:
실제 시도해보기
hotword의 경우, 「OK Google, 라이트를 켜고」라고 하는 워드로 LED가 점등합니다. 마찬가지로, 「라이트를 끄고」 「라이트를 파랑으로 하고」 「라이트를 빨강으로」등으로 LED를 제어할 수 있게 됩니다.
pushtotalk의 경우는 일일이 버튼을 눌러야 합니다만, 나머지는 같은 동작이 됩니다.
Reference
이 문제에 관하여(Google AIY 보이스 키트의 기기 동작을 사용하여 LED를 제어해 보세요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/exyz_cbr/items/74147987d6e4568b58b6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
이미 등록된 기기의 정보를 업데이트하여 기기가 특정 작업에 반응하도록 합니다.
먼저 장치 모델 정보를 업데이트합니다.
(env) pi@raspberrypi:~/AIY-voice-kit-python $ googlesamples-assistant-devicetool register-model --manufacturer "Assistant SDK developer" --product-name "Assistant SDK light" --type LIGHT --model <model-name> --trait action.devices.traits.OnOff --trait action.devices.traits.Brightness --trait action.devices.traits.ColorTemperature
여기서 나오는
--type
와 --trait
의 종류는 Google Assistant SDK 문서 를 참고로 선택합니다. 위의 예에서는 라이트의 온 오프, 밝기, 색을 조정하는 옵션을 붙이고 있습니다.명령을 실행하고 성공적으로 업데이트되면 확실히 확인하십시오. 다음과 같은 출력을 얻을 수 있습니다.
(env) pi@raspberrypi:~/AIY-voice-kit-python $ googlesamples-assistant-devicetool list --model
Device Model Id: <model-name>
Project Id: <Project ID>
Device Type: action.devices.types.LIGHT
Trait action.devices.traits.Brightness
Trait action.devices.traits.ColorTemperature
Trait action.devices.traits.OnOff
확인이 완료되면 기기 정보를 업데이트합니다.
(env) pi@raspberrypi:~/AIY-voice-kit-python $ googlesamples-assistant-devicetool register-device --device <device-id> --model <model-name> --client-type SERVICE
지금까지 오류없이 가면 아마 정보 업데이트가 완료되었습니다.
Voice HAT에 LED를 연결
AIY Project 페이지의 Voice HAT GPIO 및 Voice kit와 함께 제공된 설명서 P.58을 참조하여 LED를 연결합니다.
이번에는 풀 컬러 LED를 사용하여 Servo0에 LED 적색, Servo1에 LED 녹색, Servo2에 LED 파란색을 연결했습니다.
샘플 코드 추가 개조
디바이스 액션이 실행될 때 GPIO를 직접 두드려 LED를 빛내도록 샘플 코드를 개조합니다.
이전 기사 에서 편집한 파일을 계속 사용합니다.
PWM을 사용하거나 하면 좋았을지도 모릅니다만, 어디까지나 샘플이므로 꽤 손발입니다, 양해 바랍니다.
호와 rd. py
--- hotword.py.1 2018-02-21 02:42:00.071501759 +0900
+++ hotword.py 2018-02-22 03:59:04.228139279 +0900
@@ -21,6 +21,8 @@ import argparse
import os.path
import json
+import RPi.GPIO as GPIO
+
import google.auth.transport.requests
import google.oauth2.credentials
@@ -34,6 +36,10 @@ from google.assistant.library.file_helpe
DEVICE_API_URL = 'https://embeddedassistant.googleapis.com/v1alpha2'
+# GPIO Pin no.
+RED_PIN = 26
+GREEN_PIN = 6
+BLUE_PIN = 13
def process_device_actions(event, device_id):
if 'inputs' in event.args:
@@ -48,6 +54,30 @@ def process_device_actions(event, device
yield e['command'], e['params']
else:
yield e['command'], None
+ if e['command'] == 'action.devices.commands.OnOff':
+ if e['params']['on']:
+ GPIO.output(RED_PIN,GPIO.HIGH)
+ GPIO.output(GREEN_PIN,GPIO.HIGH)
+ GPIO.output(BLUE_PIN,GPIO.HIGH)
+ else :
+ GPIO.output(RED_PIN,GPIO.LOW)
+ GPIO.output(GREEN_PIN,GPIO.LOW)
+ GPIO.output(BLUE_PIN,GPIO.LOW)
+ if e['command'] == 'action.devices.commands.ColorAbsolute':
+ print(e['params']['color']['spectrumRGB'])
+ if e['params']['color']["spectrumRGB"] & 0xff0000:
+ GPIO.output(RED_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(RED_PIN,GPIO.LOW)
+ if e['params']['color']["spectrumRGB"] & 0x00ff00:
+ GPIO.output(GREEN_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(GREEN_PIN,GPIO.LOW)
+ if e['params']['color']["spectrumRGB"] & 0x0000ff:
+ GPIO.output(BLUE_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(BLUE_PIN,GPIO.LOW)
+
def process_event(event, device_id):
@@ -139,6 +169,13 @@ def main():
credentials = google.oauth2.credentials.Credentials(token=None,
**json.load(f))
+ # GPIO setup
+ GPIO.setmode(GPIO.BCM)
+ GPIO.setwarnings(False)
+ GPIO.setup(RED_PIN,GPIO.OUT)
+ GPIO.setup(GREEN_PIN,GPIO.OUT)
+ GPIO.setup(BLUE_PIN,GPIO.OUT)
+
with Assistant(credentials, args.device_model_id) as assistant:
events = assistant.start()
부 sh와 다른 lk. py
--- pushtotalk.py.1 2018-02-21 02:18:19.228083473 +0900
+++ pushtotalk.py 2018-02-22 04:04:27.796660481 +0900
@@ -22,6 +22,8 @@ import os.path
import sys
import uuid
+import RPi.GPIO as GPIO
+
import click
import grpc
import google.auth.transport.grpc
@@ -54,6 +56,10 @@ DIALOG_FOLLOW_ON = embedded_assistant_pb
CLOSE_MICROPHONE = embedded_assistant_pb2.DialogStateOut.CLOSE_MICROPHONE
DEFAULT_GRPC_DEADLINE = 60 * 3 + 5
+# GPIO Pin no.
+RED_PIN = 26
+GREEN_PIN = 6
+BLUE_PIN = 13
class SampleAssistant(object):
"""Sample Assistant that supports conversations and device actions.
@@ -296,6 +302,13 @@ def main(api_endpoint, credentials, proj
$ python -m googlesamples.assistant -i <input file> -o <output file>
"""
+ # GPIO setup
+ GPIO.setmode(GPIO.BCM)
+ GPIO.setwarnings(False)
+ GPIO.setup(RED_PIN,GPIO.OUT)
+ GPIO.setup(GREEN_PIN,GPIO.OUT)
+ GPIO.setup(BLUE_PIN,GPIO.OUT)
+
# Setup logging.
logging.basicConfig(level=logging.DEBUG if verbose else logging.INFO)
@@ -363,8 +376,33 @@ def main(api_endpoint, credentials, proj
def onoff(on):
if on:
logging.info('Turning device on')
+ GPIO.output(RED_PIN,GPIO.HIGH)
+ GPIO.output(GREEN_PIN,GPIO.HIGH)
+ GPIO.output(BLUE_PIN,GPIO.HIGH)
else:
logging.info('Turning device off')
+ GPIO.output(RED_PIN,GPIO.LOW)
+ GPIO.output(GREEN_PIN,GPIO.LOW)
+ GPIO.output(BLUE_PIN,GPIO.LOW)
+
+ @device_handler.command('action.devices.commands.ColorAbsolute')
+ def colorabsolute(color):
+ logging.info(color["spectrumRGB"])
+ if color["spectrumRGB"] & 0xff0000:
+ logging.info('RED')
+ GPIO.output(RED_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(RED_PIN,GPIO.LOW)
+ if color["spectrumRGB"] & 0x00ff00:
+ logging.info('GREEN')
+ GPIO.output(GREEN_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(GREEN_PIN,GPIO.LOW)
+ if color["spectrumRGB"] & 0x0000ff:
+ logging.info('BLUE')
+ GPIO.output(BLUE_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(BLUE_PIN,GPIO.LOW)
if not device_id or not device_model_id:
try:
실제 시도해보기
hotword의 경우, 「OK Google, 라이트를 켜고」라고 하는 워드로 LED가 점등합니다. 마찬가지로, 「라이트를 끄고」 「라이트를 파랑으로 하고」 「라이트를 빨강으로」등으로 LED를 제어할 수 있게 됩니다.
pushtotalk의 경우는 일일이 버튼을 눌러야 합니다만, 나머지는 같은 동작이 됩니다.
Reference
이 문제에 관하여(Google AIY 보이스 키트의 기기 동작을 사용하여 LED를 제어해 보세요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/exyz_cbr/items/74147987d6e4568b58b6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
디바이스 액션이 실행될 때 GPIO를 직접 두드려 LED를 빛내도록 샘플 코드를 개조합니다.
이전 기사 에서 편집한 파일을 계속 사용합니다.
PWM을 사용하거나 하면 좋았을지도 모릅니다만, 어디까지나 샘플이므로 꽤 손발입니다, 양해 바랍니다.
호와 rd. py
--- hotword.py.1 2018-02-21 02:42:00.071501759 +0900
+++ hotword.py 2018-02-22 03:59:04.228139279 +0900
@@ -21,6 +21,8 @@ import argparse
import os.path
import json
+import RPi.GPIO as GPIO
+
import google.auth.transport.requests
import google.oauth2.credentials
@@ -34,6 +36,10 @@ from google.assistant.library.file_helpe
DEVICE_API_URL = 'https://embeddedassistant.googleapis.com/v1alpha2'
+# GPIO Pin no.
+RED_PIN = 26
+GREEN_PIN = 6
+BLUE_PIN = 13
def process_device_actions(event, device_id):
if 'inputs' in event.args:
@@ -48,6 +54,30 @@ def process_device_actions(event, device
yield e['command'], e['params']
else:
yield e['command'], None
+ if e['command'] == 'action.devices.commands.OnOff':
+ if e['params']['on']:
+ GPIO.output(RED_PIN,GPIO.HIGH)
+ GPIO.output(GREEN_PIN,GPIO.HIGH)
+ GPIO.output(BLUE_PIN,GPIO.HIGH)
+ else :
+ GPIO.output(RED_PIN,GPIO.LOW)
+ GPIO.output(GREEN_PIN,GPIO.LOW)
+ GPIO.output(BLUE_PIN,GPIO.LOW)
+ if e['command'] == 'action.devices.commands.ColorAbsolute':
+ print(e['params']['color']['spectrumRGB'])
+ if e['params']['color']["spectrumRGB"] & 0xff0000:
+ GPIO.output(RED_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(RED_PIN,GPIO.LOW)
+ if e['params']['color']["spectrumRGB"] & 0x00ff00:
+ GPIO.output(GREEN_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(GREEN_PIN,GPIO.LOW)
+ if e['params']['color']["spectrumRGB"] & 0x0000ff:
+ GPIO.output(BLUE_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(BLUE_PIN,GPIO.LOW)
+
def process_event(event, device_id):
@@ -139,6 +169,13 @@ def main():
credentials = google.oauth2.credentials.Credentials(token=None,
**json.load(f))
+ # GPIO setup
+ GPIO.setmode(GPIO.BCM)
+ GPIO.setwarnings(False)
+ GPIO.setup(RED_PIN,GPIO.OUT)
+ GPIO.setup(GREEN_PIN,GPIO.OUT)
+ GPIO.setup(BLUE_PIN,GPIO.OUT)
+
with Assistant(credentials, args.device_model_id) as assistant:
events = assistant.start()
부 sh와 다른 lk. py
--- pushtotalk.py.1 2018-02-21 02:18:19.228083473 +0900
+++ pushtotalk.py 2018-02-22 04:04:27.796660481 +0900
@@ -22,6 +22,8 @@ import os.path
import sys
import uuid
+import RPi.GPIO as GPIO
+
import click
import grpc
import google.auth.transport.grpc
@@ -54,6 +56,10 @@ DIALOG_FOLLOW_ON = embedded_assistant_pb
CLOSE_MICROPHONE = embedded_assistant_pb2.DialogStateOut.CLOSE_MICROPHONE
DEFAULT_GRPC_DEADLINE = 60 * 3 + 5
+# GPIO Pin no.
+RED_PIN = 26
+GREEN_PIN = 6
+BLUE_PIN = 13
class SampleAssistant(object):
"""Sample Assistant that supports conversations and device actions.
@@ -296,6 +302,13 @@ def main(api_endpoint, credentials, proj
$ python -m googlesamples.assistant -i <input file> -o <output file>
"""
+ # GPIO setup
+ GPIO.setmode(GPIO.BCM)
+ GPIO.setwarnings(False)
+ GPIO.setup(RED_PIN,GPIO.OUT)
+ GPIO.setup(GREEN_PIN,GPIO.OUT)
+ GPIO.setup(BLUE_PIN,GPIO.OUT)
+
# Setup logging.
logging.basicConfig(level=logging.DEBUG if verbose else logging.INFO)
@@ -363,8 +376,33 @@ def main(api_endpoint, credentials, proj
def onoff(on):
if on:
logging.info('Turning device on')
+ GPIO.output(RED_PIN,GPIO.HIGH)
+ GPIO.output(GREEN_PIN,GPIO.HIGH)
+ GPIO.output(BLUE_PIN,GPIO.HIGH)
else:
logging.info('Turning device off')
+ GPIO.output(RED_PIN,GPIO.LOW)
+ GPIO.output(GREEN_PIN,GPIO.LOW)
+ GPIO.output(BLUE_PIN,GPIO.LOW)
+
+ @device_handler.command('action.devices.commands.ColorAbsolute')
+ def colorabsolute(color):
+ logging.info(color["spectrumRGB"])
+ if color["spectrumRGB"] & 0xff0000:
+ logging.info('RED')
+ GPIO.output(RED_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(RED_PIN,GPIO.LOW)
+ if color["spectrumRGB"] & 0x00ff00:
+ logging.info('GREEN')
+ GPIO.output(GREEN_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(GREEN_PIN,GPIO.LOW)
+ if color["spectrumRGB"] & 0x0000ff:
+ logging.info('BLUE')
+ GPIO.output(BLUE_PIN,GPIO.HIGH)
+ else:
+ GPIO.output(BLUE_PIN,GPIO.LOW)
if not device_id or not device_model_id:
try:
실제 시도해보기
hotword의 경우, 「OK Google, 라이트를 켜고」라고 하는 워드로 LED가 점등합니다. 마찬가지로, 「라이트를 끄고」 「라이트를 파랑으로 하고」 「라이트를 빨강으로」등으로 LED를 제어할 수 있게 됩니다.
pushtotalk의 경우는 일일이 버튼을 눌러야 합니다만, 나머지는 같은 동작이 됩니다.
Reference
이 문제에 관하여(Google AIY 보이스 키트의 기기 동작을 사용하여 LED를 제어해 보세요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/exyz_cbr/items/74147987d6e4568b58b6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Google AIY 보이스 키트의 기기 동작을 사용하여 LED를 제어해 보세요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/exyz_cbr/items/74147987d6e4568b58b6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)