Arduino Library für Jeti EX Eigenbau-Telemetrie
- IG-Modellbau
- Offline
- Moderator
- Beiträge: 3367
- Dank erhalten: 2412
IG-Modellbau antwortete auf Arduino Library für Jeti EX Eigenbau-Telemetrie
Posted 24 Jan. 2017 11:28 #199
Hallo Bernd,
habe Dir eine PM geschrieben...
Ingmar
habe Dir eine PM geschrieben...
Ingmar
von IG-Modellbau
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Micha
- Offline
- Premium Mitglied
- Beiträge: 130
- Dank erhalten: 3
Hallo
Ich finde die Library echt klasse!
Da kann man nur den Hut vor ziehen!
Danke Danke!
Ich spiele gerade etwas mit den Menu Geschichten der Jetibox!
Kann man eigentlich in dem Menu der Jetibox auch nach rechts und links blättern?
Kann man im Jetiboxmenu Werte für eine Variable ändern?
So wie z.b. beim UniSens!
Hat da schon mal jemand was mit gemacht / versucht?
Gruß Micha
Ich finde die Library echt klasse!
Da kann man nur den Hut vor ziehen!
Danke Danke!
Ich spiele gerade etwas mit den Menu Geschichten der Jetibox!
Kann man eigentlich in dem Menu der Jetibox auch nach rechts und links blättern?
Kann man im Jetiboxmenu Werte für eine Variable ändern?
So wie z.b. beim UniSens!
Hat da schon mal jemand was mit gemacht / versucht?
Gruß Micha
Last Edit:27 Jan. 2017 14:57
von Micha
Letzte Änderung: 27 Jan. 2017 14:57 von Micha.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- algenbrot
- Offline
- Junior Mitglied
- Beiträge: 21
- Dank erhalten: 13
algenbrot antwortete auf Arduino Library für Jeti EX Eigenbau-Telemetrie
Posted 27 Jan. 2017 17:44 #201
Hi Micha,
habe mal mit dem Menu angefangen zu experimetieren, ist aber noch nicht so ganz zur meiner Zufriedenheit. Variablen auslesen / änern / schreiben habe ich noch nicht probiert
Hier mal mein geänderter code zum testen
void HandleMenu()
{
//JetiboxKey DOWN = 0xb0, UP = 0xd0, LEFT = 0x70, RIGHT = 0xe0
static int _nMenu = 10; //org _nMenu = 0
static bool _bSetDisplay = true;
uint8_t c = jetiEx.GetJetiboxKey();
/* Debug *****************************/
if(c != 0)
softSerial.println(c);
/*************************************/
// down
if( c == 0xb0 && _nMenu <= 22 ) //org < 2
{
_nMenu+=10; // org _nMenu++
_bSetDisplay = true;
}
// right
if( c == 0xe0 && _nMenu <= 31 )
{
if (_nMenu == 12 || _nMenu == 22)
return;
_nMenu++;
_bSetDisplay = true;
}
// up
if( c == 0xd0 )
{
if( _nMenu > 10 ) // org > 0
{
if (_nMenu == 11 || _nMenu == 12)
return;
_nMenu-=10; // org _nMenu--
_bSetDisplay = true;
}
else
{
jetiEx.SetJetiboxExit(); // todo does not exit menu
return;
}
}
// left
if( c == 0x70 )
{
if( _nMenu > 10 ) // org > 0
{
if (_nMenu == 20 || _nMenu == 30)
return;
_nMenu--;
_bSetDisplay = true;
}
else
{
jetiEx.SetJetiboxExit(); // todo does not exit menu
return;
}
}
if( !_bSetDisplay )
return;
/* Debug *****************************/
softSerial.println(_nMenu);
/***********************************/
switch( _nMenu )
{
case 10: // org case 0
// Jeti EX no floats, only integer numbers
//sprintf( line1, "Volt: %d", (int)7 );
//sprintf( line1, "Volt: %d", demoSensor.GetVoltage() ); // works, no float, no update
//sprintf( line1, "Volt: %d.%d", (int)demoSensor.GetVoltage(), (int)(demoSensor.GetVoltage()*100)%100 ); // works, float incorrect
char tempVolt[2];
dtostrf(demoSensor.GetVoltage()*0.1, 2, 1, tempVolt);
sprintf(line1, "Volt: %s V", tempVolt);
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, line1 );
sprintf( line2, "Alt: %d m", demoSensor.GetAltitude() );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, line2 );
break;
case 11:
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 11 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 11 - Line 2" );
break;
case 12:
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 12 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 12 - Line 2" );
break;
case 20: // org case 1
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 20 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 20 - Line 2" );
break;
case 21:
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 21 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 21 - Line 2" );
break;
case 22:
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 22 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 22 - Line 2" );
break;
case 30: // org case 2
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 30 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 30 - Line 2" );
break;
case 31:
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 31 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 31 - Line 2" );
break;
case 32:
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 32 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 32 - Line 2" );
break;
}
_bSetDisplay = false;
}
[/code]
habe mal mit dem Menu angefangen zu experimetieren, ist aber noch nicht so ganz zur meiner Zufriedenheit. Variablen auslesen / änern / schreiben habe ich noch nicht probiert
Hier mal mein geänderter code zum testen
void HandleMenu()
{
//JetiboxKey DOWN = 0xb0, UP = 0xd0, LEFT = 0x70, RIGHT = 0xe0
static int _nMenu = 10; //org _nMenu = 0
static bool _bSetDisplay = true;
uint8_t c = jetiEx.GetJetiboxKey();
/* Debug *****************************/
if(c != 0)
softSerial.println(c);
/*************************************/
// down
if( c == 0xb0 && _nMenu <= 22 ) //org < 2
{
_nMenu+=10; // org _nMenu++
_bSetDisplay = true;
}
// right
if( c == 0xe0 && _nMenu <= 31 )
{
if (_nMenu == 12 || _nMenu == 22)
return;
_nMenu++;
_bSetDisplay = true;
}
// up
if( c == 0xd0 )
{
if( _nMenu > 10 ) // org > 0
{
if (_nMenu == 11 || _nMenu == 12)
return;
_nMenu-=10; // org _nMenu--
_bSetDisplay = true;
}
else
{
jetiEx.SetJetiboxExit(); // todo does not exit menu
return;
}
}
// left
if( c == 0x70 )
{
if( _nMenu > 10 ) // org > 0
{
if (_nMenu == 20 || _nMenu == 30)
return;
_nMenu--;
_bSetDisplay = true;
}
else
{
jetiEx.SetJetiboxExit(); // todo does not exit menu
return;
}
}
if( !_bSetDisplay )
return;
/* Debug *****************************/
softSerial.println(_nMenu);
/***********************************/
switch( _nMenu )
{
case 10: // org case 0
// Jeti EX no floats, only integer numbers
//sprintf( line1, "Volt: %d", (int)7 );
//sprintf( line1, "Volt: %d", demoSensor.GetVoltage() ); // works, no float, no update
//sprintf( line1, "Volt: %d.%d", (int)demoSensor.GetVoltage(), (int)(demoSensor.GetVoltage()*100)%100 ); // works, float incorrect
char tempVolt[2];
dtostrf(demoSensor.GetVoltage()*0.1, 2, 1, tempVolt);
sprintf(line1, "Volt: %s V", tempVolt);
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, line1 );
sprintf( line2, "Alt: %d m", demoSensor.GetAltitude() );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, line2 );
break;
case 11:
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 11 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 11 - Line 2" );
break;
case 12:
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 12 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 12 - Line 2" );
break;
case 20: // org case 1
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 20 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 20 - Line 2" );
break;
case 21:
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 21 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 21 - Line 2" );
break;
case 22:
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 22 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 22 - Line 2" );
break;
case 30: // org case 2
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 30 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 30 - Line 2" );
break;
case 31:
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 31 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 31 - Line 2" );
break;
case 32:
jetiEx.SetJetiboxText( JetiExProtocol::LINE1, "Menu 32 - Line 1" );
jetiEx.SetJetiboxText( JetiExProtocol::LINE2, "Menu 32 - Line 2" );
break;
}
_bSetDisplay = false;
}
[/code]
Gruß Andreas
von algenbrot
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Micha
- Offline
- Premium Mitglied
- Beiträge: 130
- Dank erhalten: 3
Hallo
Erstmal Danke für den Code!
Werde auch bei Gelegenheit mal was rum Testen!
Hat eigentlich einer eine gute Idee wie ich den Wiederstand oder die Brücke zwischen
RX und TX beim Proggen drin lassen kann?
Oder wie macht Ihr das?
Gruß Micha
Erstmal Danke für den Code!
Werde auch bei Gelegenheit mal was rum Testen!
Hat eigentlich einer eine gute Idee wie ich den Wiederstand oder die Brücke zwischen
RX und TX beim Proggen drin lassen kann?
Oder wie macht Ihr das?
Gruß Micha
von Micha
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- IG-Modellbau
- Offline
- Moderator
- Beiträge: 3367
- Dank erhalten: 2412
IG-Modellbau antwortete auf Arduino Library für Jeti EX Eigenbau-Telemetrie
Posted 27 Jan. 2017 19:42 #203
Hallo Micha,
ich habe 4K7 drin und der stört nicht beim Programm Upload.
Viele Grüße Ingmar
ich habe 4K7 drin und der stört nicht beim Programm Upload.
Viele Grüße Ingmar
von IG-Modellbau
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Micha
- Offline
- Premium Mitglied
- Beiträge: 130
- Dank erhalten: 3
Hallo
Danke für den Hinweis!
und ich dachte immer Brücke oder bei Angsthasen (wie ich) 100 Ohm!
Werd ich Testen!
Gruß Micha
Danke für den Hinweis!
und ich dachte immer Brücke oder bei Angsthasen (wie ich) 100 Ohm!
Werd ich Testen!
Gruß Micha
von Micha
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
Ladezeit der Seite: 1.018 Sekunden