Octodash
Basic OS
download and install the latest octoPi as in install_raspbian_on_f2fs_root
Display
get the display up and running:
sudo apt update sudo apt upgrade sudo apt install git git clone https://github.com/waveshare/LCD-show.git cd LCD-show/ sed -i 's/ext4/f2fs/' cmdline.txt chmod +x LCD35-show ./LCD35-show
this will reboot your raspberry and you should then see some output on your display
add screen calibration
sudo apt install xinput-calibrator
OctoDash
to install OctoDash, use the one-liner that they provide on their github page.. at the time of writing this, the command was:
bash <(wget -qO- https://github.com/UnchartedBull/OctoDash/raw/master/scripts/install.sh)
that'll do everything for you.
to make sure octodash can start upon bootig your raspberry, you need to enable autologin on the console. to do that, start the raspi-config
utility
sudo raspi-config
in there go to system options
–> S5 Boot / Auto Login
and choose the B2 Console Autologin
option
go back to the main menu. don't exit yet if you want to add VNC as well.
VNC
in order to remote-control your octodash screen, for example to set up some things or to debug something from remote, you can add VNC.. mind you, this isn't needed for octoprint to work or to be setup, but it may help if you need to debug something and you can't or don't want to connect a keyboard to the raspberry. I would recommend to disable VNC again as soon as you are done debugging whatever you had to debug. It is always a good idea to minimize remote-access to the necessary.
to install VNC, if you haven't already started the raspi-config
utility, start it now:
sudo raspi-config
now go to 3 Interface Options
–> VNC
to install and enable the vnc server.
now that this is done, you can exit raspi-config
if you are using another vnc viewer than realvnc, you might need to disable encryption as your viewer might not support that. do this only on your LAN, otherwise use a ssh tunnel or similar to protect your VNC session.
to disable encryption create a new file in /etc/vnc/config.d/common.custom
cat <<EOF | sudo tee /etc/vnc/config.d/common.custom Authentication=VncAuth Encryption=AlwaysOff EOF
now set the password you want to use for authenticating your session:
sudo vncpasswd -file /etc/vnc/config.d/common.custom
finally, restart the vnc service:
sudo systemctl restart vncserver-x11-serviced.service
you should now be able to login using your password.
before we forget it, let's go ahead and disable the vncserver service by default, so it won't be autostarted upon booting your raspberry but only on demand:
sudo systemctl disable vncserver-x11-serviced.service
if you want to use your vnc server in the future, start it manually via an ssh session:
sudo systemctl start vncserver-x11-serviced.service
and stop it once you're done
sudo systemctl stop vncserver-x11-serviced.service
Calibrate the screen
before we can setup octodash, we need to calibrate our touchscreen.
first, make sure there is a /etc/X11/xorg.conf.d
directory in place, simply run
sudo mkdir -p /etc/X11/xorg.conf.d
which will create it for you if it doesn't exist yet
in an ssh session, start the xinput calibrator:
export DISPLAY=:0.0 sudo xinput_calibrator --output-filename /etc/X11/xorg.conf.d/99-calibration.conf
for some reason, on my WaveShare 3.5 in display, the touch input was rotated 90° clockwise of what it should have been.. to solve this, i had to add the following line to the 99-calibration.conf
file.
Option "TransformationMatrix" "0 -1 1 1 0 0 0 0 1"
for more information, see the waveshare driver github page
sidenote: to get xinput you have to install it first using
sudo apt install xinput
also having xeyes really helps to debug touchscreen calibration:
sudo apt install x11-apps export DISPLAY=:0.0 xeyes
if they don't stare at your finger, your calibration is off :)
now reboot your raspberry and you should be able to go through the octodash setup using your touchscreen