Coder Social home page Coder Social logo

freakydude / klipper-touch Goto Github PK

View Code? Open in Web Editor NEW
9.0 3.0 0.0 2.41 MB

Klipper-Touch is an alternative web-based UI for Klipper3d/Moonraker that focuses on small touch screens without keyboard or mouse.

HTML 0.34% JavaScript 1.12% Svelte 50.87% CSS 0.84% TypeScript 43.47% Shell 1.68% Dockerfile 0.96% Rust 0.72%
klipper klipper-display klipper3d touchscreen json-rpc2 moonraker svelte tailwindcss typescript 3d-printer

klipper-touch's Introduction

Klipper-Touch

Klipper-Touch is an alternative web-based UI for Klipper3d/Moonraker that focuses on small touch screens without keyboard or mouse.

This is currently nothing more than a personal experiment and a project to learn - even if it works.

Caution

First of all, and as always with my other posts and projects. I am not a company. I'm doing this in my spare time and mostly because I'm really excited about making these things work and improving them.

I have tested all this stuff only with my own printer and the constellation around it. I have done my best to make it all work without problems. However, this is a work in progress. There is no guarantee. Be careful, watch your printer, double check things. Use it as is. I am not responsible for any damage or consequences of any kind.

And yes, help and improve if you find something.

Some early screens

Connect Screen

Printing Screen

Print Done Screen

Temperature Screen

Prepare Bigtreetech CB1

  • Install Btt image with panfrost support. >= v 2.3.3

  • Update to debian bookworm

  • sudo nano /etc/apt/sources.list

    replace bullseye by bookworm, add non-free-firmware to all entries

    deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
    
    # deb-src <http://deb.debian.org/debian> bookworm main contrib non-free non-free-firmware
    
    deb < http://deb.debian.org/debian > bookworm-updates main contrib non-free non-free-firmware
    # deb-src <http://deb.debian.org/debian> bookworm-updates main contrib non-free non-free-firmware
    
    deb < http://deb.debian.org/debian > bookworm-backports main contrib non-free non-free-firmware
    # deb-src <http://deb.debian.org/debian> bookworm-backports main contrib non-free non-free-firmware
    
    deb < http://deb.debian.org/debian-security > bookworm-security main contrib non-free non-free-firmware
    # deb-src <http://deb.debian.org/debian-security> bookworm-security main contrib non-free non-free-firmware
  • Upgrade system from bullseye to bookworm

    sudo apt update
    sudo apt dist-upgrade
    sudo apt autoremove
  • Install xinit and input drivers sudo apt install xinit xf86-input-evdev

Install and run Klipper-Touch

  • Download it from https://github.com/freakydude/klipper-touch/releases

  • Install Klipper-Touch

    • Go to your manual downloaded package directory and run

      sudo apt install ./klipper-touch_0.1.0_arm64.deb
  • Configure your cors_domains in moonraker.conf to allow Klipper-Touch to access the moonraker apis

  • Run Klipper-Touch

    • exclusive: /usr/bin/startx /usr/bin/klipper-touch -- -nocursor or
    • in a window manager: /usr/bin/klipper-touch
  • Klipper-Touch listen on url: http://127.0.0.1/ and ws://127.0.0.1/websocket for a moonraker api connection.

    • To use another url, use the commandline parameters

      -h <Moonraker-HTTP-URL>  eg. `http://192.168.1.1/`
      -w <Moonraker-Websocket-URL>  eg. `ws://192.168.1.1/websocket`
      
    • To start in fullscreen mode

      -f
      

Development

Prequisities

Install dependencies on ArchLinux / WSL2 ArchLinux

  • Install docker and docker-compose

    pacman -S docker docker-compose
  • Install rust (if skipped before)

    pacman -S rustup
    rustup default stable

Run or Build project local

  • Install dependencies in the project root folder with

    npm install && npm install --save-dev @tauri-apps/cli
  • Run:

    npm run tauri dev
    npm run tauri dev -- -- -- -h http://<moonraker-ip> -w ws://<moonraker-ip>/websocket
  • Build:

    npm run tauri build

CrossCompile with docker

  • CrossCompile:

    pacman -S qemu-user-static docker-buildx
  • Build debian bullseye arm32v7 package (RPi 32 bit)

    docker compose up klipper-touch_build_arm32v7
  • Build debian bullseye arm64v8 package (RPi 64 bit)

    docker compose up klipper-touch_build_arm64v8

Final words

Feel free to create pull requests and discussions. I can't solve anything alone.

Have fun!

If you like, buy me a coffee

ko-fi

freakyDude

klipper-touch's People

Contributors

freakydude avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

klipper-touch's Issues

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.