Bitte ändert euer Passwort!
Im März 2026 wurde das Forum gehackt. Dabei hatten die Angreifer Zugriff auf die Datenbank und somit Zugriff auf eure Passwörter. Auch wenn das Forum kein Passwort im Klartext speichert, können die Angreifer eure Passwörter knacken. Bitte ändert daher dringend euer Passwort für das Forum. Solltet ihr das gleiche Passwort auch an anderer Stelle verwenden, ändert es bitte unbedingt an allen Stellen!
Arduino Library für Jeti EX Eigenbau-Telemetrie
- ThLehmann
- Offline
- Platinum Mitglied
-
- Beiträge: 390
- Thanks: 149
Re: Arduino Library für Jeti EX Eigenbau-Telemetrie
08 Dez. 2017 17:44 - 08 Dez. 2017 17:45mir ist es jetzt schon mehrfach passiert das durch Umstellung der Sensoranzahl oder Umsortierung (Entwicklungsphase) die Sensorwerte im Sender neu zugeordnet werden müssen. Leider folgt daraus auch eine neue Sortierung der Anzeige, alles sehr umständlich. Um dies künftig zu verhindern habe ich mir gedacht das die SensorId (heute 1-31) einfach Gruppenweise anordnen zu können.
Mal exemplarisch:
0x10 Drehzahl
0x11 max Drehzahl
0x12 gesamt Anzahl Umdrehungen
0x20 Restvolumen
0x21 Flow
...
Somit wäre die Änderung einer ID völlig ohne Rückwirkungen auf anderen Sensor ID's.
Ist meine Idee realistisch oder spricht etwas dagegen, was meinst Du ?
Gruß, Thomas
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Sepp62
- Autor
- Offline
- Elite Mitglied
-
- Beiträge: 307
- Thanks: 154
Re: Arduino Library für Jeti EX Eigenbau-Telemetrie
08 Dez. 2017 18:10das sollte einfach so funktionieren. Ids müssen nicht fortlaufend sein. Du legst sie in der Sensordefinition fest, wie es Dir gefällt.
VG Bernd
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- ThLehmann
- Offline
- Platinum Mitglied
-
- Beiträge: 390
- Thanks: 149
Re: Arduino Library für Jeti EX Eigenbau-Telemetrie
08 Dez. 2017 18:22void JetiExProtocol::InitSensorMapper( JETISENSOR_CONST * pSensorArray )
{
// map sensor id to index to give quick access by sensor ID
int i;
m_nSensors = 0;
m_pSensorsConst = pSensorArray;
memset( m_sensorMapper, 0, sizeof( m_sensorMapper ) );
for( i = 0; i < MAX_SENSORS; i++ )
{
// get sensor id and check for end of array
JetiSensorConst sensorConst;
memcpy_P( &sensorConst, &m_pSensorsConst, sizeof(sensorConst) );
if( sensorConst.id == 0 )
break;
hier sehe ich eine Zuordnung von SensorId zum Eintrag in der Tabelle
if( sensorConst.id < sizeof( m_sensorMapper ) )
m_sensorMapper[ sensorConst.id ] = i;
m_nSensors++;
}
}
Gruß, Thomas
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Sepp62
- Autor
- Offline
- Elite Mitglied
-
- Beiträge: 307
- Thanks: 154
Re: Arduino Library für Jeti EX Eigenbau-Telemetrie
08 Dez. 2017 18:31Natürlich entspricht der höchste ID-Wert dem Wert von MAX_SENSORS. Aber wenn Du Speicher hast, kannst Du den Wert ja erhöhen. Natürlich kann auch da irgendwo ein Fehler sein, also würde ich den Wert erst mal so lassen und probieren, ob es prinzipiell geht.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Micha
- Offline
- Premium Mitglied
-
- Beiträge: 130
- Thanks: 3
Re: Arduino Library für Jeti EX Eigenbau-Telemetrie
27 Feb. 2018 10:19Ich glaube ich habe in der Library vom Bernd noch einen Bug gefunden!
Wenn man Werte zwischen -1 bis -2 angezeigt haben möchte,
werden keine Werte am Sender angezeigt! (bzw. nur Blinkende)
Habe das auch mit dem beiliegenden Beispiel ausprobiert!
jetiEx.SetSensorValue( ID_VAL11, -1 );
jetiEx.SetSensorValue( ID_VAL12, -1.5 );
jetiEx.SetSensorValue( ID_VAL13, 1 );
jetiEx.SetSensorValue( ID_VAL14, 2 );
jetiEx.SetSensorValue( ID_VAL15, -2 );
jetiEx.SetSensorValue( ID_VAL16, demoSensor.GetVal(9) );
jetiEx.SetSensorValue( ID_VAL17, demoSensor.GetVal(10) );
jetiEx.SetSensorValue( ID_VAL18, demoSensor.GetVal(11) );
hat das von euch auch schon jemand bemerkt!
Oder kann das an der Sendersoftware (4.22 mit LUA) liegen?
Gruß Micha
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Sepp62
- Autor
- Offline
- Elite Mitglied
-
- Beiträge: 307
- Thanks: 154
Re: Arduino Library für Jeti EX Eigenbau-Telemetrie
27 Feb. 2018 10:28Dass die Werte zwischen -1 und -2 nicht angezeigt werden, liegt daran, dass der Messwert ein Integer sein muss und Du durch die Angabe von -1.5 einen Rundungsfehler bekommst.
Float-Werte müssen über Integer-Werte und die "Precision" (=Nachkommastellen) in der Sensor-Definition übergeben werden. Man könnte die Library hier komfortabler machen, aber dazu bräuchte der Code in der "SetValue"-Funktion Zugriff auf die Sensor-Konfigurationsdaten. Da diese aber (meist) im PROGMEM liegen, wäre das sehr inperformant.
Daher muss der Anwender selbst für die Umwandlung sorgen. Hast Du die "Precision" 1, musst Du den Messwert * 10 nehmen, bei 2 mal Hundert.
VG Bernd
Bitte Anmelden oder Registrieren um der Konversation beizutreten.