Giter VIP home page Giter VIP logo

ricktm / easel-driver Goto Github PK

View Code? Open in Web Editor NEW

This project forked from samyk/easel-driver

1.0 0.0 0.0 22.26 MB

update to samyk's Easel driver for Linux, Mac, Windows, ARM, Raspberry Pi, Intel. adds esp32 serial communication support for the CP210x driver, in addition to FTDI, CH340, CH341, FTDI clones, local, and remote access to GRBL-based CNC controllers

Shell 100.00%
cnc easel esp32 esp32-wroom fluidnc

easel-driver's Introduction

easel-driver w/FluidNC support

Note: This fork adds support for FluidNC grbl controllers. For this, modifications are necessary in both FluidNC's config easel's driver. For more information on modifying FluidNC's config, click here (link to come).


UNOFFICIAL Easel driver for Linux, Mac, Windows, Raspberry Pi (x86/x86-64/ARM) + ability to run Easel from a remote computer (providing remote access to CNC mill).

Can be used with X-Carve, Carvey, and other GRBL-based controllers including Arduino, FTDI, and CH340/CH341-based controllers (though it might void your warranty)

Quick Start

Easiest way to get everything installed and running is to run the following:

curl https://raw.githubusercontent.com/ricktm/easel-driver/master/easel-driver.sh | sh -x

Easel is now running on ports 1338 (WebSocket) and 1438 (TLS WebSocket).

You can see the console output by running screen -r easel and detach from the screen process by hitting Ctrl+A followed by d.

Description

I use this to run my CNC mill connected to a Raspberry Pi, and then access it remotely from a non-Linux machine across the network. This is convenient if you don't want to have your CNC mill connected directly to your computer via USB or if you want to run your mill on Linux and still use Inventables' Easel.

The following commands will get the Easel driver running on Linux (tested on Raspberry Pi 3). Additionally, I've added port forwarding instructions if you wish to have your local computer port forward to your Easel machine (Easel's web interface will connect to the port forwarding mechanism on your computer which will forward to the computer your mill is actually connected to).

Note that while Inventables does now offer a Linux driver, it's only for X86 processors and not ARM processors, like the Raspberry Pi.

Remote Port Forwarding

If you want to run your CNC on a separate computer than the one you run Easel from, you can port forward from the machine you want to run Easel from. Easel uses ports 1338 for websocket and 1438 for TLS websockets, however the interface used to use 1338 exclusively but now seems to use 1438 exclusively.

macOS/Linux

# You can first install MacPorts from https://guide.macports.org/#installing.macports
# ncat is installed via nmap, I personally installed nmap via MacPorts by running
sudo port install nmap

# Now port forward local 1438 to remote host raspberrypi.local:1438 - may need to adjust raspberrypi.local to your controller's IP/hostname
ncat --sh-exec "ncat raspberrypi.local 1438" -l 1438 --keep-open

Windows

# you may need to change "raspberrypi.local" to the IP address of the machine running easel-driver
netsh interface portproxy add v4tov4 listenport=1438 listenaddress=0.0.0.0 connectport=1438 connectaddress=raspberrypi.local

Start on boot

The shell script asks you if you want to run on boot, and if so, it will add it to your crontab. If you didn't add it initially and want to now, you can add it like so:

(crontab -l ; echo "@reboot cd ~/easel-driver && /usr/bin/screen -dmS easel node iris.js") | crontab

Ensure that iris.js is actually in ~/easel-driver, and if not, make sure to change the cd directory. You must cd into the directory and not just run iris.js from the directory as iris.js uses relative paths.

easel-driver's People

Contributors

samyk avatar ricktm avatar acavella avatar perivar avatar chansanuwat avatar tobintax avatar jordansissel avatar

Stargazers

Botho Hohbaum avatar

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.