Seite 2 von 2

Re: CFW Anleitung #1: Die erste Anwendung ohne TXT am Window

Verfasst: 18 Apr 2017, 19:54
von PHabermehl
chehr hat geschrieben: Frage an MoG, ski777, oder Peter:
Gibt es eine Möglichkeit dass TouchStyle.py mit PyQt5 funktioniert, und wie?

Sonst sollte man das Tutorial 2 anpassen indem man explizit nennt das PyQt4 zu verwenden ist.

Ich habe nun zum gefühlten 100 mal (ich übertreibe ein wenig) Programmierumgebungen installiert und wieder deinstalliert, und immer noch läuft nicht alles auch weil ich noch andere Microcontoller habe. Deshalb würde ich gerne bei Qt5 bleiben falls möglich.
Hallo chehr,
Deine Frage ist absolut verständlich. Natürlich könnte man TouchStyle an PyQt5 anpassen. Das würde aber auch bedeuten, daß man entweder die community firmware ebenfalls auf PyQt5 umstellen muß, oder aber (mindestens) zwei Versionen des TouchUI pflegen muß...
Auch wenn ich nicht der Autor von TouchUI bin und auch nicht maßgeblich für die Entwicklung der cfw, wage ich mal zu sagen, daß es vorerst so bleibt, wie es gerade ist, und eine Anpassung des Tutorials (Techniker, liest Du mit?) wohl die sinnvollste Lösung ist.
Gruß
Peter

Re: CFW Anleitung #1: Die erste Anwendung ohne TXT am Window

Verfasst: 18 Apr 2017, 19:57
von ski7777
Wenn wir Qt5 nutzen wollen hat das viele Folgen:
  • TouchSytyle Anpassen
  • Alle Apps anpassen
  • Launcher anpassen
  • Wir brauchen einen Window Manager wie X11, denn Qt5 hat keinen QWS mehr
Raphael

Re: CFW Anleitung #1: Die erste Anwendung ohne TXT am Window

Verfasst: 18 Apr 2017, 21:01
von richard.kunze
Hallo zusammen,
chehr hat geschrieben:Gibt es eine Möglichkeit dass TouchStyle.py mit PyQt5 funktioniert, und wie?
Wie Peter und Raphael schon geschrieben haben: Nicht ohne weiteres, da sind Anpassungen "quer durch den Garten" nötig, und so dass es sowohl mit Qt4 als auch mit Qt5 funktioniert wird man das vermutlich nicht hinbekommen.

Trotzdem sollten wir das mittelfristig denke ich angehen - schon allein deswegen, weil Qt4/PyQt4 wohl auch nicht mehr ewig gepflegt werden wird...
ski7777 hat geschrieben:Wir brauchen einen Window Manager wie X11, denn Qt5 hat keinen QWS mehr
Das stimmt nur halb. Ja, Qt5 hat keinen QWS mehr, aber man kann es trotzdem noch direkt auf einem Framebuffer laufen lassen. Halt nur jeweils immer nur eine App gleichzeitig im Vordergrund - aber das passt ja auch zu unserem Anwendungsfall. Probleme sehe ich da höchstens dabei, dass sich eventuell der Launcher und die gerade laufende App um das Display streiten (hauptsächlich beim Anzeigen von Launcher-Messages) - aber das sollte sich auch irgendwie lösen lassen ohne sich gleich X11 oder Wayland ans Bein binden zu müssen.

Re: CFW Anleitung #1: Die erste Anwendung ohne TXT am Window

Verfasst: 19 Apr 2017, 13:58
von MasterOfGizmo
"damals" als wir mit der GUI begannen lief QT5 nicht so ohne weiteres auf Buildroot. Ich muss zugeben, dass ich nicht geschaut habe, ob sich daran was geändert hat.

Es ist tatsächlich die Frage, ob ein Wechsel auf Qt5 nicht auch eine CFW-GUI-V3 bedeutet. Es gibt in Qt5 echt coole neue Dinge wie QML- und QtQuick und eigentlich soll man diese Sachen unter Qt5 nutzen und nicht mehr die alten Widgets. Das ist allerdings sehr auf Wischgesten, Animationen etc ausgelegt. Beides geht auf dem TXT schlecht zum einen wegen des schlechten Touchscreens und zum anderen wegen der geringen Refreshrate des Bildschirms.

Ich würde sagen, dass wir auf absehbare Zeit bei Qt4 bleiben und Qt5 ist dann was für die nächste Gerätegeneration.

Re: CFW Anleitung #1: Die erste Anwendung ohne TXT am Window

Verfasst: 19 Apr 2017, 20:07
von chehr
Hallo Zusammen,
vielen Dank für die Infos. :) Nun habe ich Klarheit. Momentan geht kein Weg an PyQt4 vorbei...

Ich habe das Wiki diesbezüglich angepasst.

