M5Stack LLM モジュールのSerialTextAssistant + TTSへメッセージを送るシリアルモニタをラズパイ+ Python でやってみます。
ラズパイへのArduino IDE のインストールなどは
をご参照ください。
また、M5Stack LLM モジュールへのSerialTextAssistant + TTSのデプロイは前回の
Windows11からM5Stack LLM モジュール に触ってみる(4)アプリケーション(SerialTextAssistant + TTS)
をご参照ください。
ラズパイとM5Stack をType-C のポートで接続しておきます。
ラズパイからM5Stack は以下のポート名で認識されています。
/dev/ttyUSB0 あるいは /dev/ttyACM0
ラズパイのOSはBookworm(Debian 12)Desktop 64-bit
Python のバージョンは3.11.2
serial用のライブラリをインストールするためにp-env という名前で仮想環境を作っておきます。
|
1 2 3 |
python3 -m venv p-env source p-env/bin/activate |
ライブラリをインストール
|
1 |
pip3 install pyserial |
メッセージをM5Stack へ通信するコンソールアプリのコードは以下のようになります。
通信速度は115200に設定
引数にメッセージを入れて、単純に送信するだけのコード
【mes_serial.py】
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
import sys import datetime import serial args = sys.argv if 2 <= len(args): mes = args[1] else: mes = "Who am i ?" NEWLINE = '\r\n' //ここは各自の環境で書き換えてください port = '/dev/ttyUSB0' def open_port(port, baudrate): ser = serial.Serial() ser.baudrate = int(baudrate) ser.timeout = 0.01 ser.port = port try: ser.open() return ser except: print("error when opening serial") return None ser = open_port(port,115200) w_data = mes + NEWLINE ser.write(w_data.encode()) ser.close() |
「Who are you ?」というメッセージをM5Stack 経由でLLM に送ってみます。
|
1 |
python3 mes_serial.py "Who are you ?" |
仮想環境を抜けます。
|
1 |
deactivate |
関連ページ
Windows 11からM5Stack LLM モジュール に触ってみる(1)アクセス編
Windows 11からM5Stack LLM モジュール に触ってみる(2)環境設定とアプリケーション
Windows11からM5Stack LLM モジュール に触ってみる(3)アプリケーション(TTS)
Windows11からM5Stack LLM モジュール に触ってみる(4)アプリケーション(SerialTextAssistant + TTS)
LLM モジュール のSerialTextAssistant + TTS のシリアルモニタにPythonを使ってみる



Leave a Reply