Jump to content

photron

Administrators
  • Gesamte Inhalte

    3.182
  • Benutzer seit

  • Letzter Besuch

  • Tagessiege

    52

Alle erstellten Inhalte von photron

  1. There is no official documentation about how the generator system works in detail. But you can dive into it and ask questions along the way. You need to clone our generators git from GitHub. It contains the generators for all supported programming languages and the configuration files. In the configs directory there is a config file for each Brick and Bricklet that describes its API. If you want to add a new Bricklet you need to write such a config file. You can look at all the other config files that are already there as examples. Once you have your config file you can run the generators. The C# bindings are the basis for all the .NET based bindings. Go to the csharp directory and run: python generate_csharp_bindings.py You'll need to have Python installed for this. This script will generate a bindings subdirectory containing the generated C# code for the bindings along with a .csproj file. You can now open the .csproj file in Mono Develop (Visual Studio should also work) and compile it.
  2. Yes you can create your own Bricklet. FlyingDoc in the German board is currently developing his own Differential Pressure Bricklet. The Brick/Bricklet system does not work exactly as you described it. Let me just give a brief overview. There are basically three big steps you need to accomplish to create your own Bricklet: 1. Design and build the Bricklet hardware. 2. Write a firmware plugin for the Bricklet. 3. Write a API bindings generator config for the Bricklet. The EEPROM on the Bricklet does not just contain an identifier but a firmware plugin for the Bricklet. This plugin is loaded and executed by the connected Brick. The Brick firmwares and the Brick Daemon doesn't know or care about individual Bricklets and therefore don't need to be modified to support a new Bricklet. All our API bindings are generated, so you don't modify them directly. The API binding generators read a config file per Brick/Bricklet and generate the actual API bindings based on this information.
  3. CIFS: Ich hab's gerade getestet und im Image fehlt das cifs-utils Package dafür: sudo apt-get install cifs-utils Dann funktioniert das hier. "diesen Ordner als ROOT öffnen": Müssen wir mal sehen ob wir das pcmanfm bei bringen können. Ansonsten pcmanfm aus einem Terminal als root starten: sudo pcmanfm Upload Dialog: Der Upload Dialog merkt sich jetzt auch zwischen den Aufrufen den zuletzt verwendeten Ordner. Environment Variable Dropdown: Ich schau mir mal an wie wir das verbessern können.
  4. Okay, you've already check most of the relevant things. There are some things left to do. First, get a debug level log from Brick Daemon: 1. Disconnect the Master Brick from USB. 2. Close Brick Viewer. 3. Start logviewer and switch to Live Debug Log in the View menu. 4. Connect the Master Brick to USB. You should get many debug messages in logviewer now. 5. Save the Live Debug Log output using the Save... item in the File menu. 6. Attach the saved log to your next forum post so I can have a look at it. Second, check to what kind of USB hub/controller the Master Brick is connected: 1. Open the device manager. 2. Switch to Device By Connection mode in the View menu. 3. Expand the tree until you find the Master Brick. 4. What's the name of the parent device of the Master Brick (it should be some kind of USB Root Hub)? A screenshot of the device manager would be nice. 5. Open the properties dialog of that USB Root Hub and go to the Details tab. 6. What are the values for the Device Instance Id, the Hardware Ids, the Service and the Bus Relation fields? Third, if the USB Root Hub or its parent USB Host Controller is a Renesas/NEC USB 3.0 one then check its driver version. If the driver version is older then 2.1.16 then you need to update. See the "Renesas/NEC USB 3.0 controller with old driver" in our FAQ for more details.
  5. Okay, ist jetzt für alle Bricks und Bricklets geändert.
  6. Ändere mal bitte in generate_makefile.bat die cmake Zeile zu cmake -E chdir build/ cmake -G "MinGW Makefiles" -DCMAKE_MAKE_PROGRAM:PATH=make.exe -DCMAKE_TOOLCHAIN_FILE=toolchains/arm-none-eabi.cmake ../ Und führe es erneut aus. Da Problem ist, dass wir cmake vorgeben MinGW Makefiles zu erzeugen. Dafür will cmake aber mingw32-make finden. Nach Anleitung hast du aber nur GCC für ARM, cmake und make installiert, aber kein mingw32-make, was auch nicht notwendig ist. In meinem Test hier funktionierte das gerade, weil ich mingw32-make installiert habe. Damit cmake nicht nach mehr nach mingw32-make sucht gibt die abgeänderte Zeile jetzt mit -DCMAKE_MAKE_PROGRAM:PATH=make.exe vor wo/was (mingw32-)make ist. Damit sollte das jetzt auch bei dir funktionieren. Wenn das bei dir funktioniert, werde ich das für alle Firmwares und Plugins abändern.
  7. Das sieht aus als ob cmake make nicht finden könnte. Komisch, ich kann generate_makefile.bat aber hier erfolgreich ausführen selbst wenn make gar nicht installiert ist. Ist dein cmake richtig installiert? Versuch mal cmake neu zu installieren, oder ein ältere Version wie cmake 2.8 zu installieren. Ich steht da ein bisschen auf dem Schlauch. Edit: Okay, ich konnte den Fehler gerade reproduzieren. Unsere Anleitung passt sozusagen nicht zu generate_makefile.bat. Ein Fix ist in Arbeit.
  8. Der Updates Dialog versucht beim ersten Öffnen die Liste der aktuellen Firmware Versionen von tinkerforge.com herunterzulanden. Dabei erkennt brickv eigentlich direkt, wenn keine Internet Verbindung vorhanden ist und zeigt dies dann auch an. Ich habe das gerade nochmal auf Linux und Mac getestet und das funktioniert wie erwartet. Da sollte brickv nicht unendlich lange hängen können, da dort schon ein Timer vorhanden ist. Ich habe den Timeout jetzt auf 10 Sekunden eingestellt, vorher wurde die Standardeinstellung von Python dafür verwendet.
  9. Du erzeugst bei jedem Klick neue IPConnection und BrickletNFCRFID Objekte und weißt sie lokalen Variablen zu. Sobald der Aufruf von button9_Click() durch ist gehen die beiden lokalen Variablen verloren und der Garbage Collector kann die IPConnection und BrickletNFCRFID Objekte zerstören. Wenn der Garbage Collector schneller ist als die Antwort vom Bricklet, dann siehst du die Antwort nicht mehr. Anstatt lokale Variablen in button9_Click() zu verwenden, könntest du static Variablen auf Ebenen der Klasse verwenden. Damit auch dann noch Variablen auf die IPConnection und BrickletNFCRFID Objekte verweisen, wenn der Aufruf von button9_Click() durch ist und der Garbage Collector die Objekte nicht zerstören kann.
  10. photron

    Red Brick

    Wir hatten hier mit unserem Macbook Probleme, wenn das Image mit /dev/diskN geschrieben wurde. Aber mit /dev/rdiskN funktionierte es problemlos. Bei dir scheint es genau andersherum zu sein. Ich habe jetzt in der Dokumentation beide Methoden beschrieben. Danke für den Hinweis.
  11. Ja über brickv als Python Programm auf den RED Brick hochladen. Die nötigen Einstellungen für das Programm sind in der Readme beschrieben.
  12. Wo steht, dass Tastatureingaben Probleme machen? Meinst du, dass System.Console.ReadKey() auf dem RED Brick nicht richtig funktioniert, um das Programm davon abzuhalten sich zu beenden? Da muss du einfach nur ReadLine() statt ReadKey() verwenden. Dann funktioniert das wieder und du kannst dein Programm einfach durchlaufen lassen ohne Intervall Modus oder extra Schleifen. In den C# Beispielen haben wir schon ReadLine() zu ReadKey() geändert. In den VB.NET Beispielen haben wir das aber bisher übersehen und werden es in Kürze auch ändern. Danke für den Hinweis.
  13. Am einfachsten geht das über brickv. Du kannst aber auch ein Programm auf den RED Brick hochladen, das es dir erlaubt die Zeit vom Webbrowser aus zu synchronisieren. Ich habe da mal was vorbereitet: https://github.com/Tinkerforge/red-brick/tree/master/programs/sync_time
  14. Läuft denn der X Server auch? Das systemd Package Problem habe ich so behoben: sudo dpkg --purge systemd-shim sudo apt-get -f install Zwar lässt mich apt-get das systemd-shim Package nicht deinstallieren, aber dpkg macht das ohne Murren.
  15. Du brauchst nicht unbedingt die korrekte Zeit auf dem RED Brick.
  16. Das apt-get upgrade Problem kann ich hier reproduzieren. Sieht aus als wäre dieser Debian Bug aus 2014 wieder aufgetaucht. Da habe ich ad hoc keinen Lösungsvorschlag für. Laut Bugreport soll man systemd-shim deinistallieren können und das würde das Problem lösen. Allerdings lässt mich apt das Package nicht purgen, da es erst systemd upgraden will.
  17. Den QXcbConnection kann ich hier erzeugen wenn ich die DISPLAY Umbegungsvariable für das Programm nicht setzte. Hast du DISPLAY auf :0 gesetzt wie hier im Tutorial zu sehen?
  18. Dafür gibt es keine direkte API Funktion. Die API des RED Brick ist generischer gebaut. Du kannst grob gesagt auf dem RED Brick Dateien lesen/schreiben, Shell Befehle ausführen und User Programme definieren. Darauf basierend sind alle RED Brick Funktionen im Brick Viewer gebaut. Das führt dazu, dass die API schwieriger zu benutzen ist, im Gegenzug können wir aber einfach neue Funktionen zum Brick Viewer hinzufügen ohne dazu die API des RED Bricks erweitern zu müssen. Um die Uhrzeit zu setzen ruft Brick Viewer den date Befehl auf dem RED Brick mit passenden Parametern auf.
  19. Das Industrial Digital In 4 Bricklet ist für DC gedacht. Intern treibt die Eingangsspannung LEDs an. Daher haben die Eingänge auch eine Polung. Du kannst auch 36V AC einspeisen, dadurch geht das Bricklet nicht kaputt. Aber bedingt durch die LEDs kannst du nur die positive Halbwelle messen.
  20. MacDuff, ich hab das gerade mal getestet und dazu folgendes getan: - RED Brick mit Image Version 1.5 und Monitor per HDMI - "sudo apt-get install python3-pyqt5" auf dem RED Brick - entsprechend des Tutorials diese PyQt5 Beispiel hochgeladen - funktioniert
  21. MasT3r-A, dein Problem ist, dass position vom Typ char ist. Du musst also nicht mit 1 und 2, sondern mit '1' und '2' vergleichen musst.
  22. Du hast recht, eLurch. Ich habs in der Dokumentation abgeändert.
  23. Brick Viewer 2.2.2 Add service configuration tab to RED Brick plugin Add wireless access point tab to RED Brick plugin Add program import/export and system log export tab to RED Brick plugin Fix make buttons on RED Brick compile dialogs for C/C++ and Delphi/Lazarus Replace all PyQwt usage with custom code Fix maximum page number in NFC/RFID Bricklet plugin Downloads: Windows, Linux, Mac OS X
  24. Brick Viewer 2.2.2 Service Konfigurations Tab zu RED Brick Plugin hinzugefügt WLAN Access Point Tab zu RED Brick Plugin hinzugefügt Programm Import/Export und System Log Export Tab zu RED Brick Plugin hinzugefügt Make Buttons auf RED Brick Kompilier-Dialogen für C/C++ und Delphi/Lazarus funktionieren wieder PyQwt komplett durch eigenen Code ersetzt Maximale Page Nummer für NFC/RFID Bricklet Plugin korrigiert Downloads: Windows, Linux, Mac OS X
  25. Brick Daemon 2.2.1 Improve RED Brick hotplug detection and error handling on Windows Add debug filter to fine-tune debug output Wait for WebSocket handshake completion before sending data Use redapid version as RED Brick firmware version Don't send packet twice after partial write Downloads: Windows, Linux (amd64, i386, armhf), Mac OS X
×
×
  • Neu erstellen...