Jump to content

Temp-IR Bricklet & Temp Bricklet gleichzeitig -> hängt sich reproduzierbar auf


reinweb

Recommended Posts

Hallo und Hilfe an das Tinkerforge Team,

ich will mit einem Temperature IR Bricklet meinen Heizkörper überwachen und gleichzeitig mit dem Temperature Bricklet die Raumtemperatur messen.

 

Wenn die Temperatur des Heizkörpers ansteigt, hängen sich beide Bricklet auf und liefern falsche Ergebnisse (Temp Bricklet liefert mehr als 100°, TempIR liefert den gleichen Messwert). Sowohl bei Einzelabfrage als auch über Callbacks (die kommen dann nicht mehr weil sich die zurückgelieferten Werte nicht ändern - auch wenn der Heizkörper schon wieder Raumtemperatur hat).

Egal welche Konfig (verschiedene Master, unterschiedliche Bricklets, Wifi, Wifi2, Ethernet Extension, per USB am Raspberry) - es ist total reproduzierbar. Nach einem Reset vom Master gehts wieder - bis zum nächsten Temperaturanstieg des Heizkörpers.

 

Heut hab ich es mit eurem Datalogger nachgestellt (MasterBrick per USB an einem Raspberry mit brickd. Der Datalogger läuft auf meinem iMac).

Im Anhang findet Ihr die LogFiles von 2 unterschiedlichen Versuchen.

 

Please help - it's anoying & reduces the reliability

logger_data_1517787799-2.csv

logger_data_1517787799.csv

logger_debug_1517787799.log

LoggerConfig.json

Link to comment
Share on other sites

Tests erweitert.

Es reicht scheinbar, dass an einem Master gleichzeitig ein TempIR und ein Temp Bricklet dranhängt. Wenn ich mit dem BrickViewer nach einiger Zeit (2 Stunden) verbinde, haben sich das Temp und das TempIR Bricklet aufghängt (z.B. Temp-Temp zeigt 101°)

Ebenfalls am Master hängt ein Humidity und ein AbmientLight Bricklet - beide funktionieren aber weiterhin tadellos.

 

Vielleicht kann das jemand ebenfalls testen. Danke

Link to comment
Share on other sites

Wir haben aktuell keine offenen Probleme die wir reproduzieren können. Das letzte Problem was wir reproduzieren konnten war das USB/EMV Problem welches zu neustarts führen konnte. Das wurde in 2.4.6 gefixt, da hatten wir aber auch etwas an I2C geändert. Deswegen dachte ich du könntest einmal mit der älteren Version testen.

 

Aber wenn du das Problem schon so lange hast kann es daran ja gar nicht liegen.

Link to comment
Share on other sites

ich hab jetzt einen Demo-Stack ins Public-Internet connected - dann könnt ihr mit dem Brickviewer und dem Datenlogger drauf und euch das anschauen - und es reproduzieren.

Ich hab alles getauscht: Kabel, Brickmaster, Bricklets.

Schreibt mir bitte eine Email - dann tauschen wir die notwendigen Connect-Daten aus.

Danke vorab!

Link to comment
Share on other sites

Ich glaub, das TempIR Bricklet ist der alleinige Verursacher - beziehungsweise die Länge vom Brickletkabel. Ich hab jetzt das 50cm Kabel gegen ein 6cm Kabel getauscht und siehe da, es scheint stabil zu laufen.

Hab insgesamt 4 Stacks unabhängig voneinander laufen und mittlerweile bei allen auf das 6cm Kabel getauscht. Einstrahlung schliesse ich aus, weil z.b. das PTC Brickletkabel am selben Stack ein 2m langes Brickletkabel problemlos verträgt.

 

@Borg: habt ihr so einen Stack nachgebaut und laufen lassen? Wie lang war bei euch das Kabel?

 

Link to comment
Share on other sites

Nachtrag:

wenn sich das Bricklet aufhängt - dann verhält es sich quasi genauso wie wenn ich während dem Betrieb das Bricklet vom Kabel abziehe.

Beim TempIR bleibt die letzte Temp konstant -

beim Temp wird immer irgendwas über 100° (Maximalwert) zurückgegeben

beim Barometer ebenfalls offenbar der Maximalwert.

 

Wenn ich mit dem Brickviewer den Stack resete - dann läufts eine Zeitlang wieder ganz normal - damit kann es keine Physikalische Unterbrechung sein).

