Gebruik je Android telefoon als display
5 berichten
• Pagina 1 van 1
- retlawrobbe
- Berichten: 17
- Geregistreerd: 06 Feb 2013, 19:30
Gebruik je Android telefoon als display
Je kan met een Android telefoon je parameters online weer geven in plaats van een LCD, OLED, TFT scherm te gebruiken.
Ten eerste heb je de app FRSKY Dasboard nodig welke je kan vinden op google play.
https://play.google.com/store/apps/details?id=biz.onomato.frskydash&feature.
Vervolgens heb je ook nog een Bleutooth module nodig ( ingesteld op 9600Baud ).
Met deze app is het mogelijk om tot ongeveer 14 parameters ( integers en byte waarden) te laten zien op je telefoon.
je kan een display aanmaken voor verschillende modules ( Models )
Het is ook mogelijk om een tekst naar keuze en de eenheid ( cm , Volt , enz ) in te geven en indien gewenst te laten horen ( text to speech ).
Het voorbeeld programma neemt ongeveer 2.630 bytes in beslag om alle 14 parameters weer te geven.
Bijgevoegde code
Ten eerste heb je de app FRSKY Dasboard nodig welke je kan vinden op google play.
https://play.google.com/store/apps/details?id=biz.onomato.frskydash&feature.
Vervolgens heb je ook nog een Bleutooth module nodig ( ingesteld op 9600Baud ).
Met deze app is het mogelijk om tot ongeveer 14 parameters ( integers en byte waarden) te laten zien op je telefoon.
je kan een display aanmaken voor verschillende modules ( Models )
Het is ook mogelijk om een tekst naar keuze en de eenheid ( cm , Volt , enz ) in te geven en indien gewenst te laten horen ( text to speech ).
Het voorbeeld programma neemt ongeveer 2.630 bytes in beslag om alle 14 parameters weer te geven.
Bijgevoegde code
- Code: Alles selecteren
/*
Use Android phoneas display for simple Frsky telemetry Via Bluetooth.
Developers Website https://play.google.com/store/apps/details?id=biz.onomato.frskydash&feature
*/
#define send_BT_data 1
#define Debug 1
// Send_Bluetooth ****FRSKY DASHBOARD**************
#define GPS_alt_B_01 0x01 // 0x01 GPS altitude m S Before"."
#define GPS_alt_A_09 0x09 // 01+8 (0x09) "" U After"."
#define Temp1_02 0x02 // 0x02 Temperature1 °C S 1°C / -30~250°C"
#define RPM_03 0x03 // 0x03 RPM RPM U 0~60000 | 1 => 60 step=60
#define Fuel_04 0x04 // 0x04 Fuel level % U 0,25,50,75,100
#define Temp2_05 0x05 // 0x05 Temperature2 C0 S 1°C / -30~250°C
#define Volt_06 0x06 // 0x06 Volt 1/500V 0.01V / 0~-4,2V
#define Alt_Vario_B_10 0x10 // 0x10 Altitude(vario) m S 0.01m /-500~9000m Before"."
#define Alt_Vario_A_21 0x21 // 0x21 "" U After"."
#define GPS_Speed_B_11 0x11 // 0x11 GPS speed Knots U Before"."
#define GPS_Speed_A_19 0x19 // 0x11+8 (0x19)"" U After"."
// doesn't work ------------------
//#define GPS_Long_B_12 0x12 // 0x12 Longitude ddmm.mmmm Before"."
//#define GPS_Long_A_1A 0x1A // 0x12+8 (0x1A)"" After"."
// doesn't exist in the APP
//#define GPS_Long_E_W_22 0x22 // 0x1A+8 (0x22) E/W E=&H45 // W=&H57
//#define GPS_Lat_B_13 0x13 // 0x13 Latitude dddmm.mmmm Before"."
//#define GPS_Lat_A_1B 0x1B // 0x13+8 (0x1B)"" U After"."
// doesn't exist in the APP
//#define GPS_Lat_N_S_23 0x23 // 0x1B+8 (0x23) N/S N=&H4E // S=&H53
// doesn't work ------------------
#define GPS_Course_B_14 0x14 // 0x14 Course Degree U 0~359,99 Before"."
#define GPS_Course_A_1C 0x1C // 0x14+8 (0x1C)"" After"."
// NOT usable -------------------
//#define GPS_Day_Month_15 0x15// 0x15 Date/Month
//#define GPS_Year_16 0x16 // 0x16 Year
//#define GPS_Hour_Min_17 0x17 // 0x17 Hour/minute
//#define GPS_Second_18 0x18 // 0x18 Second
// NOT usable -------------------
// doesn't work ------------------
//#define Acc_x_24 0x24 // 0x24 Acc-x S 0,016g / -8g ~ +8g
//#define Acc_y_25 0x25 // 0x25 Acc-y S 0,016g / -8g ~ +8g
//#define Acc_z_26 0x26 // 0x26 Acc-z S 0,016g / -8g ~ +8g
//#define FAS_Volt_B_3A 0x3A // 0x3A Voltage(Ampere sensor) V U 0,5v / 0~48,0V Before"."
// doesn't work ------------------
//#define FAS_Volt_A_3B 0x3B // 0x3B "" After"."
#define FAS_Current_28 0x28 // 0x28 Current A U 0.1A / 0~100A
// doesn't work ------------------
int up = 0; // TEST max and min values
void setup()
{
Serial.begin(9600);
#if Debug
Serial.println("_FRSKY_logger_01");
#endif
/* TEST max and min values
pinMode(8, INPUT_PULLUP);
pinMode(9, INPUT_PULLUP);
*/
}
void loop(){
/* TEST max and min values
boolean sensorVal8 = digitalRead(8);
boolean sensorVal9 = digitalRead(9);
boolean sensorVal10 = digitalRead(9);
if (sensorVal8 == LOW) { up = up +1;}
if (sensorVal9 == LOW) { up = up -10;}
---------------------------*/
#if send_BT_data
send_TX_RX_Bleutooth(105,104+up); // two times 0 ~ 255
Send_Bluetooth(Temp1_02,25,true); // -255 ~ +255 (if thirth true => display neg values)2 gives -254 ( 2 - 256)
Send_Bluetooth(Temp2_05,32000+up,0); // 0 .... 32255
Send_Bluetooth(Fuel_04,65535+up,0); // 0 ~ 65535
Send_Bluetooth(GPS_alt_B_01,32760,0); // maximum 32767
Send_Bluetooth(GPS_alt_A_09,9,0); // maximum 1 digit 0 ~ 9
Send_Bluetooth(Alt_Vario_B_10,32760+up,0); // maximum 32760
Send_Bluetooth(Alt_Vario_A_21,99,0); // max 2 digits 0 ~ 99
Send_Bluetooth(GPS_Speed_B_11,65535+up,0); // maximum 65535
Send_Bluetooth(GPS_Speed_A_19,99,0); // max 2 digits 0 ~ 99
Send_Bluetooth(GPS_Course_B_14,1+up,0); //0 ~ 65536
Send_Bluetooth(GPS_Course_A_1C,up,0); // max 2 digits 0 ~ 99
// Anomalies -----------------------
Send_Bluetooth(RPM_03,51+up,0); // maximum 65535 step is 60 | 1= 60 : set FACTOR to 0.01666 in the APP
Send_Bluetooth(FAS_Current_28,32001+up,0); // Displayed value 255 => 25.5 | 32000=3200.0 SET factor to 10 in the APP
// Anomalies -----------------------
#endif
} // END loop
//***************************************************
#if send_BT_data
void Send_Bluetooth(char Ident_code,int value, boolean neg){
// 0x7E=start send str START ; 0xFD=hub data ; 0x05=nr of bytes
// FRS_seq= sequence nr ; 0x5E= Hub data start ; ID= Identity information
// LO= Low byte ; HI=High byte ; 0x5E= Hub data end
// 0x00= dummy ; 0x7E=start send str END
byte FRS_seq =0;
byte Low_byte = (byte)(value & 0xFF); // (bitwise and)
byte High_byte = (byte)((value >> 8) & 0xFF);// (bitshift right)
if ( neg ){ High_byte = 255;} // temp can be positive or negatif
// 7E|7D|length of valid bytes|Sequence nr|5E|Ident code|Low Byte|High byte|5E|not used|7E
char data_send_HUB[11] = {0x7E,0xFD,0x05,FRS_seq,0x5E,0x00,0x00,0x00,0x5E,0x00,0x7E};
data_send_HUB[5] = Ident_code;
data_send_HUB[6] = Low_byte;
data_send_HUB[7] = High_byte;
for ( byte xx=0;xx<11;xx++ ){
Serial.print (data_send_HUB[xx]);
delay(2); //2 delay(10) with int batt it doesn't work without the delay
}
}
#endif
//-------------------------------------------------------------------------------
void send_TX_RX_Bleutooth(char P1A1,char P2A2){
#define RSSIrx 60 // can also be used 0 ~ 255
#define RSSItx 140 // will be divided by two ( 2 ) for display
char data_send_RX[11] = {0x7E,0xFE,P1A1,P2A2,RSSIrx,RSSItx,0x00,0x00,0x00,0x00,0x7E};
for ( byte i=0;i<11;i++ ){ Serial.print(data_send_RX[i]); }
// delay(5);
}
//-----------------------------------------------------------------------------------
Advertisement
- Hackerstore
- Berichten: 13
- Geregistreerd: 19 Sep 2014, 07:36
Re: Gebruik je Android telefoon als display
Dat is een mooie en behoorlijk uitgebreide app. 't Zou mooi zijn als er iemand was die ook de broncode van de Android-app zou kunnen publiceren, dan kunnen we aan die kant ook eens kijken hoe dat werkt en er zelf apps mee maken.
- retlawrobbe
- Berichten: 17
- Geregistreerd: 06 Feb 2013, 19:30
Re: Gebruik je Android telefoon als display
Als het er om gaat om zelf app's te maken zijn er wel voldoende voorbeelden te vinden op het internet.
Ik heb het zelf reeds gebrobeerd om een app te maken met Eclipse, maar niettegenstaande mijn kennis van verschillende programmeertalen
gaat het nog mijn petje te boven.
Ik heb het zelf reeds gebrobeerd om een app te maken met Eclipse, maar niettegenstaande mijn kennis van verschillende programmeertalen
gaat het nog mijn petje te boven.
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: Gebruik je Android telefoon als display
Ik heb al eens een app met Appcelerator ontwikkeld. Is best te doen.
- Hackerstore
- Berichten: 13
- Geregistreerd: 19 Sep 2014, 07:36
Re: Gebruik je Android telefoon als display
Wij gebruiken Eclipse en Android Studio om onze Android-apps in Java te programmeren. Maar als je wilt beginnen met apps is Appinventor een aanrader. Dat is een grafische omgeving waarbij je blokken aan elkaar kunt knopen, zoals met Lego.
Ze hebben sinds kort ook een bluetooth-component.
http://ai2.appinventor.mit.edu
Maar dan moet je alles nog steeds van de grond af ontwikkelen, een stukje voorbeeldcode was wel handig geweest als startmateriaal
Ze hebben sinds kort ook een bluetooth-component.
http://ai2.appinventor.mit.edu
Maar dan moet je alles nog steeds van de grond af ontwikkelen, een stukje voorbeeldcode was wel handig geweest als startmateriaal
5 berichten
• Pagina 1 van 1
Terug naar Afgeronde projecten
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 1 gast