Discover

Topics

BTduino - Arduino - Bluetooth

BTduino - Arduino - Bluetooth APK

BTduino - Arduino - Bluetooth APK

1.7 FreeChung Siu Wing, David ⇣ Download APK (1.49 MB)

BTduino Bluetooth device is using a mobile phone (Bluetooth) connected to the Arduino application.

What's BTduino - Arduino - Bluetooth APK?

BTduino - Arduino - Bluetooth is a app for Android, It's developed by Chung Siu Wing, David author.
First released on google play in 8 years ago and latest version released in 7 years ago.
This app has 1 download times on Google play and rated as 4.45 stars with 31 rated times.
This product is an app in Tools category. More infomartion of BTduino - Arduino - Bluetooth on google play
BTduino 是利用手機藍芽裝置(Bluetooth)連接 Arduino 的應用程式。此程式現提供數字按鍵模式及遊戲控制器模。往後亦會加入PWM,各種感應器及按鍵配對等功能。你用者需連接藍芽接收裝置如HC06至Arduino。藍芽HC06連接Arduino的設置如下:
1. 藍芽VCC接Arduino 5v或3.3v(視乎所購買的裝置而定)
2. 藍芽GND接Arduino GND
3. 藍芽RXD接Arduino TX(Pin10)
4. 藍芽TXD接Arduino RX(Pin11)
// Arduino RX(Pin 11) connect to Bluethooth TX, Arduino TX(Pin 10) connect to Bluethooth RX

Arduino 設定
/*
btduino2 - Terminal Mode - by David Chung
*/
#include <SoftwareSerial.h>

SoftwareSerial myBT(11, 10);
const int ledPin = 13;
String inCode = "";
boolean endCode = false;

void setup() {
Serial.begin(9600);
myBT.begin(9600);
pinMode(ledPin, OUTPUT);
inCode.reserve(50);
}

void loop() {
if (myBT.available()) {
char incomingChar = myBT.read();
if(incomingChar == ')'){
endCode = true;
} else {
inCode += incomingChar;
}
}

if (endCode){
int strEnd = inCode.indexOf(')');
String myString = inCode.substring(0, strEnd);

Serial.print("Incoming : ");
Serial.println(myString);

if(myString == "on"){
digitalWrite(ledPin, HIGH);
myBT.print("LED On");
}
if(myString == "off"){
digitalWrite(ledPin, LOW);
myBT.print("LED Off");
}

inCode = "";
endCode = false;
}
}


/*
btduino2 - GamePad Mode - by David Chung
*/
#include <SoftwareSerial.h>

SoftwareSerial myBT(11, 10);
const int ledPin = 13;
int incomingByte = 0;

void setup() {
Serial.begin(9600);
myBT.begin(9600);
pinMode(ledPin, OUTPUT);
}

void loop() {
if (myBT.available()) {
incomingByte = myBT.read();
Serial.println(char(incomingByte));
if(incomingByte == 'L'){
digitalWrite(ledPin, HIGH);
}
if(incomingByte == 'R'){
digitalWrite(ledPin, LOW);
}
}
}

/*
Slider Mode
*/
#include <SoftwareSerial.h>

SoftwareSerial myBT(11, 10);
const int ledPin = 13;
String inCode = "";

boolean endCode = false;

void setup() {
Serial.begin(9600);
myBT.begin(9600);
pinMode(ledPin, OUTPUT);
inCode.reserve(30);
}

void loop() {
if (myBT.available()) {
char incomingChar = myBT.read();
if(incomingChar == ')'){
endCode = true;
} else {
inCode += incomingChar;
}
}

if (endCode){
int comma1 = inCode.indexOf(',');
int comma2 = inCode.indexOf(',', comma1 + 1);
String Rs = inCode.substring(0, comma1);
String Gs = inCode.substring(comma1 + 1, comma2);
String Bs = inCode.substring(comma2 + 1);

Serial.print("inCode = ");
Serial.print(inCode);
Serial.print(" R = ");
Serial.print(Rs);
Serial.print(" G = ");
Serial.print(Gs);
Serial.print(" B = ");
Serial.println(Bs);

int R = Rs.toInt();
int G = Gs.toInt();
int B = Bs.toInt();

analogWrite(ledPin, R);

inCode = "";
endCode = false;
}
}


/*
btduino2 - Orientation Mode - by David Chung
*/
#include <SoftwareSerial.h>

SoftwareSerial myBT(11, 10);
const int ledPin = 13;
String inCode = "";
boolean endCode = false;

void setup() {
Serial.begin(9600);
myBT.begin(9600);
pinMode(ledPin, OUTPUT);
inCode.reserve(30);
}

void loop() {
if (myBT.available()) {
char incomingChar = myBT.read();
if(incomingChar == ')'){
endCode = true;
} else {
inCode += incomingChar;
}
}

if (endCode){
int comma1 = inCode.indexOf(',');
int comma2 = inCode.indexOf(',', comma1 + 1);
String As = inCode.substring(0, comma1);
String Ps = inCode.substring(comma1 + 1, comma2);
String Rs = inCode.substring(comma2 + 1);

Serial.print("inCode = ");
Serial.print(inCode);
Serial.print(" Azimuth = ");
Serial.print(As);
Serial.print(" Pitch = ");
Serial.print(Ps);
Serial.print(" Roll = ");
Serial.println(Rs);

int A = As.toInt();
int P = Ps.toInt();
int R = Rs.toInt();

inCode = "";
endCode = false;
}
}