Nun mache ich mich an die Installation für PyQt4
Leider gibt es für PyQt4 unter Windows keine fertigen Binary mehr.

Für PyQt5 war die Installation einfach mit dem Shell Befehl:

Code: Alles auswählen

pip3 install PyQt5

Re: CFW Anleitung #1: Die erste Anwendung ohne TXT am Window

Verfasst: 20 Apr 2017, 15:37
von Grau
Halle,
nachdem die ersten Apps laufen, wollte ich aus dem Wiki Bereich "Tutorial #3: Controlling a model"
das Script "Running the app on a PC" https://github.com/ftCommunity/ftcommun ... ng-a-model mit dem lokalem Python auszuführen.
Ich habe die IP geändert

Code: Alles auswählen

if txt_ip == None: txt_ip = "localhost"              # use localhost otherwise
        try:
            self.txt=ftrobopy.ftrobopy('auto', special_connection='192.168.7.2')
            #self.txt = ftrobopy.ftrobopy(txt_ip, 65000)      # try to connect to IO server
        except:
            self.txt = None
Dann wird dieser Fehler angezeigt:

Code: Alles auswählen

Traceback (most recent call last):
  File "C:\Python34\app_tutorial_3\tut3.py", line 90, in <module>
    FtcGuiApplication(sys.argv)
  File "C:\Python34\app_tutorial_3\tut3.py", line 50, in __init__
    self.txt.setConfig(M, I)
  File "C:\Python34\lib\site-packages\ftrobopy\ftrobopy.py", line 468, in setConfig
    self._config_id += 1
AttributeError: 'ftrobopy' object has no attribute '_config_id'
Die Lib ftrobopy.py
Ist in:
C:\Python34\Lib\site-packages

Woran kann das liegen?
Auf dem TXT läuft es.

Gruß Grau

Re: CFW Anleitung #1: Die erste Anwendung ohne TXT am Window

Verfasst: 20 Apr 2017, 15:56
von ski7777
es muss aber ftrobopy.py heißen

Re: CFW Anleitung #1: Die erste Anwendung ohne TXT am Window

Verfasst: 20 Apr 2017, 16:00
von PHabermehl
ski7777 hat geschrieben:es muss aber ftrobopy.py heißen
Schau mal, im trace steht

Code: Alles auswählen

  File "C:\Python34\lib\site-packages\ftrobopy\ftrobopy.py", line 468, in setConfig
Es handelt sich also beim robopy.py nur um einen Tippfehler, im Code und mit dem Library-Namen selbst ist alles korrekt...

Re: CFW Anleitung #1: Die erste Anwendung ohne TXT am Window

Verfasst: 20 Apr 2017, 16:08
von Grau
Hallo,
deas war nur im Text ein Fehler, den ich jetzt geändert habe.
die Lib ftrobopy.py ist im Verzeichnis: C:\Python34\Lib\site-packages.
Gruß Grau

Re: CFW Anleitung #1: Die erste Anwendung ohne TXT am Window

Verfasst: 20 Apr 2017, 16:12
von ski7777
Dann musst du mal Torsten fragen. Am besten machst du mal ein Issue auf github auf.

Raphael

Re: CFW Anleitung #1: Die erste Anwendung ohne TXT am Window

Verfasst: 21 Apr 2017, 12:33
von Torsten
Hallo Grau,

Ich kann die Fehlermeldung, die Du bekommst, leider nicht nachvollziehen und benötige etwas genauere Informationen über die Python-Umgebung, die Du verwendest. Ich vermute, dass da irgendetwas nicht passt.

- welche Windows-Version und welche Python-Installation verwendest Du auf Deinem Rechner ?
- welche ftrobopy-Version hast Du in Dein C:\Python34\lib\site-packages Verzeichnis kopiert ?
(hast Du nur die Datei "ftrobopy.py" kopiert oder auch die __init__.py ?)
- sind Deine Environment Pfade richtig gesetzt (z.B. PYTHONPATH) ? (findet Dein Python-Paket die richtigen Libraries ?)
Grau hat geschrieben:

Code: Alles auswählen

  File "C:\Python34\lib\site-packages\ftrobopy\ftrobopy.py", line 468, in setConfig
    self._config_id += 1
AttributeError: 'ftrobopy' object has no attribute '_config_id'
Die Lib ftrobopy.py
Ist in:
C:\Python34\Lib\site-packages


Viele Grüße
Torsten

Re: CFW Anleitung #1: Die erste Anwendung ohne TXT am Window

Verfasst: 21 Apr 2017, 14:00
von Grau
Hallo Torsten,
hier die Infos:
Windows: 10
Python: 3.4
ftrobopy: 1.71
cfw: https://github.com/ftCommunity/ftcommun ... t-20170323
Ich habe das ganze Verzeichnis ftrobopy in site-packages kopiert
PYTHONPATH=C:\python34
Gruß Grau