UnchartedBull / OctoDash

OctoDash is a simple, but beautiful dashboard for OctoPrint.
https://unchartedbull.github.io/OctoDash/index.html
Apache License 2.0
1.02k stars 226 forks source link

Not working with OctoOi 1.0.0 #3559

Open ordor2k opened 1 year ago

ordor2k commented 1 year ago

Describe the bug A clear and concise description of what the bug is. New install of OctoPi 1.0.0 with OctoPrint 1.8.7 after apt update and upgrade, the installation finish successfuly but the app is not working. To Reproduce Steps to reproduce the behavior:

  1. get a new OctoPi installation with the Pi imager tool
  2. do "sudo apt update && sudo apt upgrade -y"
  3. try install with the script "bash <(wget -qO- https://github.com/UnchartedBull/OctoDash/raw/main/scripts/install.sh)"
  4. the installation finished successfully and after reboot there are few errors regarding x.org x server and more.

Expected behavior after the installation and a reboot the octodash screen should work

Screenshots https://photos.app.goo.gl/2CVK3LmChLJz4Zo58

General Information:

Additional context Add any other context about the problem here.

twinkie0101 commented 1 year ago

I just tried to install octodash and getting the same problem.

General Info:

After reboot same results from @ordor2k

Edit:

I've also tried all of the troubleshooting suggestions from here: https://github.com/UnchartedBull/OctoDash#troubleshooting

taclane commented 1 year ago

I just found myself stuck in this too. There can be an issue getting the correct architecture version of Octodash installed on the default Octopi image. Manually ssh-ing back into Octopi and installing the armv7l version after the script fails seems to work.

wget https://github.com/UnchartedBull/OctoDash/releases/download/v2.3.1/octodash_2.3.1_armv7l.deb
sudo dpkg -i octodash_2.3.1_armv7l.deb

Once that finishes, reboot the pi, and and the Octodash setup should continue. Ideally, Octopi 1.0 should be using the arm64 version, but if starting with a fresh 64-bit image isn't an option, the above should work too.

Edit: To clarify, this doesn't appear to be an X issue as described earlier, octodash just isn't installing due to compatibility issues.

Installing OctoDash v2.3.1, aarch64 ...
octodash.deb        100%[===================>]  71.88M  5.38MB/s    in 14s     
Selecting previously unselected package octodash:arm64.
(Reading database ... 61954 files and directories currently installed.)
Preparing to unpack octodash.deb ...
Unpacking octodash:arm64 (2.3.1) ...
dpkg: dependency problems prevent configuration of octodash:arm64:
 octodash:arm64 depends on libgtk-3-0.
 octodash:arm64 depends on libnotify4.
 octodash:arm64 depends on libnss3.
 octodash:arm64 depends on libxss1.
 octodash:arm64 depends on libxtst6.
 octodash:arm64 depends on libatspi2.0-0.
 octodash:arm64 depends on libuuid1.
 octodash:arm64 depends on libsecret-1-0.

dpkg: error processing package octodash:arm64 (--install):
 dependency problems - leaving unconfigured
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for desktop-file-utils (0.26-1) ...
Processing triggers for mailcap (3.69) ...
Errors were encountered while processing:
 octodash:arm64
jneilliii commented 1 year ago

Ideally, Octopi 1.0 should be using the arm64 version

Fairly confident that the OctoPi image from pi imager is still 32 bit. Did you install the 64 bit version?

taclane commented 1 year ago

It's a little slow going, but I'm double-checking the arm64-only version right now. Took a moment to even make sense of what was going on with the default version offered by the pi imager, because after some updates, it looked like it was using the 64bit.

Linux octopi 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr 3 17:24:16 BST 2023 aarch64

taclane commented 1 year ago

Fairly confident that the OctoPi image from pi imager is still 32 bit. Did you install the 64 bit version?

It seems like that was it. After just apt updating the OctoPi 1.0.0 image provided by the official tool, I think my Pi4 ended up with a mismatched set of arm64 and armhf files that prevented OctoDash from installing correctly.

No such issues after starting with the base arm64 image direct from the OctoPi repo. https://github.com/guysoft/OctoPi/releases

I can't be entirely certain that my issue was the same as the others above, but if they don't have a /usr/bin/octodash, it's probably worth switching over to the 64-bit image and trying again.

