6 Commits
0.0 ... v1.0

Author SHA1 Message Date
suchmememanyskill
fb65bc8068 Readme 2023-11-13 17:41:16 +01:00
suchmememanyskill
c0651a50a7 Initial release 2023-11-13 17:07:54 +01:00
suchmememanyskill
e04e3204eb Try 5 2023-11-13 16:37:54 +01:00
suchmememanyskill
ecc9e5ea99 Try 4 2023-11-13 16:30:12 +01:00
suchmememanyskill
ed024077ee Try 3 2023-11-13 16:24:54 +01:00
suchmememanyskill
91db5036c0 Try 2 2023-11-13 16:20:42 +01:00
46 changed files with 148 additions and 13 deletions

View File

@@ -1,5 +1,9 @@
name: PlatformIO CI name: PlatformIO CI
permissions:
pages: write
id-token: write
on: [push, pull_request] on: [push, pull_request]
jobs: jobs:
@@ -24,22 +28,44 @@ jobs:
- name: Build PlatformIO Project - name: Build PlatformIO Project
run: | run: |
cd CYD-Klipper-Display cd CYD-Klipper
pio run pio run
- name: Make output dir - name: Make output dir
run: mkdir -p output run: |
mkdir -p output
- name: Build Binary - name: Build Binary
run: | run: |
cp ./CYD-Klipper-Display/.pio/build/esp32dev/bootloader.bin output cp ./CYD-Klipper/.pio/build/esp32dev/bootloader.bin output
cp ./CYD-Klipper-Display/.pio/build/esp32dev/partitions.bin output cp ./CYD-Klipper/.pio/build/esp32dev/partitions.bin output
cp ./CYD-Klipper-Display/.pio/build/esp32dev/firmware.bin output cp ./CYD-Klipper/.pio/build/esp32dev/firmware.bin output
cp ~/platformio/packages/framework-arduinoespressif32/tools/partitions/boot_app0.bin output cp ~/.platformio/packages/framework-arduinoespressif32/tools/partitions/boot_app0.bin output
esptool --chip esp32 merge_bin -o ./output/merged-firmware.bin --flash_mode dio --flash_freq 40m --flash_size 4MB 0x1000 ./output/bootloader.bin 0x8000 ./output/partitions.bin 0xe000 ./output/boot_app0.bin 0x10000 ./output/firmware.bin python3 -m esptool --chip esp32 merge_bin -o ./output/merged-firmware.bin --flash_mode dio --flash_freq 40m --flash_size 4MB 0x1000 ./output/bootloader.bin 0x8000 ./output/partitions.bin 0xe000 ./output/boot_app0.bin 0x10000 ./output/firmware.bin
cp -r ./output ./_site
- name: Upload artefact
- name: Upload artifact
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: firmware name: firmware
path: ./output path: ./output
- name: Upload GitHub Page Artifact
uses: actions/upload-pages-artifact@v2
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
steps:
- name: Print GitHub event name
run: |
echo "${{ github.event_name }}"
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2

View File

@@ -1,3 +1,3 @@
cmake_minimum_required(VERSION 3.16.0) cmake_minimum_required(VERSION 3.16.0)
include($ENV{IDF_PATH}/tools/cmake/project.cmake) include($ENV{IDF_PATH}/tools/cmake/project.cmake)
project(CYD-Klipper-Display) project(CYD-Klipper)

View File

@@ -1,3 +1,43 @@
# CYD-Klipper-Display ![GitHub release (with filter)](https://img.shields.io/github/v/release/suchmememanyskill/CYD-Klipper)
[![Donations](https://img.shields.io/badge/Support%20on-Ko--Fi-red)](https://ko-fi.com/suchmememanyskill)
WIP! # CYD-Klipper
An implementation of a Klipper status display on an ESP32 + screen. Uses Moonraker to fetch data.
A simple and cheap solution to use a dedicated screen with Klipper, a 3d printing Firmware.
![showcase_image](readme/PXL_20231113_171629383.jpg)
### Required hardware
A ESP32-2432S028R is required to run this project. You can find out where to buy these on the ["ESP32 Cheap Yellow Display"](https://github.com/witnessmenow/ESP32-Cheap-Yellow-Display#where-to-buy) repository.
### Features
- View printer status
- View print progress
- Start a print
- Move the printer
- Manage temperature
- Extrude/Retract filament
### Install
[There is a web-based installer available. This is only supported on Chrome, Edge or Opera, and only on Desktop.](https://suchmememanyskill.github.io/CYD-Klipper/)
On initial install, all data should be wiped. On updates, data should be able to be kept without issues.
There are no 'over the air' updates. Each update has to be applied manually.
### Screenshots
(Quite literally shots of the screen. I'm sorry)
-|-
:-:|:-:
![1](readme/PXL_20231113_142717308.jpg)|![2](readme/PXL_20231113_171701876.jpg)
![3](readme/PXL_20231113_171715809.jpg)|![4](readme/PXL_20231113_171724404.jpg)
![5](readme/PXL_20231113_171751745.jpg)|![6](readme/PXL_20231113_171809315.jpg)
### Credits
- [xtouch](https://github.com/xperiments-in/xtouch)
- [ESP32-Cheap-Yellow-Display](https://github.com/witnessmenow/ESP32-Cheap-Yellow-Display)

32
_site/index.html Normal file
View File

@@ -0,0 +1,32 @@
<!DOCTYPE html>
<head>
<style>
@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');
* {
font-family: 'Roboto', sans-serif;
}
.main {
width: fit-content;
margin: auto;
}
</style>
<script type="module" src="https://unpkg.com/esp-web-tools@9/dist/web/install-button.js?module"></script>
</head>
<body>
<section class="main">
<h2>CYD-Klipper</h2>
<p>An implementation of a Klipper status display on an ESP32 + screen.<br>Uses Moonraker to fetch data.</p>
<img alt="GitHub release (with filter)" src="https://img.shields.io/github/v/release/suchmememanyskill/CYD-Klipper">
<a href="https://github.com/suchmememanyskill/CYD-Klipper"><img alt="GitHub repo" src="https://img.shields.io/badge/Source-Github-blue.svg"></a>
<section class="install">
<h3>Install</h3>
<p>Note: You may need to hold the 'BOOT' button on the device while pressing install</p>
<esp-web-install-button
manifest="https://suchmememanyskill.github.io/CYD-Klipper/manifest.json"></esp-web-install-button>
</section>
</section>
</body>

27
_site/manifest.json Normal file
View File

@@ -0,0 +1,27 @@
{
"name": "CYD-Klipper",
"new_install_prompt_erase": true,
"builds": [
{
"chipFamily": "ESP32",
"parts": [
{
"path": "output/bootloader.bin",
"offset": 4096
},
{
"path": "output/partitions.bin",
"offset": 32768
},
{
"path": "output/boot_app0.bin",
"offset": 57344
},
{
"path": "output/firmware.bin",
"offset": 65536
}
]
}
]
}

10
_site/manifest_wipe.json Normal file
View File

@@ -0,0 +1,10 @@
{
"name": "CYD-Klipper",
"new_install_prompt_erase": false,
"builds": [
{
"path": "output/merged-firmware.bin",
"offset": 0
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 335 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 533 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 890 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 552 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 911 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB