Jump to content

DoIT

Members
  • Content Count

    20
  • Joined

  • Last visited

Community Reputation

0 Neutral

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Update: Mit weniger Sensoren verhält es sich gleich. Was mir jedoch aufgefallen ist. Die Zeit bis es zu diesem verhalten kommt, sind nicht immer 12h. Es ist mir auch schon nach 1h passiert aber genauso auch erst nach 14h. Es lässt sich also zeitlich nicht wirklich eingrenzen. Mit nur einem Sensor habe ich den Fehler nicht bekommen. Ein weiters verhalten was ich nun festgestellt habe ist, dass manche Sensoren plötzlich keine Temperatur mehr liefern. Diese sind nicht am gleichen Verteiler noch immer die selben. Es kommen dann immer wieder Temperaturwerte von -0.1°C. Zusätzlich werden dann Sen
  2. Ok jetzt verstehe ich das. Den nebenbei habe ich noch den Brickviewer geöffnet. Ah irgendwie bin ich davon ausgegangen das es nötig sein sollte die Objekte bei einem Verbindungsverlust neu zu erstellen. Habe den Code nun nach deinem Beispiel angepasst. Jetzt funktioniert es. Vielen Danke! 😀
  3. Danke für deine Antwort. Ok jetzt wird es mir klarer. Nein auf den enumeration_type habe ich nicht geachtet jedoch habe ich den Code einfach vom Beispiel übernommen es steht also folgendes: if enumeration_type == IPConnection.ENUMERATION_TYPE_CONNECTED or enumeration_type == IPConnection.ENUMERATION_TYPE_AVAILABLE: Ich bin davon ausgegangen das es schon sinn machen würde sobald ein Enumeration Event ausgelöst wurde einfach die Objekte neu zu erzeugen und auch zu konfigurieren. Ok also ich ersetzte das Objekt nicht in der Liste. Sondern nur temporär das i Objekt. Wie würdest
  4. Ich suche nun schon seit Tagen an einem Fehler jedoch komme ich einfach nicht dahinter. Wahrscheinlich habe ich einen Denkfehler oder sonnst etwas. Ich hoffe das mal jemand darüber schauen kann und mir sagen was ich Falsch mache. Folgendes möchte ich umsetzten. Ich verfolge dabei den Robusten Tinkerforge Ansatz in Python. Es gibt eben eine Rugged Class wobei ich mir hier zwei Instanzen erstelle in einem Programm. Jede Instanz hat einen HOST(brickdeamon) jedoch gibt es eine Master Instanz. Der Grund für diese Masterinstanz ist das alle anderen Instanzen neue Bricklets oder auch
  5. Ich habe jetzt nochmals ohne Änderung mein Programm laufen lassen. Also mit allen Sensoren weil ich einen Screenshot vor und nach dem Reset machen wollte. Hier nun das Ergebnis. Es steht Bussy. Was bedeutet das genau? Auch sieht man schön das ein Reset Bus nichts ändert. Es werden erst wieder Sensoren nach dem Reset vom Bricklet selbst gefunden. Mein Programm war zu diesem Zeitpunkt beendet. Also hierdurch ist eine Blockierung nicht möglich. Die Timeouts sind denke ich schon älter und stammen von anderen Versuchen von mir wie sich das Programm verhält wenn ich die Netzwerkverbindung tr
  6. Gerne. Und Danke für deine Hilfe! :-) Das ganze läuft auf einem Raspi mit installiertem Wireguard. Würde es dir helfen Zugriff zum testen auf das System zu bekommen? Möchte das Projekt später sowieso gerne vorstellen und veröffentlichen. Es sind Sensoren vom Typ DS18B20 die ich von Amazon oder Aliexpress habe das kann ich nicht mehr genau sagen. Sowas: 10 stücke DALLAS DS18B20 18B20 ZU 92 IC CHIP Thermometer Temperatur Sensor|ic chip|sensor chipsensor ds18b20 - AliExpress An die Sensoren habe ich dann ein 3 poliges Kabel mit Schirm angelötet. Es sind dann 3 Unterverteiler
  7. OK dann stimmen die angezeigten CRC Werte also. Würde es für meine Funktion dann überhaupt Sinn machen den CRC Wert zu berechnen wenn dies eh schon das Bricklet erledigt? Werden readings im Brickviewer verworfen wenn der CRC nicht korrekt ist? Sobald ich in meinem Programm fehlerhafte Werte bekomme also etwa nach 12h ist es so das ich im Brickviewer bei Search Bus keine Sensoren mehr finde. Abhilfe das wieder Sensoren gefunden werden ist ein Reset im Brickviewer oder aber das ab und anstecken vom Bricklet selbst was ja auch ein Reset ist ein Reset Bus hilft nichts. Über meine Pr
  8. Danke für deine Antwort. Ist das dann ein Fehler im Brickelt selbst da ja der CRC so nicht stimmt oder? Es reicht sein Softwarereset aus um wieder richtige Werte zu bekommen. Ein und Ausstecken vom Bricklet ist nicht nötig. Ist es möglich das einer oder merhere Sensoren da Probleme machen? Wobei es ja nach einem Brickletreset wieder funktioniert. Nach einigen Stunden erscheinen dann eben auch diese Geistersensoren auf dem Bus welche einen neue Adresse haben und den Temperaturwert von -0,1C und die echten Sensoren sind nicht mehr am Bus ersichtlich. Wie könnte man einen event
  9. Hast du eine Idee was ich versuchen könnte? Oder wo das Problem liegen könnte? Vielen Dank.
  10. Danke für deine Antwort. Der Screenshot ist aufgenommen wo die werte passen. Also nach einem Reset vom Bricklet. Auf das Ergebnis was du schreibst bin ich auch gekommen. Ich verstehe es aber nicht. Der CRC Wert wird ja vom Sensor gesendet oder wird der im Brickviewer berechnet?
  11. Hallo, ich habe folgendes Problem. Ich bin dabei einen Temperaturlogger zu erstellen welcher auf DS18B20 aufbaut. Ich lese aktuell 18 Sensoren vom Typ DS18B20 über Onewire ein. Grundsätzlich funktioniert das ganze. Ich bekomme Temperaturen und schreibe diese in eine Datenbank. Das Problem was ich habe das nach etwa 12h (manchmal mehr, manchmal auch weniger Zeit) sich das Onewire Brickelt so verhält das es entweder gar keine Sensoren mehr findet oder Zombis liefert. Bedeutet neue Sensoradressen mit den Messwerten -0,1C. Sobald ich das Onewire Bricklet Resete ist wieder für einig
  12. Moin, danke für deine Antwort, komme leider erst jetzt dazu deine Antwort umzusetzen. Ist es ein Problem wenn ich die Registrierung von Callbacks für ein Modul mehrfach ausführe? Wird dann der Callback mehrfach ausgeführt? Danke.
  13. Hallo, ich versuche gerade mehrere IO16 Module mit angeschloßenen Tastern auszuwerten, dazu möchte ich Callbacks verweden. Wenn ich bei den Callbacks bei jedem Modul also die selbe Funktion angebe bekomme ich in der Funktion ja nicht mit von welchem Modul jetzt der Aufruf gekommen ist oder? Mein Workaround wäre jetzt gewesen für jedes Modul eine eigene Fuction zu schreiben welche im Grunde die Callbackfuntion mit der UID nochmals aufruft. So kann ich das Modul identifizieren. Meine Frage geht das auch anders oder habe ich wiedermal etwas übersehen? Grüße Markus
  14. Danke für deine Antwort :-) Ja das ist eine super Idee. Eine Frage hätte ich da jetzt aber noch. Verstehe ich das richtig das diese Regelen zu jedem Zeitpunkt ausgeführt werden können und das Ergebnis dann von den aktuellen Zuständen der Sensoren und Parameter abhängt? Sobald eine Änderung passiert werden alle Regelen nacheinander abgearbeitet wobei eben die letzte Regel im grunde die Entscheidungshoheit hat. Das bedeutet ich definiere einen Abfragezyklus für alle Sensoren bzw. Eingänge. Und dannach wird dieses Regelset aufgerufen. Ich muss aber beim erstellen
  15. Ich würde mich über eine kurze Rückmeldung sehr freuen. Vielleicht auch über die Bestätigung das es hier nichts gibt außer alles selbst zu machen. :-)
×
×
  • Create New...