haperiebmann Posted June 23, 2021 at 09:54 AM Share Posted June 23, 2021 at 09:54 AM Hallo, ich habe ein relativ komplexes System am Laufen bestehend aus DCBrick -> Master -> StepperBrick -> SilentStepperBlrick, dazu noch zwei PerformanceDC Bricklet, zwei Load Cell, ein IO16 und zwei RelaisBricklet. Das funktioniert grundsätzlich sehr gut, heute jedoch wirft er mir ständig eine TimeoutException mit ID -1. Immer an unterschiedlichen Systemen, einmal an den Load Cells, dann am Stepper. Was Wofür steht denn die ID -1? VG Michael Quote Link to comment Share on other sites More sharing options...
photron Posted June 23, 2021 at 11:37 AM Share Posted June 23, 2021 at 11:37 AM Ich rate mal und sage du meinst diese Meldung: Exception in thread "main" com.tinkerforge.TimeoutException: Did not receive response in time for function ID -1 Die -1 ist ein falsch dargestelltes Byte und soll 255 sein. Das ist ein Darstellungs-Bug in den Java Bindings. Wird behoben. auf Dauer zeigen wir da vermutlich einfach den Funktionsnamen und nicht die ID an. 255 ist die Funktions ID für die getIdentity Funktion. Die Bindings rufen beim ersten Aufruf den dein Programm macht intern getIdentity auf, um zu prüfen ob der Brick/Bricklet vom Typ her zur Bindings Klasse passt, die du instanziiert hast. Das gibt dir da keine weitere Information, du läufst da einfach in einen Timeout rein, sprich die Kommunikation ist gestört, oder du versuchst Bricks/Brciklets anzusprechen die nicht angeschlossen sind. Taucht der Stapel sauber in Brick Viewer auf? Hast du vielleicht einfach den Stapel nicht ordentlich zusammengesteckt? Ist der Stapel nicht verschraubt und hat einen Stoß bekommen? Quote Link to comment Share on other sites More sharing options...
haperiebmann Posted June 23, 2021 at 05:11 PM Author Share Posted June 23, 2021 at 05:11 PM Hi, das erscheint plausibel, der Stack ist fest verschraubt und hat keinen stoß bekommen, es taucht auch alles sauber im Viewer auf. Allerdings läuft das Programm auf einem Raspberry und wird mit dem Bootvorgang nach einem Delay gestartet. Vielleicht muss sich da manchmal der USB noch sortieren. Wir haben jetzt allerdings auch festgestellt dass der Stepper Brick ohne Last sehr heiß wird und mittlerweile scheint der defekt zu sein, er gibt zwar an ein Signal zu liefern, der Motor tut allerdings keinen Mucks mehr. Kann es sein dass das mit rein spielt? Die Software ist übrigens in Kotlin mit Java Bindings, die Fehlermeldung ist korrekt :-D Quote Link to comment Share on other sites More sharing options...
photron Posted June 24, 2021 at 11:43 AM Share Posted June 24, 2021 at 11:43 AM Dann bau mal testweise den defekten Stepper Brick aus, um zu sehen ob der das Timeout Problem auslöst. Quote Link to comment Share on other sites More sharing options...
MBOB Posted June 25, 2021 at 10:01 AM Share Posted June 25, 2021 at 10:01 AM Meine Fehlermeldung lautet ähnlich: "Mikro-Schalter Did not receive response in time for function ID 1" Ich arbeite mit VB.NET. Helfen kann ich mir nur mit Strom aus und Strom ein bei den Bricklets. Fehler tritt nicht ständig auf; aber oft! Bricks und Bricklets sind fest verschraubt und hängen auf der Hutschiene! Wo kann ich ansetzen? Quote Link to comment Share on other sites More sharing options...
photron Posted June 25, 2021 at 10:20 AM Share Posted June 25, 2021 at 10:20 AM @MBOBHast du ab und zu Timeouts, oder treten den Timeouts ab einem gewissen Zeitpunkt durchgehend auf und es funktioniert dadurch nichts mehr bis du den Aufbau from Strom trennst? Quote Link to comment Share on other sites More sharing options...
MBOB Posted June 25, 2021 at 10:43 AM Share Posted June 25, 2021 at 10:43 AM Ich habe ab und zu Timeouts! Quote Link to comment Share on other sites More sharing options...
MBOB Posted July 28, 2021 at 09:10 AM Share Posted July 28, 2021 at 09:10 AM Ich habe doch ab einem gewissen Zeitpunkt durchgehend diese Timeoutfehlermeldung und nur mit Strom abschalten und Pause geht es dann wieder für einige Zeit; dann gleiches Problem wieder! Hilfe! Quote Link to comment Share on other sites More sharing options...
MBOB Posted July 29, 2021 at 01:52 PM Share Posted July 29, 2021 at 01:52 PM Fehlermeldung ---------------ANFANG----------- System.IndexOutOfRangeException HResult=0x80131508 Message=Der Index war außerhalb des Arraybereichs. Source=Tinkerforge StackTrace: at Tinkerforge.IPConnection.HandleResponse(Byte[] packet) at Tinkerforge.IPConnection.ReceiveLoop(Int64 localSocketID) at Tinkerforge.IPConnection.<ConnectUnlocked>m__2() at System.Threading.ThreadHelper.ThreadStart_Context(Object state) at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart() ____________ENDE_____________________ Quote Link to comment Share on other sites More sharing options...
photron Posted July 29, 2021 at 02:30 PM Share Posted July 29, 2021 at 02:30 PM Der Fehler kommt daher, dass die Bindings eine beschädigte Antwort empfangen haben. Es steht noch auf der TODO Liste diesen Fehler besser zu behandeln. Das ist aber kein Bug in den Bindings, sondern die Antwort wurde vom Brick(let) entweder schon beschädigt losgeschickt, oder ist auf dem Weg beschädigt worden. Wie ist dein Stack angeschlossen? USB, WLAN oder Ethernet? Ist ein RED Brick involviert? Wie sehen die Fehlerzähler im Brick Viewer Health Monitor aus? Im besten Fall sind alle 0, oder ändern sich zumindest nicht. Falls diese durchgängig steigen dann ist deine Bricklet Kommunikation durch die Umgebung gestört. Die Kommunikation kann ein gewisses Level an Störung kompensieren, ab einem bestimmten Level greift das aber nicht mehr und beschädigte Antworten kommen durch. Quote Link to comment Share on other sites More sharing options...
MBOB Posted July 29, 2021 at 05:09 PM Share Posted July 29, 2021 at 05:09 PM Anschluss über PoE Fehler taucht bei diesem CodeBefehl auf: Tinkerforge.BrickletAnalogInV3.SetVoltageCallbackConfiguration(100, False, "x"c, 2500, 3500) Den Brickviewer kenne ich! Wo finde ich den BrickViewer Health Monitor? Quote Link to comment Share on other sites More sharing options...
MBOB Posted July 29, 2021 at 05:22 PM Share Posted July 29, 2021 at 05:22 PM Health Monitor im BrickViewer habe ich gefunden! KEIN Red Brick Quote Link to comment Share on other sites More sharing options...
MBOB Posted July 29, 2021 at 05:39 PM Share Posted July 29, 2021 at 05:39 PM Anbei die Fehler des BrickletAnalogInV3 gut sichtbar Was kann ich tun? mbob_brickv_health_report_2021-07-29_19-33-00.csv Quote Link to comment Share on other sites More sharing options...
photron Posted July 30, 2021 at 08:59 AM Share Posted July 30, 2021 at 08:59 AM Frage ist jetzt was ist am Analog In Bricklet anders als mit den anderen Bricklets. Hast du das abgesetzt vom Stapel an einem langen Bricklet Kabel? Was misst du mit dem Analog In Bricklet? Hast du vielleicht die Schrittmotorkabel parallel zum Analog In Bricklet Kabel verlegt? Die Vermutung ist, dass du dort elektromagnetische Störungen einfängst, die dann die Kommunikation mit dem Bricklet stören. Beobachte mal im Betrieb mit dem Health Monitor die Fehlerzähler. Gibt es bestimmte Situation in denen diese steigen? Zum Beispiel, wenn die Schrittmotoren laufen? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.