Loetkolben Geschrieben April 9, 2014 at 14:07 Geschrieben April 9, 2014 at 14:07 Hallo Tinkerforgeteam, ich denke es kommen nun bald ueberarbeitete Werkzeuge und da haette ich die Bitte die Dropdown Liste mit den Hosts auf 10 zu erweitern. BTW: Vielleicht koennte man die Portangaben auch auf eine Dropdownliste mit 3 oder 5 Eintraegen umstellen? Oder man laesst die Portliste gleich ganz weg und kann mit ":" den Port in der Hostliste mit anfuegen. Danke. :-) Der Loetkolben Zitieren
borg Geschrieben April 9, 2014 at 14:19 Geschrieben April 9, 2014 at 14:19 Ich schreibe es mir mal auf, aber für die nächste brickv Version bist du zu spät, die liegt schon gebaut auf dem Server . Das große Release für den ganzen neuen JavaScript und Authentifizierungskram ist heute oder morgen, abhängig davon wie lange es heute noch dauert das alles vorzubereiten. Zitieren
photron Geschrieben April 11, 2014 at 12:19 Geschrieben April 11, 2014 at 12:19 Im git ist die Host-Liste jetzt 10 Einträge lang. Host und Port in einen Eintrag kann man damit argumentieren, dass der Port eine Host-spezifische Einstellung ist. Aber was macht man dann mit dem Secret und dessen Einstellungen? Zitieren
FlyingDoc Geschrieben April 11, 2014 at 12:42 Geschrieben April 11, 2014 at 12:42 Hostadresse und Port kann man ja so angeben. 192.168.2.10:587 und daneben oder darunter das Secret Feld das automatisch mit der gewählten Position im Adressfeld mitblättert. Alles ohne großen Aufwand machbar. Zitieren
photron Geschrieben April 11, 2014 at 13:04 Geschrieben April 11, 2014 at 13:04 Wenn das mitblättert was ist dann mit den 3 Checkboxen für Authentication? Blättern die auch mit, oder sind die dann wieder global? Und ganz so einfach ist das dann auch nicht, das erfordert, das GUI zu ändern, die interne Speicherlogik zu ändern, was ist mit Abwärtskompatibilität und Update von einer Version die das alte Speicherformat nutzt auf eine die das neue nutzt? Das muss alles bedacht werden. Außerdem denke ich das es von der Benutzung her komisch ist, wenn das Scret mitblättert. Dann müsste man doch eher ein ordentliche Host Add/Edit/Remove haben, das dann aber doch etwas übertrieben ist für den Zweck des Brick Viewers. Zitieren
Loetkolben Geschrieben April 11, 2014 at 13:38 Autor Geschrieben April 11, 2014 at 13:38 Hallo photron, ich wollte die Liste doch nur auf 10 erweitert haben. Da wusste ich doch nicht, dass die Authentication hinzukommt. :'( Mal ernsthaft: Deine Argumente sind schon richtig. Um einen Kompromiss vorzuschlagen wuerde ich einfach alle Paramter mitblaettern, da man zu den verschiedenen Stacks vielleicht auch verschiedenen Passwoerter hat. Wenn man verschiedene Stacks mit dem gleichen Passwort hat muss man das nur einmal eintragen und gut ist. Eine "Host Add/Edit/Remove" kostet viel Programmierzeit die woanders sinnvoller eingesetzt werden kann? Der Loetkolben Zitieren
photron Geschrieben April 11, 2014 at 13:50 Geschrieben April 11, 2014 at 13:50 Die Host-Liste ist jetzt 10 lang, das ist einfach zu ändern. Alles andere mitblättern zu lassen heißt auch dies jeweils 10 mal zu speichern. Dafür ist noch keine Logik da, dass muss erst gebaut werden, mal sehen wie aufwändig das ist. Zitieren
photron Geschrieben April 11, 2014 at 17:19 Geschrieben April 11, 2014 at 17:19 Okay, Ich hab jetzt eingebaut, dass "Port", "Use Authentication", "Secret" und "Remember Secret" per Host verwaltet und gespeichert werden. Ist im git. Zum Testen also einmal brickv aus den git Sourcen besorgen. Zitieren
Loetkolben Geschrieben April 12, 2014 at 01:53 Autor Geschrieben April 12, 2014 at 01:53 Danke photron! Zum Testen also einmal brickv aus den git Sourcen besorgen. Was auch immer damit gemeint ist, unter Windows komme ich damit nicht klar. Unter Debian muessten doch die Files direkt funktionieren? - Keine Hektik, in den naechsten 2 Tagen ist Dortmund angesagt. Der Loetkolben. Zitieren
photron Geschrieben April 14, 2014 at 08:31 Geschrieben April 14, 2014 at 08:31 Loetkolben, brickv ist reines Python. Wenn du ein Python und die Abhängigkeite für brickv installiert hast kannst du einfach den brickv direkt aus dem Source Code ausführen. Der Source Code liegt auf GitHub: https://github.com/Tinkerforge/brickv Von dort kannst du ihn mit dem git Tool abholen oder direkt als ZIP herunterladen. Okay, Ich hab jetzt eingebaut, dass "Port", "Use Authentication", "Secret" und "Remember Secret" per Host verwaltet und gespeichert werden. Ist im git. Zum Testen also einmal brickv aus den git Sourcen besorgen. Das sollte so interpretiert werden: Es ist eingebaut, wer es jetzt testen will, muss sich den aktuellen Source Code aus dem git besorgen, da ich mir die Arbeit sparen will für diese Testversion einmal alle Installer zu bauen Zitieren
Loetkolben Geschrieben April 14, 2014 at 09:41 Autor Geschrieben April 14, 2014 at 09:41 Hallo photron, danke fuer die Info, aber unter Windows? Das Zip File vom github enthaelt die *.py files die man unter Linux ins Verzeichnis kopieren kann und dann sollte das gehen. Aber wie bereits oben geschrieben verstehe ich die Vorgehensweise unter Windows nicht? Unter "C:\Programmme\Tinkerforge\Brickv" gibt es bei mir nur ein "main.exe" mit ca. 7MB und jede Mange *.pyd files. Das muss doch durch einen Compiler gelaufen sein? BTW: Ich brauche die neue Version NICHT dringend. Bitte deshalb keinen Aufwand machen, aber mich wuerde schon interessieren wie das mit Windows funktioniert. Der Loetkolben Zitieren
photron Geschrieben April 14, 2014 at 10:37 Geschrieben April 14, 2014 at 10:37 Unter Windows nutzen wir py2exe, damit kann man den Python Interpreter, die Python Scripte und die Bibliotheken in eine .exe Datei (plus .pyd Dateien) verpacken. Dann kann man das ganz normal an die Nutzer verteilen ohne das diese Python installiert haben müssten. py2exe ist also ein Art Python "Compiler" wenn du so willst. Wenn du jetzt die .py Dateien aus git unter Windows nutzen willst muss du dir erst Python installieren und die benötigten Bibliotheken (primär PyQt). Übrigens ist das unter Mac OS X ähnlich wie unter Windows, dort nutzen wir py2app, das im Prinzip das gleiche tut wie py2exe unter Windows. Zitieren
Loetkolben Geschrieben April 14, 2014 at 20:44 Autor Geschrieben April 14, 2014 at 20:44 Hallo photron, danke die Windowsinfo. Fuer Phyton bin ich wohl (auch) zu bloed. Der Rechner hat Debian und das normale brickv Paket installiert. Funktioniert wie es soll, aber nun ... Habe die Files aus dem Git besorgt und wenn ich das starten will kommt diese "lustige" Fehlermeldung. user:/$ python /opt/brickv/brickv-master/src/brickv-git/main.py Traceback (most recent call last): File "/opt/brickv/brickv-master/src/brickv-git/main.py", line 49, in <module> from brickv import config ImportError: No module named brickv Wenn ich nun das "/opt/brickv/brickv-master/src/brick-git/" Verzeichnis nach /usr/share/brick-git/ kopiere und dann aufrufe, startet die alte (aus dem Debian Paket installierte) Version aus dem Verzeiechnis /usr/share/brickv/. user:/$ python /usr/share/brickv-git/main.py #--> Altes, bereits installiertes brickv startet Sowowhl "/opt/brickv/brickv-master/src/brickv-git/" als auch "/usr/share/brickv-git" haben den gleichen Inhalt, aber das Verhalten ist anders jenachdem in welchem Verzeichnis man die "main.py" aufruft. Raff ich nicht. Wenn ich dann das original /usr/share/brickv wegloesche/wegbewege ist dann ganz Schluss. Wo bitte ist da was hardcodiert? Ich denke das hat weniger was mit Tinkerforge zu tun als mit python. Irgendwo muss ein "/usr/share/brickv/" fest drinstehen. Fuer Tips waere ich dankbar. Der Loetkolben Zitieren
photron Geschrieben April 15, 2014 at 08:39 Geschrieben April 15, 2014 at 08:39 Du machst da auch wieder Dinge die so nicht gedacht waren Du stolperst da über das Module/Package System von Python. In /usr/share/brickv/main.py bildet der brickv Teil den Namen des Packages in dem main.py und der restliche Code lebt. Genau dieser Packagename ist hier auch drin: from brickv import config Du hast aber den Code in brickv-git abgelegt, daher kann Python jetzt kein brickv finden, bzw. findet den Code in /usr/share/brickv. Ich habe gerade dafür noch einen Workaround eingebaut, mit dem dein brickv-git Verzeichnis jetzt auch funktionieren sollte. main.py schaut sich jetzt an in welchem Verzeichnis es liegt und versucht dann den Code entsprechend von dort zu importieren. Zitieren
Loetkolben Geschrieben April 15, 2014 at 15:59 Autor Geschrieben April 15, 2014 at 15:59 Hinweis/Edit: Habe diesen Beitrag neu geschrieben, da zwischenzeitlich viele Erkenntnisse hinzugekommen sind. ;-) Danke fuer die Unterstuetzung. Es geht jetzt, aber ich musste noch die "ui_*" erstellen. Dazu muss man in jedem Verzeichnis die "build_ui.py" ausfuehren. Kommt der folgende Fehler: $:/usr/share/brickv-git/plugin_system/plugins/dc$ ./build_ui.py sh: 1: pyuic4: not found Muss man noch das fehlende Programm "pyuic4" installieren: apt-get install pyqt4-dev-tools Ich jetzt nur noch rausbekommen wie man das am Anfang einmalig automatisch macht, damit man nicht in jedem Verzeichnis die dort eventuelle vorhandene "build_ui.py" einzeln aufrufen muss. Edit: Siehe einen Beitrag weiter unten. Auch wenn dieser QuickAddOn doppelt gemoppelt aussieht funktioniert er. [Connection] hosthistory2 = localhost hosthistory0 = 192.168.2.1 hosthistory1 = 192.168.2.2 host = 192.168.2.1 port = 4224 hosthistory3 = 192.168.2.2 hostinfo0 = 192.168.2.1|4224|0|0| hostinfo1 = 192.168.2.2|4223|1|0| hostinfo2 = 192.168.2.3|4223|0|0| hostinfo3 = localhost|4223|0|0| hostinfo4 = 192.168.2.4|4223|0|0| hostinfo5 = 192.168.2.5|4223|0|0| hosthistory4 = 192.168.2.3 [Authentication] useauthentication = False remembersecret = False secret = Danke nochmals! Edit: Zusatzfrage: Die aktuellesten/letzten Zugriffe in der Liste sind immer oben. Klingt eigentlich vernueftig, aber bei 8 Eintraegen koennte ich mir auch eine sortierte und damit feste Reihenfolge feststellen?!?! Schauen wir mal. Der Loetkolben Zitieren
photron Geschrieben April 15, 2014 at 16:53 Geschrieben April 15, 2014 at 16:53 Die ui_*.py Dateien werden durch das build_all_ui.py Script in /usr/share/brickv-git generiert. Sorry, hatte sich vergessen zu erwähnen. Für weitere Details die ich potentiell vergessen habe sei auf die readme.txt verweisen In der Config Datei siehst du die Entwicklung der Konfiguration. Erst gab es nur host und port, dann kam hosthistory<X> hinzu und die letzte Erweiterung ist hostinfo<X>. Die aktuelle Version schreibt alle diese Felder, um abwärtskompatibel zu sein und liest auch die alten Felder, wenn die neueren nicht da sind, um bei einem Versions-Update die Config Information nicht zu verlieren. Zitieren
Loetkolben Geschrieben April 15, 2014 at 17:40 Autor Geschrieben April 15, 2014 at 17:40 Die ui_*.py Dateien werden durch das build_all_ui.py Script in /usr/share/brickv-git generiert. Sorry, hatte sich vergessen zu erwähnen. Hallo photron. Das ist schon in Ordnung. Jetzt weiss ich wie es geht, aber leider stimmt es nicht so ganz, denn das Script liegt im Quellcodearchiv "ein Verzeichnis hoeher" und somit habe ich es nicht mit nach /usr/share/brickv-git rueberkopiert. Zitat readme.txtFirst you have to build the Qt .ui files, you can do this with python build_all_ui.py in src/brickv/ (note: you need pyuic4 for that). After that you should be able to start brickv from source with python main.py in the src/brickv/ directory. Das File "build_all_ui.py" liegt nicht unter src/brickv/ sondern unter src/. Soll heissen: Bevor man den brickv/ Baum umkopiert muss das Script gelaufen sein. Für weitere Details die ich potentiell vergessen habe sei auf die readme.txt verweisen Das stimmt natuerlich immer wieder, aber man muss erstmal erkennen was man daraus braucht und es dann auch noch verstehen. ... Der Loetkolben Zitieren
photron Geschrieben April 16, 2014 at 08:52 Geschrieben April 16, 2014 at 08:52 Hm, die Pfadangabe in der readme.txt ist veraltet. build_all_ui.py lag mal dort, wurde dann aber wegen Änderungen an der Module-Struktur nach src/ verschoben, ohne dabei die Dokumentation anzupassen. Die Dokumentation passt jetzt wieder, danke für den Hinweis. Zitieren
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.