OctoPi on full Raspberry Pi OS

Why do you only release OctoPi on a nobbled version of Raspberry Pi OS? There are lots of things to use a Pi for apart from 3D printing, and one is not 3D printing all of the time. I know you have published a (rather elaborate) procedure for installing OctoPi on the full OS, but really, wouldn't it be easier and better if you just released a full version and a nobbled version side by side, and let the user choose which one to use? Most of us are familiar with Raspberry Pi OS anyway.

2 Likes

I guess because it is open source.
Other project only release the source and you have to install it by yourself.

Btw there is no Raspberry Pi OS.

Also the Octopi is a full raspbian network install.

The vast majority of users only use their Pi for OctoPi, so if makes sense to cater for the majority here. The Raspberry Pi OS Lite image is a smaller download, less complex and uses less resources (it doesn't have the desktop stuff) - therefore saving these resources for OctoPrint (important on lower spec Pi's) or just saving energy.

As to why there is not a choice of both, well OctoPi is maintained by Guy in his spare time, adding another image introduces more work to maintain and support for the userbase not just by Guy but also for people who help out in the community. So it might be easier for you, but it is much more work for the people providing the images for a very small audience.

There is an 'install desktop' script on OctoPi that you could use to add the desktop easily to an OctoPi image if you wanted to.

This doesn't apply to a significant portion of OctoPrint's user base, who just flash the image and don't know what RPi OS is.

This is not true - Raspberry Pi OS is literally the name of the operating system that the Raspberry Pi foundation provides for use with their computers.

yeah that's true there is a "Raspberry Pi OS" my eyes read Raspberry Pi OS my brain thought octoprint Pi OS :man_facepalming:

I have other software running on the same raspberry where octopi is installed and they run great. Samba server and webmin, for example.

1 Like

There is a Raspberry Pi OS, formerly Raspbian Raspberry Pi OS – Raspberry Pi

Most people will use OctoPi because they don't know Linux that well. Those of us that know Linux, may chose to setup a normal Linux thing, be it a raspberry pi or something else and just put octoprint on it. It works well either way.

Just FYI...
I tried using Octoprint (not Octopi as originally stated) running on DietPi on a Raspberry Pi 3B (not a "+") to see if it would be more snappy than with the standard image.
The install wasn't too complex, just a few missing bits to add and I got everything running fine with a pretty smooth and snappy web interface, good 10 fps 1080 webcam and fairly low system ressource usage.
However on my third print it just stopped dead about 10 layers in, no error messages, no overheating, just hung.
I decided that it just wasn't worth the effort to find out what was wrong so I went back to Octopi on an RPi4. The RPi 3B will probably become a BirdnetPi thing.

How?
Did you build your own image based on the DietPi image?

There are DietPi images for all the Pis. I just started with that and then followed the manual installation instructions.

Ah I assume you meant you installed OctoPrint on DietPi.
OctoPi is the ready to use Pi image - OctoPrint is the actual server.

Sorry, my bad

I have an RPi 3B with OctoPi 0.18.0 and OctoPrint 1.8.6 controlling my LulzBot TAZ 6. I also have an RPi camera and a hat to control additional fans. I'm happy with the performance.

I would imagine the answer as to why it's a dedicated OS installation with a single application would be the same answer as for most other single applications.

  1. Easier for users to install, clean upgrade (new version), clean re-install (same version)- no command line necessary, also the user can use an existing system to image the SD - eg. Windows PC to install the SD Image - super easy

  2. Dedicated resources - Pi and OS resources are not being shared with other applications/background processes, for example can gaurantee UART is not going to be shared/locked by another process/user. This makes the system more robust, reactive and performant

  3. Easier to debug and root cause issues - system log less verbose/dmesg viewing is easier to parse - as only the processes of importance/interest are logged ie OS and application

  4. Easier to test - less variables, as the OS image creator has full control of everything except end user hardware - which is abstracted by driver/UART/Comms protocol anyway

So eaier to develop/create, easier to test, easier to install, easier to fix issues.

The downside of course is as you mentioned - its a waste of a complete Pi resource when not 3d printing. So bad for envinrnoment as people need to buy an extra pi for single task, frustrating as people cant buy a Pi at the moment etc. So I agree it would be better to have a dedicated installation for the above reasons and also a simplified installation for others - but this would mean a lot more time to release a new version - development time/test time/upgrade testing etc.

IMO - the best solution for those who dont print 24 hours a day is 2 SD cards - 1 OctoPi + 1 General OS, and for those that print 50% of time - dual boot.

2 Likes

OctoPi is a full OS, it is just the 'Lite' version of Raspberry Pi OS, so there is not a bunch of unnecessary apps or the desktop environment installed. You can still install everything on there yourself, I don't see a need to provide another image when it is really not hard to install anything extra that you would like.

2 Likes