PERSIST.TOOLS
PotatoPrint or, OctoPrint on the AML-S905X-CC (Le Potato) Purpose and motivation It's December 2022 and Raspberry Pis are still too expensive. Luckily we have the AML-S905X-CC (Le Potato). No prebuilt OctoPrint images exist for it, but we can get everything working smoothly with Armbian. Materials Steps
  1. download and flash the Armbian image to the micro SD. I went with Jammy CLI and it's worked fine
  2. insert the micro SD, connect your peripherals now if you don't plan to configure over ssh, power up and boot
  3. if configuring over ssh, authenticate as root using password 1234 for first-time setup
    • root ssh access is automatically disabled after this
  4. complete the default setup (shell selection, locale selection, user/pass, etc.)
  5. Exit root and login as the newly created user - OctoPrint doesn't support running as root
  6. run the armbian configuration utility to stand up anything else e.g., wireless networking
    • I strongly recommend enabling avahi (System menu) so you can use http://lepotato.local in your browser
    sudo armbian-config
  7. install python dependencies
  8. sudo apt install python3-venv python3-dev
  9. create and activate an octoprint virtual environment
  10. 
    python3 -m venv octoprint
    source octoprint/bin/activate
    	  
  11. install octoprint
  12. pip3 install octoprint
  13. create an octoprint service to automatically start the octoprint server on boot, at path:
  14. /etc/systemd/system/octoprint.service
    • with contents:
    
    [Unit]
    Description=octoprint service
    After=network.target
    
    [Service]
    Type=simple
    User=USERNAME
    ExecStart=/home/USERNAME/octoprint/bin/octoprint serve
    
    [Install]
    WantedBy=multi-user.target
    	  
    • replace USERNAME above with the account created during setup
  15. enable the service
  16. sudo systemctl enable octoprint.service
  17. connect the Potato to your printer and reboot
  18. navigate to your Potato in a browser. 5000 is the default port
  19. happy printing 😎