📘 It is recommended to perform the installation in the order listed below.
Download the OS image: https://github.com/bigtreetech/CB1/releases (Choose CB1_Debian11_minimal )
Use Balena Etcher to burn the image onto the PI SD Card.
Video: BTT Pi Overview & Installation Guide
WIFI configuration:
- Re-insert the SD card into your computer, open the BOOT drive and add your Wi-Fi credentials to system.cfg
Read the following guide to install the MainsailOS https://docs-os.mainsail.xyz/getting-started/raspberry-pi-os-based
WIFI configuration:
- Set up your WIFI connection in the Raspberry Pi Imager before burning the image.
- Re-insert the SD card into your computer, open the BOOT drive and add your Wi-Fi credentials to mainsailos-wpa-supplicant.txt
To communicate with your Host you will need a SSH and an SFTP client
The easiest way is to install MobaXterm which provides both of these functions.
If you pre-configured your SSID and WIFI Password correctly, or if you connect though a ethernet cable, you can try the following ways to find your Klipper IP address:
A. Open your your ROUTER dashboard and look at the device list
B. Open command prompt and run : ping mainsailos.local -4
(Rraspberry Pi)
C. Install and run Angry IP Scanner
KIAUH is a rich featured script that makes it extremely easy to perform any Klipper related software installation, setup and firmware flashing starting from a bare OS.
This should be the first thing to install after finishing your OS installation.
https://github.com/dw-0/kiauh/tree/master
KIAUH installation:
- Install KIAUH
sudo apt-get install git -y
cd ~ && git clone https://github.com/dw-0/kiauh.git
-
Run KIAUH and select mode 4 (No)
~/kiauh/kiauh.sh
From KIAUH install:
- Klipper (Python 3.x)
- Moonraker
- Mainsail
💡 The firmware setup process can be easily done directly from KIAUH
Follow the steps starting from "Build your own firmware" and make sure to choose the appropriate settings for your own MCU type (The BOM recommendation is the Octopus Pro V1.1 with the H723 chip)
These are also mentioned in the header of printer.cfg file above.
For the FYSETC board included in the LH Stinger kits please follow the following firmware flashing guide:
https://github.com/lhndo/LH-Stinger/wiki/FYSETC-S3-H7-Firmware-Guide
To set up the required Klipper LH Stinger configuration files please follow these steps:
- Download the configuration files onto the Raspberry/BTT Pi by running the following commands though SSH
rm -rf ~/lhs && git clone --filter=blob:none --sparse https://github.com/lhndo/LH-Stinger.git ~/lhs && cd ~/lhs
git sparse-checkout init --cone
git sparse-checkout set Config/Mainsail_Theme/
git sparse-checkout add Config/Klipper_Config/
git sparse-checkout add KITS/FYSETC/Klipper_Config_FYSETC/
cp -r ~/printer_data/config/ ~/printer_data/config/backup/
mkdir -p ~/printer_data/config/.theme
cp -r ~/lhs/Config/Mainsail_Theme/* ~/printer_data/config/.theme/
- Copy the configuration files to their correct location with the following commands:
🔷 Option A : LH Stinger BOM Build - BTT Octopus Pro v1.2
cp -r ~/lhs/Config/Klipper_Config/* ~/printer_data/config/
🔶 Option B : FYSETC - LH Stinger - Spider H7
cp -r ~/lhs/KITS/FYSETC/Klipper_Config_FYSETC/* ~/printer_data/config/
For more information please consult:
Klipper Configuration Reference
Ebox Guide
Breakout Guide
FYSETC Kit Guide
🚸 The following modules are required for the LH Stinger setup
Before installing the modules below, make sure that your klipper installation is up to date.
The XZ Dockable Probe module incorporates some unique homing features and is required for the QuickDraw probe.
The following commands in the SSH console will install the module:
cd ~/klipper/klippy/extras/
wget https://raw.githubusercontent.com/lhndo/klipper/red/klippy/extras/xz_dockable_probe.py
cd ../..
echo "klippy/extras/xz_dockable_probe.py" >> .git/info/exclude
git update-index --assume-unchanged klippy/extras/xz_dockable_probe.py > /dev/null 2>&1
systemctl restart klipper
ResHelper is an utility script that simplifies and streamlines the resonance testing process.
Follow the installation steps from the following link or the code commands below.
https://github.com/lhndo/ResHelper
Installation:
cd ~ && git clone https://github.com/lhndo/ResHelper.git
cd ResHelper
./install.sh
For debugging resonance peaks
cd ~/klipper/klippy/extras/
wget https://raw.githubusercontent.com/lhndo/danger-klipper/bleeding-edge-v2/klippy/plugins/resonance_holder.py
cd ../..
echo "klippy/extras/resonance_holder.py" >> .git/info/exclude
git update-index --assume-unchanged klippy/extras/resonance_holder.py > /dev/null 2>&1
systemctl restart klipper
Usage: Uncomment [resonance_holder] in printer.cfg and use the VIBRATION TEST macro for testing.
If using a Power Relay to control the AC supply to the Ebox, then add the following section to your moonraker.conf .
Note: The PI should be on its own independent power supply.
[power Printer]
type: gpio
pin: gpiochip0/gpio262
off_when_shutdown: True
initial_state: off
restart_klipper_when_powered: True
- BTT Pi 1.2 connect though SSH, run the following commands and restart the Pi:
sudo sh -c 'echo "# udev rules for gpio port access through libgpiod
SUBSYSTEM==\"gpio\", KERNEL==\"gpiochip[0-4]\", GROUP=\"biqu\", MODE=\"0660\"" > /etc/udev/rules.d/60-gpiod.rules'
sudo udevadm control --reload-rules
sudo udevadm trigger
For more information on the BTT Pi GPIO pinout please consult this table: https://github.com/bigtreetech/CB1#40-pin-gpio
The printer supports multiple bed sizes. For ease of use, the bed position is defined in the slicer by changing the Origin Offsets, and not in Klipper's printer.cfg by changing position_endstop and position_min for X/Y axis.
Move the nozzle manually to the front left corner of the bed, and note the position, eg. X18 Y38.
Add those values in the Origin section as negative values.
If not using the provided LH Stinger- Orca Profiles, then set the following G-code in Printer section:
Machine Start G-Code:
PRINT_START_LHS BED=[bed_temperature_initial_layer_single] HOTEND=[nozzle_temperature_initial_layer] AUTOMESH=1 AUTOPURGE=1 QUIETMODE={if print_preset =~ /.*Quiet.*/ }1{else}0{endif}
Machine End G-Code:
PRINT_END
In Printer Settings > Custom G-Code set:
Start G-Code:
PRINT_START_LHS BED=[first_layer_bed_temperature] HOTEND=[first_layer_temperature[initial_extruder]] AUTOMESH=1 AUTOPURGE=1 QUIETMODE=0
End G-Code:
PRINT_END
For support please join the LH Stinger Discord, or the Klipper Discord