An der API kanns auch nicht liegen - ich selbst programmier in PHP - der Brickviewer-Datalogger ist sicher kein PHP

Link to comment
Share on other sites

Ich glaub, das TempIR Bricklet ist der alleinige Verursacher - beziehungsweise die Länge vom Brickletkabel. Ich hab jetzt das 50cm Kabel gegen ein 6cm Kabel getauscht und siehe da, es scheint stabil zu laufen.

Das ist ja interessant, ich baue das mal mit 200cm Kabeln hier nach. D.h. wir haben vielleicht bei dem TempIR sowas wie einen Bitflip und das bringt dann den ganzen I2C Bus in die Knie aus irgendwelchen Gründen?

 

Ein Bitflip sollte eigentlich gerade beim TempIR gar nicht schlimm sein, das sendet nämlich mit jeder Abfrage eine CRC mit.

Link to comment
Share on other sites

neuer Zwischenstand & schlechte Nachricht:

heute hat sich mein Stack auch mit dem kurzen Kabel nach ca. 2 Stunden aufgehängt.

TempIR Bricklet bleibt immer auf dem letzten Wert, Temp Bricklet liefert 10156

Am Stack waren ein

  • Temp (Port a) Bricklet
  • TempIr (b) Bricklet
  • PTC (d) Bricklet
  • Humidity © Bricklet
  • Ethernet PoE Extension
  • Master Brick

 

Ohne den Stack zu berühren (um Kontaktfehler etc auszuschliessen) hab ich den Master aus der Ferne dann per BrickViewer resetiert. Die 2 Bricklets (Temp & TempIR) haben sich allerdings so aufgehängt, dass selbst nach 15 Resets das TEMP Bricklet noch immer den Wert 10156.

ich hab dann versucht, das Temp und TempIR per Brickviewer neu zu flashen. Da gab es für jedes Bricklet einen Fehlversuch - danach haben sich die Bricklets wieder normal verhalten.

Das PTC und das Humidity Bricklet haben sich durchgehend korrekt verhalten.

 

(Mir ist grundsätzlich aufgefallen, die 2 Bricklets sich genauso verhalten, wie wenn man sie einfach vom Kabel abzieht)

Link to comment
Share on other sites

Sehr mysteriös. Ich konnte es bisher nicht reproduzieren. Wir können das Temperature IR Bricklet noch nichtmal testweise austauschen, da wir keine mehr auf Lager haben (hab nur noch eins zum testen hier).

 

Folgender Vorschlag: Nächste Woche komme das neue Temperature IR Bricklet 2.0 raus (gleicher Sensor), wir schicken dir davon dann einfach welche zu. Wenn das Problem dann immernoch auftritt müssen wir weiter schauen.

Link to comment
Share on other sites

  • 2 months later...
  • 1 month later...
  • 3 weeks later...

So richtig können wir uns das nicht erklären, wir haben viele Jahre gar nichts von Problemen gehört und als die ersten Probleme bei Kunden da waren konnten wir es hier nicht reproduzieren. Kurz danach sind wir dann bereits auf die V2-Version umgestiegen.

 

Eventuell waren in einer Bestückung ein paar der Sensoren nicht in Ordnung o.ä. Schwer zu sagen. Da wir die V1 Version nicht mehr nachproduzieren und nicht mehr auf Lager haben macht es aber aus unserer Sicht keinen Sinn da jetzt noch genauer nachzuforschen.

 

Wir haben in Summe vielleicht 15-20 Stück ausgetauscht, was prozentual von den ganzen verkauften über die Jahre auch keine riesige Menge ist.

Link to comment
Share on other sites

was auch immer der Grund war - ich hab alles probiert (Bindungs debugged und umgeschrieben), extra Python gelernt (vorer PHP)

Bricklets nachbestellt usw...

 

Firmware hab ich nciht umgeschrieben - das wollt/kann ich nicht.

Es hat immer nur 2-6 Stunden funktioniert - ob mit oder ohne Callbacks und es hat immer den gesamten Stack ruiniert (z.b. andere Bricklets massiv beeinflusst)). Zum Schluss hab ich schon ein Relais in die Stromversorgung gehängt und alle 2 Stunden für 1 Minute abgeschalten.

 

Egal - jetzt funktionieren sie und ich verwende sie oft und gern.

Link to comment
Share on other sites

Join the conversation

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

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...