ich habe auf meinem Raspberry Pi mit der IDE Pycharm eine GUI programmiert, die ich über ein Touchdisplay verwende. Das GUI Programm flasht dann eine in Micropython geschriebene main.py auf einen PICO, welcher eine LED Leiste ansteuert.
Code: Alles auswählen
self.p=QProcess()
self.p.setProgram("/usr/bin/python3.7")
self.p.setArguments(["/home/pi/.local/share/JetBrains/PyCharmCE2021.2/intellij-micropython/scripts/microupload.py",\
"-C", "/home/pi/PycharmProjects/LEDStripPico",\
"-v", "/dev/ttyACM0", "/home/pi/PycharmProjects/LEDStripPico/main.py"])
self.p.start()
Code: Alles auswählen
Connecting to /dev/ttyACM0
Uploading files: 0% (0/1)
/home/pi/PycharmProjects/LEDStripPico/main.py -> main.py
Uploading files: 100% (1/1)
Soft reboot
Ich wollte weg vom GPIO, weil ich die Leiste später in 1-2m Entfernung vom Pi steht und ein USB Kabel zur Verbindung plausibel erscheint.
Nur ist die PICO Lösung im Vergleich jetzt etwas langsamer (>1s statt ca 0.5s). Der Bottleneck scheint die Verbindung mit dem USB Device und der Upload zu sein.
Habt ihr Erfahrung damit, das Ganze zu beschleunigen? Gibt es hard-gecodete Wartezeiten von x Millisekunden beim Pico, die man umschreiben kann? Ich meine gelesen zu haben, dass diese manchmal eingerichtet werden um beim booten zu checken ob der button auf dem Microcontroller gedrückt wird.
Ist die Idee mit GUI + main.py flashen vielleicht nicht richtig zu Ende gedacht?