Documentation updates
This commit is contained in:
40
README.md
40
README.md
@@ -21,42 +21,10 @@ Current feature list:
|
|||||||
More details to come...
|
More details to come...
|
||||||
|
|
||||||
### Required Hardware
|
### Required Hardware
|
||||||
KlipperScreen should run on any HDMI touchscreen that you can connect to a raspberry pi. The required video driver may
|
KlipperScreen should run on any HDMI touchscreen that you can connect to a computer. The required video driver may
|
||||||
be slightly different depending on what model you get. I am developing on a 1024x600 resolution screen. Due to this,
|
be slightly different depending on what model you get. I am developing on a 1024x600 resolution screen. Due to this,
|
||||||
other resolutions may not be scaled properly at this moment. UI scaling is a future development item.
|
other resolutions may not be scaled properly at this moment. UI scaling is a future development item.
|
||||||
|
|
||||||
#### Configure Hardware
|
### Links
|
||||||
|
[Installation](docs/Installation.md)
|
||||||
Add the following to _/boot/config.txt_. You can alter the hdmi_cvt to your screen specifications. This example is setup
|
[Configuration](docs/Configuration.md)
|
||||||
for a resolution of 1024x600 and a refresh rate of 60hz.
|
|
||||||
```
|
|
||||||
hdmi_cvt=1024 600 60 6 0 0 0
|
|
||||||
hdmi_group=2
|
|
||||||
hdmi_mode=87
|
|
||||||
hdmi_drive=2
|
|
||||||
```
|
|
||||||
* Development has been using 1024x600 for a screen resolution. Other resolutions may have issues currently
|
|
||||||
|
|
||||||
After changing _/boot/config.txt_ you must reboot your raspberry pi. Please also ensure you followed setting up your screen via the screen instructions. This will likely have a xorg.conf.d file for input from the touchscreen that you need to create.
|
|
||||||
|
|
||||||
### 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.
|
|
||||||
|
|
||||||
As an option to do development or interact with KlipperScreen from your computer, you may install tigervnc-scraping-server and VNC to your pi instance. Follow tigervnc server setup procedures for details on how to do that.
|
|
||||||
|
@@ -1,207 +1,59 @@
|
|||||||
# Configuration
|
# Configuration
|
||||||
|
|
||||||
In the KlipperScreen folder, a file _KlipperScreen.config_ allows for configuration of the screen. The configuration
|
In the KlipperScreen folder, a file _KlipperScreen.conf_ allows for configuration of the screen. This document will detail how to configure KlipperScreen. A default config is included here: [ks_includes/KlipperScreen.conf](ks_includes/KlipperScreen.conf)
|
||||||
file is a json formatted file. There are three main options to configure.
|
|
||||||
```
|
|
||||||
{
|
|
||||||
"preheat_options",
|
|
||||||
"mainmenu",
|
|
||||||
"printmenu"
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Preheat Options
|
## Preheat Options
|
||||||
Under preheat options, you may specify pre-defined temperatures for easy warmup. Each material should be formatted as
|
|
||||||
follows:
|
|
||||||
```
|
```
|
||||||
"Material": {
|
[preheat my_temp_setting]
|
||||||
"tool": 195,
|
# Temperature for the heated bed
|
||||||
"bed": 40
|
bed: 40
|
||||||
}
|
# Temperature for the tools
|
||||||
```
|
extruder: 195
|
||||||
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
|
## Menu
|
||||||
This allows a custom configuration for the menu displayed while the printer is idle. You can use sub-menus to group
|
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
|
different items and there are several panel options available. It is possible to have a gcode script run on a menu
|
||||||
button press.
|
button press. There are two menus available in KlipperScreen, __main and __print. The __main menu is displayed while the
|
||||||
|
printer is idle. The __print menu is accessible from the printing status page.
|
||||||
|
|
||||||
Available panels:
|
Available panels are listed here: [docs/panels.md](panels.md)
|
||||||
* 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:
|
A menu item is configured as follows:
|
||||||
```
|
```
|
||||||
{
|
[menu __main my_menu_item]
|
||||||
"name": "Name displayed",
|
# To build a sub-menu of this menu item, you would next use [menu __main my_menu_item sub_menu_item]
|
||||||
"icon": "file name from icons folder",
|
name: Item Name
|
||||||
"panel": "panel from above options",
|
icon: home
|
||||||
# Optional parameters
|
# Optional Parameters
|
||||||
"items": [] # Items for a submenu
|
# Panel from the panels listed below
|
||||||
"method": "printer.gcode.script" # Moonraker method for a request
|
panel: preheat
|
||||||
"params": {} # Parameters for the moonraker method
|
# Moonraker method to call when the item is selected
|
||||||
}
|
method: printer.gcode.script
|
||||||
|
# Parameters that would be passed with the method above
|
||||||
|
params: {"script":"G28 X"}
|
||||||
```
|
```
|
||||||
|
|
||||||
A sample configuration of a main menu would be as follows:
|
A sample configuration of a main menu would be as follows:
|
||||||
```
|
```
|
||||||
"mainmenu": [
|
[menu __main homing]
|
||||||
{
|
name: Homing
|
||||||
"name": "Homing",
|
icon: home
|
||||||
"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
|
[menu __main preheat]
|
||||||
The print menu controls items that are available during a print job. Certain panels, such as movement or homing, are
|
name: Preheat
|
||||||
panels that shouldn't be displayed during a print as they could cause print errors. A default configuration is below:
|
icon: heat-up
|
||||||
|
panel: preheat
|
||||||
|
|
||||||
```
|
[menu __main print]
|
||||||
"printmenu": [
|
name: Print
|
||||||
{
|
icon: print
|
||||||
"name": "Temperature",
|
panel: print
|
||||||
"icon": "heat-up",
|
|
||||||
"panel": "temperature"
|
[menu __main homing homeall]
|
||||||
},
|
name: Home All
|
||||||
{
|
icon: home
|
||||||
"name": "Tuning",
|
method: printer.gcode.script
|
||||||
"icon": "fan",
|
params: {"script":"G28"}
|
||||||
"panel": "finetune"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Network",
|
|
||||||
"icon": "network",
|
|
||||||
"panel": "network"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "System",
|
|
||||||
"icon": "info",
|
|
||||||
"panel": "system"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Extrude",
|
|
||||||
"icon": "filament",
|
|
||||||
"panel": "extrude"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
```
|
```
|
||||||
|
40
docs/Installation.md
Normal file
40
docs/Installation.md
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
### Required Hardware
|
||||||
|
KlipperScreen should run on any HDMI touchscreen that you can connect to a computer. The required video driver may
|
||||||
|
be slightly different depending on what model you get. I am developing on a 1024x600 resolution screen. Due to this,
|
||||||
|
other resolutions may not be scaled properly at this moment. UI scaling is a future development item.
|
||||||
|
|
||||||
|
#### Configure Hardware
|
||||||
|
|
||||||
|
Add the following to _/boot/config.txt_. You can alter the hdmi_cvt to your screen specifications. This example is setup
|
||||||
|
for a resolution of 1024x600 and a refresh rate of 60hz.
|
||||||
|
```
|
||||||
|
hdmi_cvt=1024 600 60 6 0 0 0
|
||||||
|
hdmi_group=2
|
||||||
|
hdmi_mode=87
|
||||||
|
hdmi_drive=2
|
||||||
|
```
|
||||||
|
* Development has been using 1024x600 for a screen resolution. Other resolutions may have issues currently
|
||||||
|
|
||||||
|
After changing _/boot/config.txt_ you must reboot your raspberry pi. Please also ensure you followed setting up your screen via the screen instructions. This will likely have a xorg.conf.d file for input from the touchscreen that you need to create.
|
||||||
|
|
||||||
|
### 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.
|
||||||
|
|
||||||
|
As an option to do development or interact with KlipperScreen from your computer, you may install tigervnc-scraping-server and VNC to your pi instance. Follow tigervnc server setup procedures for details on how to do that.
|
@@ -10,22 +10,22 @@
|
|||||||
* [Temperature](#temperature)
|
* [Temperature](#temperature)
|
||||||
|
|
||||||
### Main Menu
|
### Main Menu
|
||||||

|

|
||||||
|
|
||||||
### Bed Level
|
### Bed Level
|
||||||

|

|
||||||
|
|
||||||
### Extrude
|
### Extrude
|
||||||

|

|
||||||
|
|
||||||
### Fan
|
### Fan
|
||||||

|

|
||||||
|
|
||||||
### Move
|
### Move
|
||||||

|

|
||||||
|
|
||||||
### Preheat
|
### Preheat
|
||||||

|

|
||||||
|
|
||||||
### Temperature
|
### Temperature
|
||||||

|

|
||||||
|
Reference in New Issue
Block a user