PreinfalkG Posted January 2, 2015 at 10:26 PM Share Posted January 2, 2015 at 10:26 PM Seit dem ich den RED Brick (mit Ethernet Extension) in Verwendung habe, bekomme ich die JavaScript Bindings nicht mehr zum laufen! Zuvor hatte ich einen MasterBrick mit der Ethernet Extension in Betrieb und da gab es keine Probleme. Hab auch auf die neue Version (2.0.4) der JavaScript Bindings upgedatet. Selbst eure Testseiten (z.B. Dual Relay Bricklet) funktionieren bei mir mit dem RED Brick nicht mehr -> siehe Screenshot !!! Habt ihr eine Idee? lg. Günter Quote Link to comment Share on other sites More sharing options...
borg Posted January 3, 2015 at 02:11 PM Share Posted January 3, 2015 at 02:11 PM Wenn du den RED Brick per USB an den PC anschließt und localhost statt der IP nimmst, funktioniert es dann? Edit: Nur um zu gucken ob es ein generelles Problem mit brickd ist oder spezifisch mit dem RED Brick zu tun hat. Quote Link to comment Share on other sites More sharing options...
PreinfalkG Posted January 3, 2015 at 03:35 PM Author Share Posted January 3, 2015 at 03:35 PM Hallo borg So, nach einigen Stunden hab ich jetzt festgestellt, dass es mit Internet Explorer v11.0 bei mir funktioniert und mit allen anderen Browsern (Chrome 39, Firefox 34, iPhone und iPad) NICHT funktioniert! Konfiguration: Eurer Online 'TemperatureIR_Bricklet_JavaScript_ExampleSimple.html' mit RED Brick, 2x MasterBrick und einigen Bricklets. Zusatz: Meine WebSeite welche ich vor dem RED Brick mit einem MasterBrick und Ethernet Extension hatte habe ich auf JavaScript Binding v2.0.4 gehoben und funktioniert jetzt auch nur mehr mit Internet Explorer! siehe Screenshot mit alles drei Browsern ... lg. Günter Quote Link to comment Share on other sites More sharing options...
borg Posted January 3, 2015 at 04:46 PM Share Posted January 3, 2015 at 04:46 PM Puh, das muss ich mir am Montag genauer angucken. Ich bin gerade kurz die Commits durchgegangen, IMO hat sich seit dem allerersten Release nichts am eigentlichen Verbindungsaufbau geändert (dieser schlägt ja fehl hier). Es ist auch komisch, dass die JavaScript Bindings schuld zu sein scheinen. Die WebSocket Server Implementierung im Brickd und im Master Brick ist komplett von uns, da kann ich mir gut vorstellen, dass wir irgendwo RFC 6455 nicht 100%ig korrekt implementieren und es nach einem Browser-Update auf einmal nicht mehr geht. Für die Bindings nutzen wir die WebSocket Implementierung des jeweiligen Browsers. Warum sollte sich da etwas ändern nach einem Update der Bindings? Sehr komisch. Wenn du Lust hast das genauer zu debuggen könntest du versuchen die Kommunikation mit Wireshark aufzunehmen. Einmal mit einer funktionierenden und einmal mit einer nicht-funktionierenden Bindings Version. Interessant wäre dabei dann zu sehen wo genau im WebSocket Handshake der Unterschied ist zwischen den beiden. Ich komme da sonst frühstens am Montag oder Dienstag zu. Quote Link to comment Share on other sites More sharing options...
PreinfalkG Posted January 3, 2015 at 05:25 PM Author Share Posted January 3, 2015 at 05:25 PM Hi, kein Stress ... Hier der genaue Ort des JavaSkript Fehlers (bei Chrome und Firefox gleich) ... lg. Günter Quote Link to comment Share on other sites More sharing options...
photron Posted January 5, 2015 at 03:04 PM Share Posted January 5, 2015 at 03:04 PM Problem gefunden und gelöst. Es kann passieren, dass brickd schon anfängt Callbacks über den WebSocket rauszuschicken, bevor der Handshake mit dem Browser fertig ist. Dies sieht dann für den Browser nach einem fehlerhaften Handshake aus und der er bricht die Verbindung ab. Voraussichtlich Ende der Woche gibt es eine neue Version es Images, die dann auch diesen Fix beinhaltet. Bis dahin kannst du über den Console Tab im Brick Viewer von Hand eine korrigierte Version einspielen. Dazu einfach folgende Befehle eingeben: sudo wget -O /usr/bin/brickd_new "http://www.tinkerunity.org/forum/index.php?action=dlattach;topic=2788.0;attach=2071" sudo mv /usr/bin/brickd_new /usr/bin/brickd als Password tf eingeben und nach dem Download oben rechts über den System Knopf Brick Daemon neustarten. Edit: wget Befehl korrigiert.brickd Quote Link to comment Share on other sites More sharing options...
abinbetrieb Posted March 22, 2024 at 04:04 PM Share Posted March 22, 2024 at 04:04 PM (edited) Hallo, habe aktuell das gleiche Problem: ExampleCallback.js sowie die html Seite stammt von tinkerforge. Mit dem Brickviewer kann ich die Daten des outdoor weather bricklets auslesen, allerdings nicht mit dem Browser. Die Konsole von Firefox zeigt den oben beschriebenen Fehler in der gleichen Zeile wie oben in Tinkerforge.js Im brickdaemon log erscheint der Verbindungsversuch beim Klick auf den "Start example" button, allerdings wird sofort abgebrochen (Package too long). Im Textfeld dann Error 13. Websocket habe ich aktiviert, das zeigt auch der Bricklogger an. Habe mit dem Raspian sowie unter Windows ausprobiert. Mit Edge, IE, Firefox sowie Chrome kein Erfolg. Würde mich auf Unterstützung freuen. Da der log den Anmeldeversuch (zombie) anzeigt, vermute ich einen Fehler in den Bindings?! VG Edited March 22, 2024 at 04:07 PM by abinbetrieb Websockets aktiviert (Info ergänzt) Quote Link to comment Share on other sites More sharing options...
photron Posted March 25, 2024 at 01:03 PM Share Posted March 25, 2024 at 01:03 PM Ich habe die JavaScript Binding im Browser getestet und kann dein Problem leider nicht nachstellen. Die Bindings funktionieren bei mir. Ich habe dieses Beispiel einfach direkt im Browser ausgeführt, ohne es vorher runterzuladen. Ich habe nur die UID meines Outdoor Weather Bricklets eingetragen: https://www.tinkerforge.com/de/doc/Software/Examples/JavaScript/OutdoorWeather_Bricklet_JavaScript_ExampleCallback.html Ich verwenden die aktuellen Softwareversionen: brickd 2.4.5 und Outdoor Weather Bricklet Firmware 2.0.4. 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.