問題タブ [bluesmirf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android Nexus One と Arduino + BlueSmirf のインターフェース
私はこのすべてに少し慣れていないので、ご容赦ください - 助けていただければ幸いです。
BlueSmirf に接続されている arduino (Duemilanove) と Android Nexus One をリンクしようとしています。BlueSmirfが接続されているデバイスに「Hello Bluetooth」という文字列を単純に出力するプログラムがあります。Arduinoプログラムは次のとおりです。
ボイド セットアップ () { Serial.begin(115200); int i; }
void loop(){Serial.print("Hello Bluetooth!"); 遅延 (1000); }
私のコンピューターのBT端末の1つで、メッセージが表示され、問題なく接続できます。問題は私のアンドロイドコードにあります。Androidでデバイスに接続できますが、ログを見ると「Hello Bluetooth」が表示されていません。デバッグログは次のとおりです。
04-09 16:27:49.022: エラー/BTArduino(17288): FireFly-2583 が接続され
ました 04-09 16:27:49.022: エラー/BTArduino
(17288): ソケットの接続を開始しています
04-09 16:27:55.705:エラー/BTArduino(17288): 受信: 16
04-09 16:27:56.702: エラー/BTArduino(17288): 受信: 1
04-09 16:27:56.712: エラー/BTArduino(17288): 受信: 15
04- 09 16:27:57.702: ERROR/BTArduino(17288): 受信: 1
04-09 16:27:57.702: ERROR/BTArduino(17288): 受信: 15
04-09 16:27:58.704: ERROR/BTArduino(17288 ): 受信: 1
04-09 16:27:58.704: エラー/BTArduino(17288): 受信: 15
など...
これがコードです。関連するコードのみを配置しようとしていますが、さらに必要な場合はお知らせください。
より相対的なコードは次のとおりです。
私は bytes = inStream.read(buffer) を読んでいます。バイトが整数であることはわかっているので、「バイト」は整数だったので、Bluetooth経由で整数を送信しようとしましたが、それでも意味がありませんでした。
が間違ったボーレートを送信しているようです。これは本当でしょうか?
どんな助けでも大歓迎です。どうもありがとうございました。
bluetooth - ArduinoでBluetooth経由のFirmata?
私はFirmataがArduinoUnoで正常に動作し、ケーブルUSBを介してProcessingと通信しています。
ケーブルを取り除き、Bluetoothトランスポート(BlueSMIRFモジュールを使用)を介して接続を実行したいと思います。(接続されていない)USBケーブルインターフェイスではなくBTモジュールを使用するようにFirmataに指示するために、Firmataに何をする必要があるのかわかりません。特に、Firmata自体をハックして、初期化コードを追加する必要がありますか?
- 私が使用しているBTモジュールに固有、または
- より一般的には、ケーブル接続されたUSB以外のポートを使用するようにFirmataに指示する必要がありますか?
ありがとう
D
java - Javaを使用してPCからBluetoothチップBlueSMiRFにデータを送信する
ラップトップの Bluetooth デバイスから BlueSMiRF Bluetooth チップにデータを送信したいと考えています。これまで Bluetooth プログラミングを扱ったことがないので、開始方法と使用方法に関するガイダンスが必要です。私はJavaに取り組んでいますが、より良い代替手段があればそれに取り組みます。
c# - 安定した Bluetooth シリアル通信のボーレート
私が書いたC#アプリケーションとBluetooth(bluesmirf goldデバイス)を介して通信するArduinoメガがあります。Arduino は常に 32 文字のシリアル信号を送信しています。最初は常に「S」で最後は「E」です。パテを使用して、この信号が 99% の確率で正しく送信されていることを確認できます。
ここで、次のコードを使用して、C# アプリケーションでこの信号を読み取りたいと考えています。
serialHC はシリアル クラスです。
これは完全に機能する場合もありますが、問題が発生する場合もあります。
私が抱えていると思われる問題は、arduinoから読み取っているデータにかなり大きなラグが発生することがあることです。ボタンの状態を送信していて、Arduinoのボタンを実際に押したり離したりしてから数秒しか変化しないため、これに気づきました。Bluetooth デバイスの標準のボー レートである 115200 を使用しましたが、これをもっと低いレートに変更すると、より良い結果が得られるのではないかと考えていました。それが何かメリットがあるとしたら?高い通信速度は必要ありません。1 秒間に 4 ~ 5 回状態を更新するだけでも、私のアプリケーションでは受け入れられます。
私のコードからラグが発生している可能性はありますか? 入ってくる「S」を待っているwhileループからのものかもしれないと思いますが、新しい信号が常に高速で入ってくるので、なぜそこにハングアップする必要があるのか わかりません。
DiscardInBuffer() を使用しているのは、古いデータを気にせず、それをスキップしたいだけだからです。現在の最新のデータを読み取り、その新しいデータに基づいて行動することがはるかに重要です。
ご協力ありがとうございました!
よろしくお願いします、
ベンダー
アップデート:
デバッグ中にもう少し情報が見つかりました。問題は次のように見えるだけです。
- Bluetooth経由で接続されている場合(USBケーブル経由ではラグはまったくありません)
- PC から別のデバイスへの 2 つ目の Bluetooth 接続が確立された場合 (別の COM ポートと別のボーレート)
PC で同じ Bluetooth ドングルから 2 つの異なるデバイスを実行した経験のある人はいますか? 問題なく両方に接続できますが、前述のラグの問題はまだあります。
助けてくれてありがとう
android - Androidはスレッドで一時停止していますが、テキストビューに追加しています
IDが「out」のテキストビューを配置する線形レイアウトがあります。私のコードでは、このテキストビューを取得し、out.append("Some string here"); を呼び出しています。私がやりたいのは、thread.sleep(1000); を使用することです。1 秒待ってから別の追加を行います。for ループを使用して 10 回繰り返すと、10 秒間待機してから、最後にビューを更新します。スリープの間にビューを更新するにはどうすればよいですか?
ps。これの主な理由は、Bluetooth 出力ストリームで実行されている別のスレッドがあり、bluesmirf モジュールを介して接続された arduino にバイトを送信するたびにテキストビューを更新したいからです。データを送信するようにできますが、画面の更新は for ループの最後で行われます。このループをスリープ状態にすると、1 秒間待機してから arduino に問題なく出力されます。ログを使用せずに失敗したときに失敗した場所を確認できるように、更新したいだけです。
bluetooth - Arduino Bluetooth 接続
arduino からシリアル モニターに文字列を送信しようとしています。私はarduino UNOでsparkfun bluesmirfチップを使用しています。
私のコードは本当に簡単です:
モニターを開くと、意味不明なメッセージが表示されます。USBケーブルでarduinoに接続すると、すべて正常に動作します。
誰でも私を正しい方向に向けることができますか?
arduino - 文字の配列の初期化文字列がArduinoで長すぎるというエラー
以下のコードを Arduino で実行しようとしていますが、コードを確認すると、「文字配列の初期化文字列が長すぎます」と表示されます。同様の問題に関する以前の質問を読みましたが、現在試しているコードのどこから始めればよいかわかりませんでした。はい、、、私はC ++の世界に非常に慣れていません、、、独学するための手がかりまたは直接的な答えを教えていただければ、驚くほどありがたいです。
一番、
android - arduinoからandroid bluetoothへ:両方が接続されているかどうかを検出する
目標:
BluetoothでAndroidに接続されているかどうかをardiunoに確認させる。次に、接続されている場合はアクションを実行し、接続されていない場合は再接続します。
私が使用しているもの:
Bluesmirf Silver と arduino uno および note 3
私がこれまでに行ったこと:
【ARDUINOコード】
Bluesmirf は、マスター モードの自動接続になっています。arduino は、Android アプリが H 文字を送信しているかどうかを確認することになっています。もしそうなら、それは接続されていることを意味します。そうでない場合は、再接続を続ける必要があります。
【アンドロイドコード】
これは、アプリが接続されると H を送信する Android アプリのメソッドです。
サイドノート:
このarduinoが接続されているかどうかを確認するために、私は非常に多くのことを試みました。3 週間前にプログラミングを始めたばかりなので、ますます難しくなっています。どんな助けでも大歓迎です。