Jump to content

Recommended Posts

Geschrieben

Hallo,

 

ich habe gestern den brickd auf meinem Raspberry Pi installiert und nach der Anleitung auch ohne Probleme oder Fehler. Eine Abfrage der Version lief auch super.

Dann habe ich die PHP-Beispiele ausprobieren wollen, aber außer einer unendlichen Ladezeit habe ich leider keine Fehler in der Ausgabe (Reporting ist aktiviert im Skript) und auch keinen Eintrag im ErrorLog des Apache.

 

In einem anderen Beitrag hier habe ich gelesen, dass es an den Rechten gelegen haben könnte. Der Apache läuft nicht als root, sondern als ein user und für die bisherigen PHP-Projekte war das kein Problem.

 

Da ich mit Linux nicht so fit bin, habe ich mal testweise die /usr/bin/brickd mit 0777 berechtigt, was aber kein Ergebnis brachte.

 

Wo könnte der Fehler liegen? Wo muss ich welche Rechte vergeben?

 

Mal ganz am Anfang...wie könnte ich per shell sehen, das mein angesteckter ServoBrick (LED leuchtet konstant blau) erkannt wird und nicht Teil des Problems ist?

Geschrieben

Ja...ich habe dort Apache-Php-Mysql die übliche Umgebung auf der auch ein paar Skripte laufen. Zudem funktioniert auch die Fehlerausgabe, denn anfangs hatte ich vergessen den Pfad für require_once zu ändern und da kam gleich der entsprechende Fehler. den Pfad ergänzt und dann kommt NICHTS...der Browser lädt auch ziemlich unendlich ohne Fehler oder Resultat.

Geschrieben

Mal ganz am Anfang...wie könnte ich per shell sehen, das mein angesteckter ServoBrick (LED leuchtet konstant blau) erkannt wird und nicht Teil des Problems ist?

Du könntest erstmal mit dem Brick Viewer gucken ob die Bricks/Bricklets erkannt werden. Danach würde ich dann erstmal eines der Minimal-PHP-Beispiele testen, um zu gucken ob das mit PHP prinzipiell funktioniert.

 

Wenn das geht bleibt ja nur noch Apache als Fehlerquelle.

Geschrieben

Soweit ich verstanden habe, braucht es für einen Viewer auch eine Desktopoberfläche...ich betreibe aber den Raspberry als echten Server und das ohne Oberfläche...mir bleibt also nur die shell.

 

Ich habe ja nur das Beispiel: ExampleEnumerate.php getestet. Und das läuft unendlich ohne Rückmeldung.

Geschrieben

Hallo mchott.

 

Soweit ich verstanden habe, braucht es für einen Viewer auch eine Desktopoberfläche

Du sitzt doch nicht mit Keyboard und ASCII Monitor vor dem Raspberry.  ;D

 

Installiere auf DEINEM Arbeitsplatzrechner den Brickviewer und verbinde dich (via Netzwerk) auf den Raspberry.

 

Der Loetkolben

Geschrieben

Danke für den Tipp...ist schon genial wie das alles funktioniert. Was man dann ganz deutlich sieht...ist, dass man nix sieht.

 

Daraus folgere ich, dass die Anmeldung per USB ein Problem ist...mmmmhhhh

 

Per lsusb kann ich sagen das mein Servo-Brick als "GrauTec" erkannt wird.

Nachdem ich bei der Installation mit dem libudev Probleme hatte habe ich aus einem anderen Forum die per libudev-dev installiert (problemlos).

 

...weiter komme ich aber nicht...

Geschrieben

Der Brickdaemon funktioniert...ich bekomme vom Viewer keinen Fehler. Schalte ich den Deamon ab, dann wird mir das gleich quittiert. Daher kann es nur noch der USB-Anschluss sein. Die Bricks habe ich jetzt auch mal direkt an einen PC angeschlossen und dann gehen sie.

 

 

Geschrieben

Okay, laut lsusb erkennt Linux den Servo Brick. Was sagt denn dass brickd Log unter /var/log/brickd.log dazu? Steht da was von "Added USB device" und "Removing USB device" wenn du den Brick per USB an- und absteckst?

Geschrieben

Ah, dann solltest du deinen Brick noch flashen/updaten.

 

Am einfachsten an deinen Arbeitsplatzrechner anschließen, beide Taster gleichzeitig drücken und im Brick-Viewer flashen*

 

* Das war gerade die Kurzversion, es gibt auch eine echte Anleitung dazu hier in der Doku.

Geschrieben

Super...mit der Anleitung war alles gesagt...

 

Wenn ich mich aber mit dem Stapel bestehend aus zwei Bausteinen jetzt verbinde, dann sehe ich immer nur den, an dem das USB-Kabel hängt. Um mit dem brickv auch die Bricklets zu updaten, musste ich noch den brickd installieren.

 

Aus PHP hat sich die Situation nicht geändert....alles super bis zur zum

$ipcon->dispatchCallbacks(-1);

Dann lädt und lädt und lädt der Browser ohne Funktion. Normal würde ich ja sagen ist das gar nicht so verkehrt, denn er wartet ja auf eine Rückmeldung. Aber er zeigt halt auch nichts an. (nicht so und auch nicht wenn ich das Bricklet betätige).

Geschrieben

Das "$ipcon->dispatchCallbacks(-1);" ist im wesentlichen eine Endlosschleife. Die ganzen kleinen Minibeispiele sind dafür da um direkt über PHP aufgerufen zu werden, das Programm kann dann mit "strg+c" beendet werden.

 

Wenn du über Apache ein Skript ausführen möchtest muss das "$ipcon->dispatchCallbacks(-1);" weg, da ist es ja so das ein PHP Script sozusagen immer einer Webanfrage entspricht. Da darf dann ans ende keine Endlosschleife.

Geschrieben

http://www.tinkerforge.com/de/doc/Software/IPConnection_PHP.html#ipcon-php

 

Das ist mein erstes Beispiel...was aber nicht funktioniert. Die Endlosschleife ist raus und statt dessen eine 5 als Wert, damit gibt er wie erwartet nach 5s die Daten aus.

 

Über den Brickv oder PHP bekomme ich NUR den ersten Brick mit seinen Bricklets im Stapel (der an dem das USB-Kabel hängt). Muss man da noch was einstellen? Oder braucht man für einen Stapel immer einen MasterBrick?

  • 2 months later...
Geschrieben

Hallo R99,

 

PHP ist es egal wo die Dateien liegen, ich habe meine in meinem Benutzerordner abgelegt und Rufe die mit "php name.php" auf wenn ich mich in dem Ordner befinde.

 

Gruß,

Nemo

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...