Touchscreen für Octoprint (Raspberry Pi)

In unseren Tutorials zum Raspberry Pi und Octoprint haben wir euch gezeigt wie ihr euren Drucker komfortabel ins Netzwerk bekommt und überwachen könnt. Nun setzen wir dem Ganzen die Krone auf, mit einem Touchscreen!

 

 

 

 

 

 

 

 

 

 

 

In den Tutorials hier: Raspberry + Octoprint + Webcam und hier Raspberry Pi Zero W und OctoPrint 0.14 haben wir euch bereits gezeigt wie ihr ganz komfortabel über das Netzwerk auf den Drucker zugreifen könnt.

Natürlich war das aber noch nicht alles. Denn es ist zusätzlich möglich, an den Raspberry Pi einen Touchscreen anzuschliessen um den Drucker damit zu steuern.

Ein anderes Display (das originale Druckerdisplay) ist somit vollkommen hinfällig!

 

Da der originale Raspberry Touchscreen zu klein ist, haben wir uns für einen 7″ Touchscreen mit USB/HDMI entschieden, erhältlich hier bei banggood.com:

Durch den Einsatz von HDMI und USB (USB dient hier als Stromquelle und Eingabegerätverbindung) ist es ein ziemliches Plug/Play.

bei banggood.com kaufen!

 

Vorraussetzungen:

– Display-Kit, siehe oben

– Gehäuse mit Ständer drucken, für eine aufrechte Position: https://www.thingiverse.com/thing:2500287

– HDMI Kabel und USB Kabel mit Micro B Stecker (für den Pi Zero ein HDMI Mini Stecker – wir haben das aber noch nicht getestet!)

Bitte tut euch den Gefallen und verwendet nicht die mitgelieferten Kabel, bei uns lief das ganze nie, bis wir nach zig neuen Versuchen die Kabel wechselte und bemerkten, es lag daran. BEIDE!!!

– Raspberry Pi 3  (1er oder 2 Version dürften wohl auch gehen, aber Aufgrund der Leistung haben wir den Pi 3 verwendet) mit Octoprint installiert.

Zum Raspberry Pi und Octoprint Tutorial: Raspberry + Octoprint + Webcam

 

 

Umsetzung:

Man nehme das aktuelle Octoprint Image und speichert es auf die SD Karte, wie hier beschrieben: Raspberry Pi Zero W und OctoPrint 0.14 (selbe Vorgehensweise bei einem normalen Raspberry Pi 3 oder niedriger)

Wenn Ihr jetzt auf die SD Karte zugreift, bevor ihr die in eurem Raspberry reinlegt, findet ihr eine config.txt. Diese öffnet ihr nun und Ändert folgendes:

Unter: „# uncomment to force a specific HDMI mode (here we are forcing 800×480!)“
löscht ihr die Angaben und tippt folgende rein:

 max_usb_current=1
 hdmi_group=2
 hdmi_mode=1
 hdmi_mode=87
 hdmi_cvt 1024 600 60 6 0 0 0

Eventuell noch Netzwerkeinstellungen tätigen, abspeichern und die Karte kommt nun in den Raspberry Pi rein.
Wenn das Display schon angesteckt ist, dürft ihr jetzt schon was sehen.

Die Installation wie üblich abarbeiten, so dass Octoprint läuft.
Im Pluginmanager bei den Einstellungen, unter MEHR, sucht Ihr nach dem TouchID Plugin und installiert es. Ein Neustart wird verlangt und auch durchgeführt.

Danach öffnet ihr eine Kommandozeile (z.B. Putty bei Windows) mit SSH und loggt euch ganz normal ein.
Nun wird alles auf den aktuellen Stand gebracht, indem ihr folgende Befehle eingebt:

sudo apt-get update
sudo apt-get upgrade

danach installiert ihr folgende Pakete, mit diesem Befehl:

sudo apt-get install --no-install-recommends xinit xinput xserver-xorg xserver-xorg-video-fbdev x11-xserver-utils matchbox unclutter chromium-browser

Den Touchscreen unter X11 registrieren:

sudo nano /usr/share/X11/xorg.conf.d/99-fbdev.conf

 

Für die HDMI und offizielle Touchscreen Version, gibt folgende Zeilen ein:

Section "Device"  Identifier "touchscreen"  Driver "fbdev"  Option "fbdev" "/dev/fb0"EndSection

 

Für die anderen Varianten:

Section "Device"  Identifier "touchscreen"  Driver "fbdev"  Option "fbdev" "/dev/fb1"EndSection