twinkie0101 commented 1 year ago

I'm out of town for the weekend but will try this when I get home to see if it solves the issue for me as well, thanks for digging in to this issue.

twinkie0101 commented 1 year ago

Just tried installing the base arm64 image from the repo and installed octodash with zero issues. Working as expected.

ordor2k commented 1 year ago

It could not install gir1.2-gnomekeyring

ordor2k commented 1 year ago

I was installing the octopi from the pi imager

jneilliii commented 1 year ago

It could not install gir1.2-gnomekeyring

Yeah, I don't think that's required anymore and the manual install instructions haven't been updated.

ordor2k commented 1 year ago

Just tried installing the base arm64 image from the repo and installed octodash with zero issues. Working as expected.

I did the same and now its working, but the touch screen isn't. Octodash on the old octopi was working with no issue.

twinkie0101 commented 1 year ago

@ordor2k do you have the official raspberry pi screen? If not, I believe you'll need to install the appropriate driver for the display.

ordor2k commented 1 year ago

I never had to before. Also I looked all over the internet, there is no such driver.

taclane commented 1 year ago

I never had to before. Also I looked all over the internet, there is no such driver.

The reverse is likely the issue: if this is with one of the Official Raspi Touchscreens, you may need to tell the pi to use the old fkms driver, not find something new.

Depending on how old your previous install was, that line may not have been present (or enabled) in the config.txt before. The kms driver can affect not just the display, but also the the touch input. In a lot of cases it's far more practical to just comment out that line and fall back on the old driver than spend the effort troubleshooting the new one.

taclane commented 1 year ago

Fairly confident that the OctoPi image from pi imager is still 32 bit. Did you install the 64 bit version?

To put some closure to this:

The updated firmware now prefers the 64-bit kernel on a Pi 4 because it should give better performance in most situations. To continue to boot to the 32-bit kernel, add arm_64bit=0 to config.txt.

https://github.com/raspberrypi/linux/issues/5402#issuecomment-1484676216

The Octopi 32-bit image used to work fine as of a little while ago, but after a recent change in raspbian, it's now pushing a 64-bit kernel on top of the 32-bit userspace, and that's breaking the octodash installer's ability to correctly figure out which .deb to use. https://github.com/UnchartedBull/OctoDash/blob/d2134ea873410146133e667596e705888c0a6126/scripts/install.sh#L671

ordor2k commented 1 year ago

I never had to before. Also I looked all over the internet, there is no such driver.

The reverse is likely the issue: if this is with one of the Official Raspi Touchscreens, you may need to tell the pi to use the old fkms driver, not find something new.

  • ssh in to the Octopi install
  • sudo nano /boot/config.txt
  • find
 # Enable DRM VC4 V3D driver
 dtoverlay=vc4-kms-v3d
  • comment out the second line
# Enable DRM VC4 V3D driver
#dtoverlay=vc4-kms-v3d
  • reboot

Depending on how old your previous install was, that line may not have been present (or enabled) in the config.txt before. The kms driver can affect not just the display, but also the the touch input. In a lot of cases it's far more practical to just comment out that line and fall back on the old driver than spend the effort troubleshooting the new one.

Working good now, THANKS!!!

taclane commented 1 year ago

Working good now, THANKS!!!

Great! An alternate option is to keep the new drivers but force it to load the overlay for 7-inch displays if it isn't detecting correctly:

# Enable DRM VC4 V3D driver
dtoverlay=vc4-kms-v3d
dtoverlay=vc4-kms-dsi-7inch

Though, with the new drivers the touchscreen doesn't feel as responsive with whatever hardware revision of raspi display I have, so I've personally had a better experience disabling kms altogether.

Extra-Fox commented 10 months ago
  • ssh in to the Octopi install
  • sudo nano /boot/config.txt
  • find
 # Enable DRM VC4 V3D driver
 dtoverlay=vc4-kms-v3d
  • comment out the second line
# Enable DRM VC4 V3D driver
#dtoverlay=vc4-kms-v3d
  • reboot

This was exactly what worked for me to get my Waveshare 5 inch DSI TFT display to work.

I just hope I remember this whenever I have to go reset this up.