PCからTracker3 OT3mを制御しようとしたのですが、うまくいかず、解決まで半日かかりました。結論から言うと原因は、コマンドを速く送りすぎたからの模様です。
Agent Systemsが提供しているOTWINCFGという設定ツールを使うと、いろいろな設定が問題なくできます。しかし、自作のPythonプログラムから設定しようとすると、うまく動作するコマンドもあれば、動作しないコマンドもある。。。。。特に、今回、使用するUSBKISSコマンドが動かない。試しに、TeratermからUSBKISS ONとマニュアルタイプすると動作する。。。
ネットで有用な情報がないか、いろいろ見ていたら、ボーレートが速すぎるとマイコンが処理しきれないという書き込みがあり(Tracker3とは全然関係ないマイコンの話)、コマンドを送り込むスピードの問題なのか、、、そこで、一文字送るごとに、若干のWaitを入れてみたところ、動作するようになりました。
"""Writes data to the serial port one byte at a time with a delay."""
for byte in data:
self.ser.write(bytes([byte]))
self.ser.flush() # Ensure the byte is sent immediately


