2017-06-13 15 views
0

私はサーバーを使用しているときに、センサーデータを受信するためにラズベリーpiから私の別のブルートゥースインタフェースデバイス(Arduino)に16進数のcmd(0X2A、0X0A、0X58) (0X2A、0X0A、0X58).itsは動作しません。そのリクエストを送信する方法は、ブルートゥースからデータを受信するためのcmdです。私はすでにBluetoothデバイスをペア設定しています。ASCIIコマンドはPythonを使用してデータを受信するためにBluetoothデバイスに送信します

from bluetooth import 

server_sock=BluetoothSocket(RFCOMM) 
server_sock.bind(("",PORT_ANY)) 
server_sock.listen(1) 

port = server_sock.getsockname()[1] 

uuid = "94f39d29-7d6d-437d-973b-fba39e49d4ee" 

advertise_service(server_sock, "SampleServer", 
        service_id = uuid, 
        service_classes = [ uuid, SERIAL_PORT_CLASS ], 
        profiles = [ SERIAL_PORT_PROFILE ], 
#     protocols = [ OBEX_UUID ] 
        ) 

print "Waiting for connection on RFCOMM channel %d" % port 

client_sock, client_info = server_sock.accept() 
print "Accepted connection from ", client_info 

try: 
    while True: 
     server.send(0X2A,0X0A,0X58) 
     data = client_sock.recv(1024) 
     if len(data) == 0: break 
     print "received [%s]" % data 
except IOError: 
    pass 

print "disconnected" 
client_sock.close() 
+0

、シリアル・データを送信する変更される可能性があり、あなたは1行目にインポートすることをオフに欠場することを意味していましたか? – Goralight

+0

これを読んでください[誰かが私の質問に答えるとどうすればいいですか?]](http://stackoverflow.com/help/someone-answers) – thewaywewere

答えて

0

あなたは

  1. server.send('\x2A\x0A\x58')または
  2. server.send('2A0A58'.decode("hex"))
関連する問題