Prusa Mk3s Pi3 control panel intergration.

As i will be adding a Pi3 and octopi to manage and control my machine i was trawling through Thingiverse i spotted this little beauty. Thought would save me space and can integrate with the Prusa machine i also have 3.5 TFT adafuit display kicking around my bedroom.

Got this remixed design from FlyByTom this version V7 with no end cap. i went with this design will completely integrate into the panel this will mean can plug into the pi3 for USB and network connections when. I will be using the jumper pins from the back of the TFT screen to the Rambo board this will power the pi and integrate it into the printer. The link for the design can be found here

Downloaded and jumped into Prusa Slicer followed the instructions and put it on the plate at an angle so it will fit.

ready to print.

i am going to print in PETG when i do the final print but for a test print i have some black PLA kicking around the cave so will do a test run. Then print in petg later as I have 3 rolls kicking around that i have been meaning to print with but that will be a final print later.

The test Print and fit:

6hrs it printed in came out not half bad there was tiny amount of lifting in one corner

The wiring of the PI3 into the Prusa Rambo board. This is going to be slightly different from the guide on Prusa’s web site as will be wiring from the front of the PCB. found someone who makes cables but unfortunately, they don’t ship to the UK so going to have to make one my self.

There are six wires need to link the machine to the pi bank of 4 and 2 are used. so from the Rambo PCB, you will use the following

Pins used on the Rambo board.
Connections like so from the Rambo PCB

so to make this as i had no 7 pin connecors i glued a 6 x2 connector and a 2 pin connector together to make it a 7 pin connector. used some breadboard to hold it all together whilst the super glue set.

nicely glued up. ready to solder the other end.
Rambo connector cable i made for linking to the pi3 plugin and play.

Now a direct link would be too easy as the TFT screen uses all 40 pins in connection there is a break out header shown in PCB diagram below but too tight to attach connector did try.

failed attempt as heads too long.
JP1 is the brake out connector. only interested in the first 16 pins.
pins used in the PCB pinout diagram.

as the pin headers are too big so going to have to solder to the pi 3 directly so ignore above brake out wiring will be same pin numbers on the back of the PCB board going to flux and add solder to the 6 pads on pins 4,6,8 and pins 15, 16. I ran out of time to tin wiring and solder and test on Tuesday.

What it looks like wired up.

building the system:

This was partly straight forward partly frustrating as not all guide work. heres here’s my simple version of the guide this guide is if you are Using Adafruit 3.5 TFT display

You will need to download the octoprint image from https://octoprint.org/download/

you will then need a program to burn it to your sd card i use etcher select image select sd card and write 20 mins later will have a working image

Put install screen to the raspberry pi add the SD card and network cable then power the pi will take a few mins to power up the screen will show just as white don’t panic.

scan local ip network for pi in my case showing on my network as 192.168.0.1 using a ssh client login to the system using user name pi and raspberry as password.

Time to install TFT screen drivers this will get the screen displaying correctly. in the ssh, terminal screen type the following.

  • cd ~
  • wget https://raw.githubusercontent.com/adafruit/Raspberry-Pi-Installer-Scripts/master/adafruit-pitft.sh
  • chmod +x adafruit-pitft.sh
  • sudo ./adafruit-pitft.sh

when installing the script you will get asked the following. what screen it is in my case option 4 3.5″ 480×320. you will also get asked if you want the screen to display consol. i said no and yes to HDMI port mirroring just in case i decide to use the HDMI port. You will then be prompted to reboot the machine say yes.

you will then need to relogin to the pi.

As octoprint image does not have graphical front end is web-based. We are going to first have to install the X desktop environment, then Touch-TFT and its requirements

  • sudo apt-get install libgtk-3-0
  • sudo apt install xserver-xorg xinit xserver-xorg-video-fbdev

Once X is installed, we can follow up with the installation of OctoPrint-TFT you will need to first of all download by using wget command.

  • wget https://github.com/mcuadros/OctoPrint-TFT/releases/download/v0.1.2/octoprint-tft_0.1.2-1.stretch_armhf.deb

You will then need to install the script.

  • sudo dpkg -i octoprint-tft_0.1.2-1.stretch_armhf.deb

You will need to set the graphics output.

  • sudo systemctl set-default graphical.target

We need to remove the 99-fbturbo.conf file from our Xorg directory. i tried this but didn’t find the file still works without it. so unsure.

  • sudo mv /usr/share/X11/xorg.conf.d/99-fbturbo.conf /usr/share/X11/xorg.conf.d/99-fbturbo.conf.old

Now on reboot OctoPrint-TFT should load and start attempting to connect

this was in the hose so no printer connected.

On reboot, you will see this screen until you plug it into the printer. you will then control screen as shown below. as i haven’t installed my link plug into the Rambo yet this was just to do a test to make sure all was working.

testing the server works. need to mess with the style sheets

now to configure the web interface of octopi.

Open web browser goto IP address or octop.local you will be greeted with a wizard so set user name and password and enable security. name profile of printer and set bed sizes in my case 250mm x 210mm x 210mm i also adjusted temperatures to match my Prusa printer in the configurations folder.

i will be adding plugins but will cover that in another post.

i will finish off this project on my return to London as got a 208-mile drive down to Wales for a weekend of getting holiday rental ready for first guests.

so will plug everything in on Tuesday.

This site uses Akismet to reduce spam. Learn how your comment data is processed.