Speichern und Ende (strg+o,  Enter  und strg-x)

nun könnt ihr per

ls /dev | grep fb

Befehl überprüfen, ob es passt, nun müsste euer eingetragenes fb0 oder fb1 dastehen.

Sicherheitshalber gebt Ihr folgendes ein (bei uns kam eine Fehlermeldung, läuft auch so, aber sicher ist sicher und Ihr macht es mal)

sudo sed -i 's/allowed_users=console/allowed_users=anybody/' /etc/X11/Xwrapper.config

TouchID Autostart

git clone https://github.com/BillyBlaze/OctoPrint-TouchUI-autostart.git ~/TouchUI-autostart/

Dateien Kopieren und im Autostart registrieren:

sudo cp ~/TouchUI-autostart/touchui.init /etc/init.d/touchui
sudo chmod +x /etc/init.d/touchui
sudo cp ~/TouchUI-autostart/touchui.default /etc/default/touchui
sudo update-rc.d touchui defaults

Testen ob der Chromium Browser läuft:

chromium-browser

Dann sollte folgendes bzw. ähnliches angezeigt werden: /usr/bin/chromium-browser: line 138: lsb_release: command not found /usr/bin/chromium-browser: line 139: lsb_release: command not foundbootstrap_helper: /usr/lib/chromium-browser/nacl_helper: Cannot open ELF file!  errno=2[1:1:0605/122948.230046:ERROR:nacl_fork_delegate_linux.cc(315)] Bad NaCl helper startup ack (0 bytes)[3904:3904:0605/122948.236249:ERROR:browser_main_loop.cc(495)] Failed to put Xlib into threaded mode.[3904:3904:0605/122948.244840:ERROR:browser_main_loop.cc(272)] Gtk: cannot open display:

Es ist alles OK!

Falls nicht, kommt folgende Meldung:

/usr/lib/chromium-browser/chromium-browser: symbol lookup error: /usr/lib/chromium-browser/chromium-browser: undefined symbol: mmal_vc_init_fd

Dann müsst ihr den Kernel aktualisieren, Kurzanleitung steht unten.

Jetzt nur noch:

sudo reboot 

und er startet direkt ins TouchId und der Touchscreen funktioniert.
Das Hochfahren dauert jetzt ingesamt länger als ohne Touch, da ja der XServer gestartet wird, Octoprint hochfahren muss und sich alles verbindet.

 

*Kernel Update:

sudo apt-get upgrade
 sudo apt-get install rpi-updatesudo rpi-update
 sudo reboot

Wenn ihr jetzt die einzelnen Eingabezeilen per Copy&Paste nutzt, habt ihr die ganze Installation in kürzester Zeit erledigt, das längste ist die interne Aktualisierung am Anfang.

Vielen Dank an Alexander Gretz für dieses Tutorial!

 

Startseite Foren Touchscreen für Octoprint (Raspberry Pi)

Dieses Thema enthält 29 Antworten und 11 Teilnehmer. Es wurde zuletzt aktualisiert von  Tom vor 1 Tag, 1 Stunde.

