Jump to content

Recommended Posts

Geschrieben

Hallo TF Team,

 

mit gcc 8.2 erhalte ich beim Aufruf von air_quality_get_iaq_index einen Absturz wegen Stack corruption (bei älteren GCC Versionen passiert das nicht !!):

 

==5490== Process terminating with default action of signal 6 (SIGABRT): dumping core
==5490==    at 0x4F05D7F: raise (in /usr/lib/libc-2.28.so)
==5490==    by 0x4EF0671: abort (in /usr/lib/libc-2.28.so)
==5490==    by 0x4F48877: __libc_message (in /usr/lib/libc-2.28.so)
==5490==    by 0x4FDB414: __fortify_fail_abort (in /usr/lib/libc-2.28.so)
==5490==    by 0x4FDB3C5: __stack_chk_fail (in /usr/lib/libc-2.28.so)
==5490==    by 0x204CB9: air_quality_get_iaq_index (bricklet_air_quality.cpp:633)
==5490==    by 0x48E2892: brickapi::AirQualitySensor::readValue(brickapi::SensorItem::CHANNEL_NO) (AirQualitySensor.cpp:147)
==5490==    by 0xFF000577: 
==5490==    by 0x52399AF: 

 

ich habe mir den Bricklet-Code mal angesehen:

BootloaderHandleMessageResponse get_iaq_index(const GetIAQIndex *data, GetIAQIndex_Response *response) {
response->header.length      = sizeof(GetAllValues_Response);
response->iaq_index          = voc_get_iaq_index();
response->iaq_index_accuracy = voc_get_iaq_index_accuracy();

return HANDLE_MESSAGE_RESPONSE_NEW_MESSAGE;
}

ist das hier nicht falsch: da steht

response->header.length      = sizeof(GetAllValues_Response);

 

da wird doch die falsche Response-Größe zurück geliefert - oder nicht?

Geschrieben

Kann es sein, dass der Bug mit der Temperatur-Kalibrierung wieder drin ist?

 

Mein Brickv zeigte nämlich schon Version 2.0.1 an => hab's überschrieben und wenn ich jetzt mit Wert 160 die Temperatur kalibriere bin ich auf einmal weit unter -100° C, dabei sollten ja nur 1.6° abgezogen werden??

 

Ich meine das hier:

https://www.tinkerunity.org/forum/index.php/topic,4689.0.html

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...