Jump to content

photron

Administrators
  • Gesamte Inhalte

    3.239
  • Benutzer seit

  • Letzter Besuch

  • Tagessiege

    59

Alle erstellten Inhalte von photron

  1. Bindings: C/C++ 2.1.9, C# 2.1.8, Delphi/Lazarus 2.1.9, Java 2.1.7, JavaScript 2.0.7, LabVIEW 2.1.7, Mathematica 2.1.7, MATLAB/Octave 2.0.7, Perl 2.1.7, PHP 2.1.7, Python 2.1.7, Ruby 2.1.7, Shell 2.1.7, VB.NET 2.1.7 Support für CO2, OLED 64x48 und 128x64, Thermocouple und UV Light Bricklet hinzugefügt Download: C/C++, C#, Delphi/Lazarus, Java, JavaScript, LabVIEW, Mathematica, MATLAB/Octave, Perl, PHP, Python, Ruby, Shell, VB.NET
  2. Hast du die richtige UID im Beispiel eingetragen?
  3. Ist korrigiert. Danke für den Hinweis.
  4. Der Code sollte so funktionieren. Du musst allerdings noch den Receiver Enable Pin auf Output-Low setzen, um den Receiver zu aktivieren, siehe init_rxe_pin_state in red_rs485_extension.c.
  5. Wenn dann muss es sudo chown tf ~/.Xauthority lauten. Mit chwon änderst du den Besitzer einer Datei. Den Nutzer user gibt es nicht auf dem RED Brick. Der Nutzer heißt tf. Das wird potentiell nicht helfen. Du kannst testweise xauth auch abstellen mittels "xhost +". Damit hat dann jeder Zugriff auf den X Server. Dafür "startx ./Touch" durch xhost +; startx ./Touch für das Starten deines Programms ersetzen.
  6. Damit Brick Daemon auf dem RED Brick eine RS485 Extension nicht nutzt, musst du sie mit einem Master Brick und Brick Viewer auf Extension Type None konfigurieren. Die RS485 Extension ist so angeschlossen, dass sie auf UART3 gemuxt werden kann. UART3 taucht als /dev/ttyS0 auf. Der TX Enable Pin des RS485 Transceivers kann auf RTS von UART3 gemuxt werden. Der RX Enable Pin an einem GPIO Pin angeschlossen. Da Brick Daemon jetzt nichts mehr mit der RS485 Extension macht (wegen Extension Type None) musst du selbst das Pin Muxing richtig einstellen. Details kannst du dir im Brick Daemon Code (red_extenstion.c) ansehen. Das kann mit libmodbus funktioniert, getestet hat das meines Wissens nach aber noch keiner. Ein RS232 Bricklet taucht nicht als eine serielle Schnittstelle des Betriebssystems auf.
  7. Mit "startx ./Touch" startest du dein Touch Programm als graphische Oberfläche anstatt des LXDE Desktops. Das ist so von uns erstmal nicht direkt vorgesehen. Vorgesehen ist, das der LXDE Desktop startet und dann dein Programm darauf angezeigt wird. Was du testen kannst ist folgendes: - Auf dem Services Tab den Desktop abstellen - Dein Programm als Shell Programm hochladen - Beim Shell Programm "Command" statt "Script" wählen und dort "startx ./Touch" eintragen - Unter Environment nicht DISPLAY angeben, weil dann der redapid darauf wartet, dass der LXDE Desktop gestartet ist, bevor er dein Programm startet. Das sollte so funktionieren, ich habe es aber nicht getestet.
  8. Ist das ein GUI Programm? Hast du DISPLAY auf :0 gesetzt?
  9. FlyingDoc, warum kannst du nicht den normalen Program Schedule Mechnismus mit Always und Continue-After-Error benutzen?
  10. Die blaue LED ist leider nicht per Software steuerbar. Nur die Rote und Grüne können per Software gesteuert werden.
  11. Das ergibt aber keinen Sinn! Welche Brick Daemon Version hattest du denn vorher installiert? Die 2.2.2-debug1 Version hat keine Änderungen gegenüber 2.2.2, abgesehen von mehr Debugausgabe. Kannst du bitte einmal die originale 2.2.2 Version testen: http://download.tinkerforge.com/tools/brickd/windows/brickd_windows_2_2_2.exe Mit der muss es dann eigentlich auf funktionieren.
  12. Komisch, dass beim Anstecken den Bricks nichts im Live Debug Log auftaucht. Dass heißt Windows hat Brick Daemon entweder nicht gesagt, dass ein neues Gerät angeschlossen wurde, oder Brick Daemon hat es nicht verstanden. Die Access Denied Fehler im Event Log sind komisch. Leider fehlt dazu das passende Live Debug Log. Die libusb Bibliothek kann LIBUSB_ERROR_ACCESS an mehreren Stellen zurückgeben, ohne das Debug Log weiß ich nicht wo genau der Fehler herkommt. Hier eine Brick Daemon Version mit mehr Debug Ausgabe. Kannst du diese Version installieren und noch einmal nach den beschriebenen Schritten ein Live Debug Log vom Anstecken des Bricks erstellen? Admin-Edit: Veraltete brickd-Version entfernt.
  13. Andi, es wir auch diese Jahr leider keinen Weihnachtsrabatt geben.
  14. Okay da ist was komisch. Führe bitte folgende Schritte aus: - Beende Brick Viewer und alle anderen Programme die mit dem Brick Daemon verbunden sind - Trenne den RED Brick von USB - Starte den Brick Daemon Log Viewer (Startmenu oder Brick Daemon Programm Verzeichnis) - Schalte im View Menu auf "Live Debug Log" um - Stecke den RED Brick an USB an - Warte bis das Log angehalten hat - Speichere das Log über File -> Save und hänge die Datei an Foreneintrag an
  15. Die neuere Version war für dich zum Testen, die ist noch nicht released. Hier eine Version des Brick Logger Scripts mit Authentication. brick_logger_2_0_2_b389b417af0a39e61d355b46056820b60c915209.zip
  16. Windows 7, Vista und XP brauchen einen extra Treiber für Bricks per USB. Dieser Treiber wird durch den Brick Daemon Installer mitinstalliert und Windows sollte ihn automatisch nutzen, wenn du Bricks per USB ansteckst. Taucht der Brick denn im Geräte Manager auf?
  17. Die Erklärung ist einfach: der Data Logger kann noch keine Authentication. Teste mal bitte diese Brick Viewer Version: http://download.tinkerforge.com/_stuff/brickv_windows_2_3_2_660769f014465cc53224c7323db5e0bdae07a944.exe
  18. So funktioniert da ja auch nicht. Du musst zuerst RequestPage() aufrufen. Schau dir mal die Dokumentation für GetPage() und RequestPage() und das "Write/Read Type 2" Beispiel.
  19. Audio über HDMI geht mit dem RED Brick hardware-mäßig nicht. Über HDMI wird nur Video ausgegeben.
  20. Das ist sehr komisch. Hast du das alles mit dem gleichen Tag getestet, oder tritt das auch bei einem anderen Tag auf?
  21. Bindings: C/C++ 2.1.8, C# 2.1.7, Delphi/Lazarus 2.1.8, Java 2.1.6, JavaScript 2.0.6, LabVIEW 2.1.6, Mathematica 2.1.6, MATLAB/Octave 2.0.6, Perl 2.1.6, PHP 2.1.6, Python 2.1.6, Ruby 2.1.6, Shell 2.1.6, VB.NET 2.1.6 Add missing constant for 19200 baud to RS232 Bricklet API [all] Add error callback to RS232 Bricklet API [all] Add set_break_condition function to RS232 Bricklet API [all] Add unlimited illuminance range constant to Ambient Light Bricklet 2.0 API [all] Break API to fix threshold min/max type mismatch in Ambient Light, Analog In (2.0), Distance IR/US, Humidity, Linear Poti and Voltage Bricklet API [all] Break API to fix bool return type mismatch in Servo Brick (is_position_reached_callback_enabled and is_velocity_reached_callback_enabled function), Accelerometer Bricklet (is_led_on function) and Load Cell Bricklet (is_led_on function) API [all] Avoid race condition in callback thread destruction [C/C++] Avoid warnings about experimental reference access patterns [Perl] Don't decode non-ASCII strings and chars in Python 3 [Python] Download: C/C++, C#, Delphi/Lazarus, Java, JavaScript, LabVIEW, Mathematica, MATLAB/Octave, Perl, PHP, Python, Ruby, Shell, VB.NET This release brakes API in two places. Programs that use the affected functions have to be adapted. The change is about the parameter and return types of some functions. Because of that only strictly typed languages are affected: C/C++, C#, Delphi/Lazarus, Java and VB.NET. In all cases the changes will reveal themself as compile error, so no change can be missed.
  22. Bindings: C/C++ 2.1.8, C# 2.1.7, Delphi/Lazarus 2.1.8, Java 2.1.6, JavaScript 2.0.6, LabVIEW 2.1.6, Mathematica 2.1.6, MATLAB/Octave 2.0.6, Perl 2.1.6, PHP 2.1.6, Python 2.1.6, Ruby 2.1.6, Shell 2.1.6, VB.NET 2.1.6 Fehlenden Konstante für 19200 Baud zur RS232 Bricklet API hinzugefügt [Alle] Error Callback zur RS232 Bricklet API hinzugefügt [Alle] set_break_condition Funktion zur RS232 Bricklet API hinzugefügt [Alle] Unlimited Konstante zur Ambient Light Bricklet 2.0 API hinzugefügt [Alle] API Bruch, um falsche Threshold Min/Max Parametertypen in der Ambient Light, Analog In (2.0), Distance IR/US, Humidity, Linear Poti und Voltage Bricklet API zu korrigieren [Alle] API Bruch, um falsche Rückgabetypen in der Servo Brick (is_position_reached_callback_enabled und is_velocity_reached_callback_enabled Funktion), Accelerometer Bricklet (is_led_on Funktion) und Load Cell Bricklet (is_led_on Funktion) API zu korrigieren [Alle] Race Condition in der Callback Thread Beendigungslogik vermieden [C/C++] Warnungen über experimentelle Referenzzugriffsmuster behoben [Perl] Nicht-ASCII Strings und Zeichen werden in Python 3 nicht mehr fälschlicherweise dekodiert [Python] Download: C/C++, C#, Delphi/Lazarus, Java, JavaScript, LabVIEW, Mathematica, MATLAB/Octave, Perl, PHP, Python, Ruby, Shell, VB.NET Dieses Release bricht API an zwei Stellen. Dies bedeutet, dass Programm, die die betroffenen Funktionen nutzen angepasst werden müssen. Es geht um die Parameter- und Rückgabewerttypen einiger Funktionen. Daher sind nur Programmiersprachen mit strikten Typen betroffen: C/C++, C#, Delphi/Lazarus, Java und VB.NET. In allen Fällen werden sich die Änderungen als Kompilierfehler zeigen, so dass keine Änderungen unbemerkt blieben kann.
  23. Das der import nicht klappt könnte daran liegen, dass das aktuelle Verzeichnis nicht das ist in dem deine index.py liegt. Füge mal bitte folgendes vor dem problematischen import ein: import sys import os sys.path.insert(0, os.path.dirname(os.path.realpath(__file__))) Das fügt, dass Verzeichnis in dem deine index.py liegt in den sys.path ein in dem Python nach Modulen sucht. Wenn das nicht hilft, dann kannst du Debug aktivieren, was die Python Exception anzeigen sollte die den 500er Fehler erzeugt: application = Flask(__name__) application.debug = True
  24. Funktioniert dieses Minimalbeispiel, wenn du es als index.py hochlädst: from flask import Flask application = Flask(__name__) app = application @app.route('/') def index(): return '<html><body>Hello World!</body></html>'
  25. Deinem Script fehlt der Aufruf einer der verschiedenen Client Loop Funktionen: https://pypi.python.org/pypi/paho-mqtt#network-loop Dadurch funktioniert dein Skript mehr oder weniger nur zufällig und daher kommt auch das 2 Minuten Problem. Ersetze in deinem Skript raw_input('Press key to exit\n') # Use input() in Python 3 z.B. durch client.loop_forever()
×
×
  • Neu erstellen...