GithubHelp home page GithubHelp logo

outsourcedguru / octo-redirect Goto Github PK

View Code? Open in Web Editor NEW
3.0 2.0 1.0 8 KB

A step-by-step tutorial for setting up an rfc2217 network redirect for OctoPrint to a remote Raspberry Pi Zero W

Python 100.00%
octoprint octopi rfc2217 3d-printing 3d-printer network tcp remote-printing

octo-redirect's Introduction

Octo-Redirect

Step-by-step instructions for setting up a Raspberry Pi 3B and a Raspberry Pi Zero W to remotely print.

Overview

The following diagram roughly describes the connections and communications required.

Raspi3B ➡️ ZeroW with rfc2217_server.py ➡️ Mega2560
rfc2217://10.20.30.66:2217 tcp 10.20.30.66:2217 rfc2217 port forwarding to serial /dev/ttyACM0 on microUSB with Type A OTG adapter cable USB serial cable Type B connector

Setup

Read the related Setup.md file for specific instructions.

Description Version Author Last Update
Octo-Redirect v0.1.0 OutsourcedGuru March 9, 2019
Donate Cryptocurrency
eth-receive btc-receive
Ethereum Bitcoin

octo-redirect's People

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

wanderling

octo-redirect's Issues

Cannot change Baud to 115200, stuck on 9600

So close to a working setup! Thanks for all the legwork you have done to make this happen. Maybe someone here can solve this one small issue.

I have ser2net running as a serial server on a small OpenWRT x86 computer at IP 10.1.1.1. My printer is connected via USB and shows as /dev/ttyUSB0. Last night I was able to test ser2net in RAW mode with a telnet client on port 2000. The printer responded to a G28\n command and would Home all Axis. I also received all the standard wait and retry commands through the telnet session. I was also able to do this from the Octoprint server running in Docker at IP 10.1.1.10.

Contents of /etc/ser2net.conf on OpenWRT

[...snip...]
2000:telnet:0:/dev/ttyUSB0:115200 remctl

I made the necessary changes detailed in your repo to Octoprint and reinstalled it. Octoprint then allowed rfc2217://10.1.1.1:2000 as a serial port

On first connection, Octoprint was able to retrieve info from the printer. Gcode did work internally for Octoprint, but I was not able to issue any Gcode commands manually through the terminal.

Connecting to: rfc2217://10.1.1.1:2000
Changing monitoring state from "Offline" to "Opening serial port"
Connected to: Serial<id=0x7fb41a3cff90, open=True>(port='rfc2217://10.1.1.1:2000', baudrate=9600, bytesize=8, parity='N', stopbits=1, timeout=None, xonxoff=False, rtscts=False, dsrdtr=False), starting monitor
Starting baud rate detection...
Changing monitoring state from "Opening serial port" to "Detecting baudrate"
Trying baudrate: 115200
Send: N0 M110 N0*125
Recv: start
Changing monitoring state from "Detecting baudrate" to "Operational"
Send: N0 M110 N0*125
Recv: ok
Send: N1 M115*39
Recv: ok 1
Send: N2 M21*18
Recv: FIRMWARE_NAME:Repetier_0.91 FIRMWARE_URL:https://github.com/repetier/Repetier-Firmware/ PRMendel EXTRUDER_COUNT:1 REPETIER_PROTOCOL:2

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Your printer's firmware is known to lack mandatory safety features (e.g.
thermal runaway protection). This is a fire risk.

Learn more at https://faq.octoprint.org/warning-firmware-unsafe
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


Recv: Printed filament:89.33m Printing time:0 days 22 hours 40 min
Recv: ok 2
Send: N3 M21*19
Recv: ok 3
Send: N4 M20*21
Recv: ok 4
Recv: Begin file list
Recv: Tronxy X1 V.02/
Recv: Tronxy X1 V.02/20mm_box_pillar.stl 36484
Recv: Tronxy X1 V.02/20mm_box_pillar_Test.gcode 673998
Recv: Tronxy X1 V.02/Tronxy X1 Assemble Guide V 2368019
Recv: Tronxy X1 V.02/Tronxy X1 Operating Instru 929938
Recv: Tronxy X1 V.02/X1 Part List(1).pdf 860622
Recv: Tronxy X1 V.02/Software/
Recv: Tronxy X1 V.02/Software/FTDI USB Driver.zip 1366111
Recv: Tronxy X1 V.02/Software/setupRepetierHost_1_6_2.ex 31211016
Recv: Tronxy X1 V.02/Software/software download website. 83
Recv: CE2_bedleveling-try_this_o 3139
Recv: CE2_YLimitSwitchBracket.gc 708917
Recv: End file list
[...]
Send: N5 M105*34
Recv: ok 5
Recv: T:23.47 /0 @:0
See octoprint.log for details
Changing monitoring state from "Operational" to "Offline (Error: See octoprint.log for details)"
Connection closed, closing down monitor

After disconnecting and reconnecting in the Octoprint interface, it's no longer able to retrieve info from the printer. In the terminal, Octoprint states it is initially connecting with baud 9600, then trying 115200 but does not succeed.

Connecting to: rfc2217://10.1.1.1:2000
Changing monitoring state from "Offline" to "Opening serial port"
Connected to: Serial<id=0x7fb41a5ecf10, open=True>(port='rfc2217://10.1.1.1:2000', baudrate=9600, bytesize=8, parity='N', stopbits=1, timeout=None, xonxoff=False, rtscts=False, dsrdtr=False), starting monitor
Starting baud rate detection...
Changing monitoring state from "Opening serial port" to "Detecting baudrate"
Trying baudrate: 115200
Send: N0 M110 N0*125
Recv: �ok

Linux version?

If it is possible, please consider to add a guide for Linux PC based installation of OctoPrint (as server).

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.