Login Registrieren
  • Autor
    Beiträge
  • #2457 Antwort

    t0bse
    Keymaster

    In unseren Tutorials zum Raspberry Pi und Octoprint haben wir euch gezeigt wie ihr euren Drucker komfortabel ins Netzwerk bekommt und überwachen könnt. Nun setzen wir dem Ganzen die Krone auf, mit einem Touchscreen! In den Tutorials hier: Raspberry + Octoprint + Webcam und hier Raspberry Pi Zero W u…
    [zum Artikel: Touchscreen für Octoprint (Raspberry Pi)]………

  • #2460 Antwort

    der_be89
    Teilnehmer

    Klingt ja gut, aber was stell Ihr darauf dar? Könnt Ihr noch ein Paar UI-Fotos oder ein Video ergänzen?

    • #2471 Antwort

      t0bse
      Keymaster

      klar gerne, ich habe ein video dazugepackt 🙂

    • #2488 Antwort

      der_be89
      Teilnehmer

      Danke! Sieht wirklich gut aus. 🙂

       

      Geht das Display irgendwann schlafen oder muss man den Pi herunterfahren?

  • #2489 Antwort

    Bennji
    Teilnehmer

    Grüß euch!!

    Tolle Anleitung nur sind leider fehler endhalten und zwar in der zeile:

    Dateien Kopieren und im Autostart registrieren müsste so aussehen

    sudo cp ~/TouchUI-autostart/touchui.init /etc/init.d/touchui
    sudo chmod +x /etc/init.d/touchui
    sudo cp ~/TouchUI-autostart/touchui.default /etc/default/touchui
    sudo update-rc.d touchui defaults

     

    Habs dan über diese Anleitung gemacht: https://github.com/BillyBlaze/OctoPrint-TouchUI/wiki/Setup

    Und ja der Display geht nach einiger Zeit AUS

    Großes lob an euch toller Blog

     

     

     

    • #2494 Antwort

      t0bse
      Keymaster

      ist geändert, danke dir 🙂

  • #2708 Antwort

    Rissen01
    Teilnehmer

    Danke für die Anleitung 😉

    Ich habe sie nach bestem Gewissen befolgt, allerdings wird bei mir zwar alles richtig Angezeigt aber das Touchscreen (das von banggood.com) nimmt keine Touchbefehle an. Wenn ich meine Maus anschließe kann ich damit im Menü navigieren. Das HDMI- und USB- Kabel habe ich bereits ausgetauscht. Muss das evtl. ein besonders HDMI Kabel sein damit diese Signale übermittelt werden können?    … oder an welcher stelle könnte ich etwas falsch gemacht haben damit es zu diesem Fehler kommen kann?

    Ich würde mich sehr über Hilfe freuen.

    • #2729 Antwort

      Alexander G.

      Hallo Rissen,
      vielen Dank für dein Kommentar.
      Zur „Übersicht“: das HDMI Kabel überträgt rein das Displaysigna.
      Das USB Kabel überträgt den Betriebsstrom fürs Backlight und die Touchscreen Signale.

      Bei mir ging anfänglich das Touchscreen auch nicht.
      Nachdem ich ein sudo apt-get update  +  sudo apt-get upgrade
      Durchgeführt habe, ging es auf Anhieb.
      Da brauchen die Treiber wohl ein Update.

      Hast du mal ein lusb gemacht?
      Da müsste das Touchscreen ja angezeigt werden.
      Falls nicht- Treiber Problem oder USB Kabel
      Anfänglich hab ich die Installation auch paar mal Wiederholen müssen, weil
      ich jedes mal irgend ein Schritt vergessen hab… nicht verzweifeln!

  • #2727 Antwort

    Lumpi

    Danke für das Tutorial. Ich habe das Projekt mit einem 3,5″ Display von TonTec verwirklicht, welches nicht per HDMI sondern per GPIO angeschlossen ist.  Es lässt sich alles auf dem kleinen Display gut bedienen.

    Bei der Installation habe ich erst den Fehler gemacht und mir per „Sudo su“  Adminrechte geholt und TouchUI nach Anleitung in den Autostart gepackt. Wodurch die TouchUI Oberfläche beim Start von OctoPi nicht mit gestaltet wurde, da diese ja über den Benutzer Pi läuft.

  • #2962 Antwort

    Patro

    Hallo zusammen,

     

    Habe heute auch meinen Pi mit einem 3.5 zoll Display (GPIO ) versehen.  Ich musste ihn Kalibrieren, habe es wie hier beschreiben gemacht https://github.com/BillyBlaze/OctoPrint-TouchUI/wiki/Setup:-Troubleshooting#calibration

    nur leider ist immer meine Y Achse vertauscht egal ob ich, bedeutet ich drücke oben und screen erkennt es unten

    Option „InvertY“ „true“

    Option „InvertY“ „0“

    oder

    Option „InvertY“ „1“

    eingebe und mit der Eingabe Matrix ….. das check ich einfach nicht

     

    habe mein Display um 270 gedreht

    Section „InputClass“
    Identifier „calibration“
    MatchProduct „ADS7846 Touchscreen“
    Option „MinX“ „3379“
    Option „MaxX“ „62634“
    Option „MinY“ „62190“
    Option „MaxY“ „2935“
    Option „SwapXY“ „0“ # unless it was already set to 1
    Option „InvertX“ „0“ # unless it was already set
    Option „InvertY“ „true“ # unless it was already set

    EndSection

    evtl kann mir einer helfen

    • #2963 Antwort

      Patro

      konnte jetzt dank der Matrix mein Problem doch lösen

      xinput set-prop 6 „Coordinate Transformation Matrix“ 1.09588 0 -0.0565 0 -1.11 1.057 0 0 1

      warum aber mit /etc/X11/xorg.conf.d/99-calibration.conf nichts ging ist mir immer noch ein Rätsel

  • #3116 Antwort

    Peed
    Teilnehmer

    Super Anleitung.. habe einiges Probiert, nur das ist endlich mal etwas das klappt.. Nicht perfekt aber es klappt.

    Mein Display aus der Bucht hab ich nach dem tut eingebunden https://www.youtube.com/watch?v=pAS5lkdDNMo&list=PLq_vVSeT13FMbK7BFi1vsBFYQIgNDB2Zq

    Probleme hab ich nun nur mit der Webcam… auf der Weboberfläche am Pc klappt die, jedoch nicht auf dem Touchscreen.. jemand n plan?

    • #3217 Antwort

      Silvio

      Das WebCam-Problem kann ich bestätigen.
      Am PC klappt es mit diversen Browsern einwandfrei.

      Am Display komm leider die medlung „Webcamstream nicht geladen“
      Muss hier noch etwas zusätzlich konfiguriert werden ?

      Bin für jeden Tip sehr dankbar.

       

  • #3432 Antwort

    MichaTronik
    Teilnehmer

    Hi Leute,

    ich bin mittlerweile am verzweifeln.

    Bei mir hakt es an folgender Stelle.

    Sicherheitshalber gebt Ihr folgendes ein (bei uns kam eine Fehlermeldung, läuft auch so, aber sicher ist sicher und Ihr macht es mal)

    sudo sed -i ’s/allowed_users=console/allowed_users=anybody/‘ /etc/X11/Xwrapper.config

    es kommt dann immer

    sudo sed -i ’s/allowed_users=console/allowed_users=anybody/‘ /etc/X11/Xwrapper.config
    sed: can’t read /etc/X11/Xwrapper.config: No such file or directory

    Warum kann ich das nicht öffnen ?? Kann ja nicht einfach weg sein das file 😉

    Außerdem ist es auch egal ob ich in dem Schritt vorher die fb0 oder fb1 Version eintrage. Er zeigt mir immer fb0 an.

    Grüße,

    Micha

     

  • #3770 Antwort

    m2r
    Teilnehmer

    Hallo zusammen,

    ich habe mich auch einmal dem Thema angenonnem und habe auch OctoPrint und TouchUI zum laufen gebracht. Das Bild der WebCam bekomme ich auch ohne Problem. Nur läuft mein Touchscreen nicht! Kann die Eingaben nur über die Maus machen.

    Hat einer eine Idee was ich ändern bzw. testen muss. Habe schon etliche Einstellungen kontrolliert……weiß aber nicht wo mein Fehler liegt.

    Grüße m2r

  • #3805 Antwort

    m_attes
    Teilnehmer

    Hi Junkies!!

    Habe Octoprint mit dem TouchUI am laufen, leider kann ich über das Display nix auswählen, das „Touch“ klappt nicht… Wenn ich eine Maus an den Raspi anschließe, dann kann ich Funktionen anklicken, Menus öffnen. Hat einer von euch eine Idee?

    Grüße

    Mattes

    • #3806 Antwort

      m2r
      Teilnehmer

      Hi m_attes,

      habe das Problem zwischenzeitlich noch nicht lösen können. Habe auch schon verschiedene HDMI-Kabel verwendet aber bis jetzt ohne Erfolg.

      Bin ebenfalls für jede Idee oder Vorschlag, dankbar.

       

      Gruß m2r

  • #3928 Antwort

    Christoph

    Tolle Anleitung.. ich hatte fast schon aufgegeben das jemals ans laufen zu bekommen und mich damit abgefunden das Display als Consolen Ersatz zu verwenden…. DANKE! 🙂

  • #5335 Antwort

    BigMatze

    Funktioniert perfekt.

    Das Display geht auch bei nicht Benutzung nach einiger Zeit in den Schlafmodus, aber das Backlight bleibt an.

    Ist es auch möglich das das Backlight mit deaktiviert werden kann wenn das Display in den Schlafmodus geht? Es wird zwar nur handwarm aber warum riskieren das irgendwann das Backlight dadurch kaputt geht.

    Hab schon überlegt den Switch abzulöten und per mosfet zu schalten, aber wie kann ich das dann in den Pi einbinden, das beim Sleepmode auch der Pin geschaltet wird?

     

  • #5552 Antwort

    m2r
    Teilnehmer

    Hi,

    habe das oben geschriebene Problem in der Zwischenzeit lösen können. Nachdem ich erst einmal gefrustet, dass ich es nicht hin bekommen habe. Wurde das Problem erst einmal zur Seite geschoben und ich habe mich einem anderen Thema gewidmet – RetroPie.

    Nachdem ich mich erneut mit dem Thema Touchscreen auseinander gesetzt habe, konnte ich schließlich den Fehler finden und beseitigen. Das USB-Kabel zwischen PI und TC war nicht das richtige … habe mehrere vorhandene Kabel getestet und dann hat es auf einmal funktioniert :-).

    Was soll ich sagen, funktioniert einbandfrei und ist um so vieles einfacher …

    Ein Daumen hoch für die Tolle Umsetzung.

    Gruß m2r

  • #6121 Antwort

    JockelB

    Hallo

     

    bei mir funktioniert der Touchscreen. Leider ist keine Verbindung zum TouchUI Server. Es wird ca eine Minute versucht eine Verbindung herzustellen. Dann wird der die Schrift rot und es steht Connact failed to server unter TouhUI

    Google hat mir leider nicht geholfen. Kann mir hier jemand eine Hinweis geben?

     

    Danke

  • #6124 Antwort

    m2r
    Teilnehmer

    Hi,

    bei dem aktuellen Release von octopi 1.3.9 gibt es einen Bug (siehe Link).

    https://github.com/BillyBlaze/OctoPrint-TouchUI/issues/228

    Es hilft nur ein Downgrade auf die alte Version 1.3.8 – hat bei mir ohne Probleme funktionert.

     

  • #6228 Antwort

    Ronny

    We bekommt man es hin, das es so aussieht wie oben in dem Video ?

  • #6229 Antwort

    Ronny

    Habe es hinbekommen. Es ist das „TouchUI“ Plugin. 🙂

  • #6248 Antwort

    lumobra
    Teilnehmer

    Ich habe alles gemacht laut Anleitung, Kabel getauscht usw, aber bei mir wird leider kein Signal über HDMI ausgegeben. Bitte um Hilfe.

    Danke

  • #6516 Antwort

    Baerschen1
    Teilnehmer

    Soweit hat bei mir alles geklappt.
    Habe den Raspberry neu gestartet und das 7’Display läuft.
    Aber nun will er ein Login und Passwort von mir. Kann ich aber ohne Tastatur ja nicht eingeben.
    Was mach ich jetzt?

    Sorry für die vielleicht dumme Frage. Aber das Thema Raspberry ist völliges Neuland für mich.

     

  • #6517 Antwort

    m2r
    Teilnehmer

    Hi Bärschen1,
    funktioniert die eingebaute Onscreen Tastatur nicht? Tippe einfach mal in ein Feld, dann sollte die Tastatur erscheinen.

    Falls nicht, einfach eine USB Tastatur anschließen und die Daten eingeben.

    Die TouchUI wird aber schon geladen oder befindest Du Dich noch auf der Raspberry Standardoberfläche?

  • #6523 Antwort

    Baerschen1
    Teilnehmer

    Hi m2r,

    eine Onscreen Tastatur erscheint leider nicht. Egal wohin dich klicke.
    Der TouchUI wurde geladen und das Login ist vom Octoprint.

    Habe jetzt schon einiges versucht, um die Tastatur zu laden. Leider ohne Erfolg.
    Und klar, kann ich eine USB Tastatur dran hängen. Aber das ist ja nicht der Sinn von einem Touchdisplay.

    Echt komisch das. Bin doch genau nach Einkaufsliste und Install-Anleitung gegangen.

     

  • #6528 Antwort

    Baerschen1
    Teilnehmer

    Habe jetzt den Pi Zero W gegen einen B+ getauscht.
    Versuche gerade alles neu zu installieren. Jedoch bekomme ich es einfach nicht hin, den „fb1“ zu setzen.

    „Section „Device“  Identifier „touchscreen“  Driver „fbdev“  Option „fbdev“ „/dev/fb1″EndSection“

    Jedes mal beim prüfen mit „ls /dev | grep fb“ bekomme ich den fb0 angezeigt. Und das, obwohl „fb1“ eingetragen ist.

    Was mache ich den hier schon wieder falsch?

  • #6531 Antwort

    Tom

    Hallo,

    ich habe alles wie beschrieben gemacht und es ging anfangs auch.Konnte auf dem Display quasi den Drucker bedienen der aber nicht dran hing. Beim 2ten Versuch am Drucker selbst kam aber auf dem Screen die Meldung „No Signal“. Ich bin mir sicher dass ich nichts verändert habe und der Bildschirm ist auch i.O. habe ihn extra am PC getestet.

    Hat jemand Rat?

Login Registrieren
Antwort auf: Touchscreen für Octoprint (Raspberry Pi)
Deine Information: