###前提・実現したいこと
現在Androidアプリケーションを開発しています。
Pythonでラズベリーパイに接続したカメラの情報を取得,opencvで処理し,
数値をAndroidのUnityアプリへUSBケーブルを介してシリアル通信で送りたいのですが,実現できずにいます。
わからない点はソースコード中のポート名を設定するところで,dmesgコマンドで確認した "/dev/sr0" を設定しているのですがこれが本当に正しく設定できているのか分かりません。
実行した場合下記のエラーメッセージがでてきます。
使用するUSBケーブルは両端がtype-Aとmicro-Bのものです。
--追記--
Android端末をラズベリーパイにUSB接続したところ、
dev/sr0
dev/sg0
dev/bsg
dev/libmtp-1-1.2
が追加されていました。
"/dev/libmtp-1-1.2"に変更して実行したところ,
serial.serialutil.SerialException: Could not configure port: (25, 'Inappropriate ioctl for device')
というエラーが出ます。
こちらも原因がよくわからずに困っています。
--
###発生している問題・エラーメッセージ
Traceback (most recent call last):
File "SER.py", line 3, in <module>
ser = serial.Serial("/dev/sr0", 9600, timeout=10)
File "/usr/lib/python2.7/dist-packages/serial/serialutil.py", line 236, in init
self.open()
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 272, in open
self._reconfigure_port(force_update=True)
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 315, in _reconfigure_port
raise SerialException("Could not configure port: {}".format(msg))
serial.serialutil.SerialException: Could not configure port: (22, 'Invalid argument')
###該当のソースコード
import serial
ser = serial.Serial("/dev/sr0", 9600, timeout=10)
ser.write(b"hello")
ser.close()
###試したこと
"/dev/serial0 "に変更した場合はエラーが起きなかったのですがこちらはGPIOを利用したものなのでしょうか?
(エラーが起きなかっただけで値の送信に成功したわけではありません。)
webでいろいろと検索をしてみたのですがラズパイとarduinoの通信の例が大多数でラズパイとスマホのusbケーブルでの値の送受信の例はほとんどありませんでした。このUSBケーブルでは値の送受信は不可能なのでしょうか。
###補足情報(言語/FW/ツール等のバージョンなど)
Python2.7によるものです