GithubHelp home page GithubHelp logo

nazzrim / mainsail-installer Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hevilp/mainsail-installer

0.0 1.0 0.0 53 KB

Automated install script for Klipper Mainsail and all dependencies

License: GNU General Public License v3.0

Shell 100.00%

mainsail-installer's Introduction

mainsail-installer

This is an install script to automate the Klipper, Klipper API, and Web Interface installation process on Raspbian.

Please read How to Install to get started.

What does this installer do?

The installer will give you the option to configure several common items from running sudo raspi-config: change password, change hostname, and configure timezone. Hostname and timezone do impact how the Web UI displays information.

You will be prompted to download a sample Voron config from Github for your printer's model if you don't already have a config. There is a sparse config as a backup to allow the Web UI to start.

The installer will install Klipper, the Klipper API, and the Web Interface.

The installer will automatically compile the MCU firmware for the controller you select. It will not attempt to flash the MCU. You can find the output firmware file at ~/klipper/out/klipper.bin.

The installer will provide the option to setup mjpg-streamer if you want to use a webcam. If selected, it will also configure the Web UI to display the camera feed.

How to Install

Note: You should backup your printer.cfg before running the installer. Please also consider installing on a clean SD card in case you choose to return to Octoprint or encounter installer issues.

Flash an SD card with the Raspbian Lite image from here.
Create a file named ssh (with no file extension) on the /boot partition to enable SSH.
Create a file called wpa_supplicant.conf on the /boot partition and add the contents to configure wireless access.
Place your printer.cfgon the /boot partition and the installer will move it to the home directory.

Sample wpa_supplicant.conf contents look like this:

country=US
update_config=1
ctrl_interface=/var/run/wpa_supplicant

network={
 scan_ssid=1
 ssid="<YOUR_WIRELESS_SSID>"
 psk="<YOUR_WIRELESS_PASSWORD>"
}  

Boot and SSH into your pi. Default credentials are pi/raspberry.

Run the following commands as the user you use to work with to download and launch the installer:

wget -q -O mainsail-install.zip https://github.com/ArmyAg08/mainsail-installer/archive/master.zip && unzip -j -d ~/mainsail-installer/ mainsail-install.zip && rm mainsail-install.zip
chmod +x ~/mainsail-installer/mainsail-install.sh
~/mainsail-installer/mainsail-install.sh

IMPORTANT: Please read all of the prompts carefully. There are many different configuration options to set and choose from.

Known Issues

  • There are not currently any default configs for V0 or V1. Wget will fail in these instances.

To Do List

  • Add MCU flashing
  • Add V0 and V1 printer.cfg links when available
  • Add SKR Mini E3 make menuconfig support

Thanks to tinpec for cleaning up the first pass of my ASCII art and Fulg for bypassing the manual make menuconfig in klipper and a few of the other Voron devs for helping me hack my way through this :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.