Documentation updates
This commit is contained in:
parent
76820ea0a1
commit
00c77151da
45
README.md
45
README.md
@ -1,31 +1,42 @@
|
||||
# KlipperScreen
|
||||
KlipperScreen is an idea based from [OctoScreen](https://github.com/Z-Bolt/OctoScreen/), but instead of needing OctoPrint or to compile go, KlipperScreen is python based and interacts directly with Moonraker, Klipper's API service, so that it can be run with no dependencies besides Klipper.
|
||||
|
||||
Currently working features:
|
||||
- Homing
|
||||
- Preheating
|
||||
- Job Status and control
|
||||
- Temperature control
|
||||
- Extrude control
|
||||
- Fan control
|
||||
- Disable steppers
|
||||
- Configure Z Offset using PROBE_CALIBRATE
|
||||
|
||||
Working on:
|
||||
- Print tuning (Z Babystepping, Speed Control, Flow Control)
|
||||
- Better system panel
|
||||
- Wifi selection
|
||||
- Manual bed leveling assist
|
||||
- Using thumbnails from prusa on job status page
|
||||
Current feature list:
|
||||
- [x] Homing
|
||||
- [x] Preheating
|
||||
- [x] Job Status and control
|
||||
- [x] Temperature control
|
||||
- [x] Extrude control
|
||||
- [x] Fan control
|
||||
- [x] Disable steppers
|
||||
- [x] Configure Z Offset using PROBE_CALIBRATE
|
||||
- [ ] Print tuning (Z Babystepping, Speed Control, Flow Control)
|
||||
- [ ] Better system panel
|
||||
- [ ] Wifi selection
|
||||
- [ ] Manual bed leveling assist
|
||||
- [ ] Using thumbnails from prusa on job status page
|
||||
|
||||
|
||||
More details to come...
|
||||
|
||||
### Installation
|
||||
Follow the instructions to install klipper and moonraker.
|
||||
klipper: https://github.com/KevinOConnor/klipper/
|
||||
moonraker: https://github.com/Arksine/moonraker
|
||||
|
||||
Ensure that 127.0.0.1 is a trusted client for moonraker, such as in this example:
|
||||
```
|
||||
[authorization]
|
||||
trusted_clients:
|
||||
127.0.0.1
|
||||
```
|
||||
|
||||
For moonraker, ensure that 127.0.0.1 is a trusted client:
|
||||
|
||||
Run _scripts/KlipperScreen-install.sh_
|
||||
This script will install packages that are listed under manual install, create a
|
||||
python virtual environment at ${HOME}/.KlipperScreen-env and install a systemd
|
||||
service file.
|
||||
service file.
|
||||
|
||||
### Manual Installation
|
||||
```
|
||||
|
207
docs/Configuration.md
Normal file
207
docs/Configuration.md
Normal file
@ -0,0 +1,207 @@
|
||||
# Configuration
|
||||
|
||||
In the KlipperScreen folder, a file _KlipperScreen.config_ allows for configuration of the screen. The configuration
|
||||
file is a json formatted file. There are three main options to configure.
|
||||
```
|
||||
{
|
||||
"preheat_options",
|
||||
"mainmenu",
|
||||
"printmenu"
|
||||
}
|
||||
```
|
||||
|
||||
## Preheat Options
|
||||
Under preheat options, you may specify pre-defined temperatures for easy warmup. Each material should be formatted as
|
||||
follows:
|
||||
```
|
||||
"Material": {
|
||||
"tool": 195,
|
||||
"bed": 40
|
||||
}
|
||||
```
|
||||
Tool is the extruder temperature, bed is the heated bed temperature. An example configuration for PLA and abs would be
|
||||
like this:
|
||||
```
|
||||
"preheat_options": {
|
||||
"PLA": {
|
||||
"tool": 195,
|
||||
"bed": 40
|
||||
},
|
||||
"ABS":{
|
||||
"tool": 220,
|
||||
"bed": 90
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Main menu
|
||||
This allows a custom configuration for the menu displayed while the printer is idle. You can use sub-menus to group
|
||||
different items and there are several panel options available. It is possible to have a gcode script run on a menu
|
||||
button press.
|
||||
|
||||
Available panels:
|
||||
* bed_level: Manual bed level
|
||||
* extrude: Controls for extrusion
|
||||
* fan: Controls fan speed
|
||||
* finetune: Controls for fine-tuning print settings such as z-babystepping or extrustion rate
|
||||
* menu: Allows for a sub-menu
|
||||
* move: Controls the print head
|
||||
* network: Network information panel
|
||||
* preheat: Preheat bed/tools
|
||||
* system: System information panel
|
||||
* temperature: Controls temperature settings
|
||||
* zcalibrate: Calibrating a probe
|
||||
|
||||
A menu item is configured as follows:
|
||||
```
|
||||
{
|
||||
"name": "Name displayed",
|
||||
"icon": "file name from icons folder",
|
||||
"panel": "panel from above options",
|
||||
# Optional parameters
|
||||
"items": [] # Items for a submenu
|
||||
"method": "printer.gcode.script" # Moonraker method for a request
|
||||
"params": {} # Parameters for the moonraker method
|
||||
}
|
||||
```
|
||||
|
||||
A sample configuration of a main menu would be as follows:
|
||||
```
|
||||
"mainmenu": [
|
||||
{
|
||||
"name": "Homing",
|
||||
"icon": "home",
|
||||
"panel": "menu",
|
||||
"items": [
|
||||
{
|
||||
"name": "Home All",
|
||||
"icon": "home",
|
||||
"method": "printer.gcode.script",
|
||||
"params": {"script": "G28"}
|
||||
},
|
||||
{
|
||||
"name": "Home X",
|
||||
"icon": "home-x",
|
||||
"method": "printer.gcode.script",
|
||||
"params": {"script": "G28 X"}
|
||||
},
|
||||
{
|
||||
"name": "Home Y",
|
||||
"icon": "home-y",
|
||||
"method": "printer.gcode.script",
|
||||
"params": {"script": "G28 Y"}
|
||||
},
|
||||
{
|
||||
"name": "Home Z",
|
||||
"icon": "home-z",
|
||||
"method": "printer.gcode.script",
|
||||
"params": {"script": "G28 Z"}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Preheat",
|
||||
"icon": "heat-up",
|
||||
"panel": "preheat"
|
||||
},
|
||||
{
|
||||
"name": "Actions" ,
|
||||
"icon": "actions",
|
||||
"panel": "menu",
|
||||
"items": [
|
||||
{
|
||||
"name": "Move",
|
||||
"icon": "move",
|
||||
"panel": "move"
|
||||
},
|
||||
{
|
||||
"name": "Extrude",
|
||||
"icon": "filament",
|
||||
"panel": "extrude"
|
||||
},
|
||||
{
|
||||
"name": "Fan",
|
||||
"icon": "fan",
|
||||
"panel": "fan"
|
||||
},
|
||||
{
|
||||
"name": "Temperature",
|
||||
"icon": "heat-up",
|
||||
"panel": "temperature"
|
||||
},
|
||||
{
|
||||
"name": "Disable Motors",
|
||||
"icon": "motor-off",
|
||||
"method": "printer.gcode.script",
|
||||
"params": {"script": "M18"},
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Configuration",
|
||||
"icon": "control",
|
||||
"panel": "menu",
|
||||
"items": [
|
||||
{
|
||||
"name": "Bed Level",
|
||||
"icon": "bed-level",
|
||||
"panel": "bed_level"
|
||||
},
|
||||
{
|
||||
"name": "ZOffsets",
|
||||
"icon": "z-offset-increase",
|
||||
"panel": "zcalibrate"
|
||||
},
|
||||
{
|
||||
"name": "Network",
|
||||
"icon": "network",
|
||||
"panel": "network"
|
||||
},
|
||||
{
|
||||
"name": "System",
|
||||
"icon": "info",
|
||||
"panel": "system"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Print",
|
||||
"icon": "print",
|
||||
"panel": "print"
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
## Print menu
|
||||
The print menu controls items that are available during a print job. Certain panels, such as movement or homing, are
|
||||
panels that shouldn't be displayed during a print as they could cause print errors. A default configuration is below:
|
||||
|
||||
```
|
||||
"printmenu": [
|
||||
{
|
||||
"name": "Temperature",
|
||||
"icon": "heat-up",
|
||||
"panel": "temperature"
|
||||
},
|
||||
{
|
||||
"name": "Tuning",
|
||||
"icon": "fan",
|
||||
"panel": "finetune"
|
||||
},
|
||||
{
|
||||
"name": "Network",
|
||||
"icon": "network",
|
||||
"panel": "network"
|
||||
},
|
||||
{
|
||||
"name": "System",
|
||||
"icon": "info",
|
||||
"panel": "system"
|
||||
},
|
||||
{
|
||||
"name": "Extrude",
|
||||
"icon": "filament",
|
||||
"panel": "extrude"
|
||||
}
|
||||
]
|
||||
```
|
Loading…
x
Reference in New Issue
Block a user