Send gcode via ESP32 to Duet wifi.
-
Hvala ti puno smece spasio si mi zivot.
-
@bearer said in Send gcode via ESP32 to Duet wifi.:
But instead of HTTP requests you can enable telnet and connect to the telnet port and send GCODE directly instead of dealing with the DWC API
Just note for the future: Telnet is going away in Duet/RepRap V3 firmware.
For that matter, so are RR_whatever HTTP calls. Moving to websocket.
-
@Danal said in Send gcode via ESP32 to Duet wifi.:
For that matter, so are RR_whatever HTTP calls. Moving to websocket.
WHY oh WHY ?!
adding websocket is ok, but removing telnet ?!?!?! why ?
-
That was pretty much my question to DC42. Perhaps if we both asked nicely, he'd reconsider.
-
@Danal @smece on Duet 3 you have all the connection options of whatever SBC you use. So SSH into it if you wish.
-
@T3P3Tony said in Send gcode via ESP32 to Duet wifi.:
@Danal @smece on Duet 3 you have all the connection options of whatever SBC you use. So SSH into it if you wish.
so telnet is not going away?
-
@smece said in Send gcode via ESP32 to Duet wifi.:
so telnet is not going away?
with respect to Duet 3 + SBC telnet is already gone, unless you cobble together something like socat and the command line client
-
@bearer said in Send gcode via ESP32 to Duet wifi.:
with respect to Duet 3 + SBC telnet is already gone
dunno what's SBC but I'm running RRF3 on Duet2Eth and telnet is still here
-
@smece said in Send gcode via ESP32 to Duet wifi.:
dunno what's SBC but I'm running RRF3 on Duet2Eth and telnet is still here
Duet 3 as in 3rd generation hardware not firmware, and SBC refers to a single board computer like the raspberry pi.
-
@bearer said in Send gcode via ESP32 to Duet wifi.:
Duet 3 as in 3rd generation hardware not firmware
Yes, of course, but it's firmware that's handling telnet server, and I find it weird that same version RRF3 for duet3 and duet2 is different in that regard.
SBC refers to a single board computer
thanks
-
@smece said in Send gcode via ESP32 to Duet wifi.:
and I find it weird that same version RRF3 for duet3 and duet2 is different in that regard.
the difference is when used with the single board computer the Duet doesn't use the ethernet interface, only SPI; ergo Telnet is not an option any more as its not supportd by the software package for the SBC.
(although i havent tested it in stand alone operation if it still support telnet)
-
@bearer said in Send gcode via ESP32 to Duet wifi.:
the difference is when used with the single board computer the Duet doesn't use the ethernet interface, only SPI;
makes sense to disable ETH if the communication is moved to SBC .. but then you can telnet to SBC so it's still available
-
@bearer my point was with the SBC you can connect over SSH (i.e. secure telnet) that drops you into the console on the SBC where you can use a tool like CodeConsole to send gcode to The Duet.
So no you are not Telneting directly into the Duet but you have the potential for command line gcode entry.
Of course if you want telnetd specifically (as opposed to sshd) the. You can install telnet on the SBC. Presumably this would only be to connect from clients that don't support SSH?
-
@smece said in Send gcode via ESP32 to Duet wifi.:
but then you can telnet to SBC so it's still available
yes, but no-ish. to get the same functionality to send g-code directly to the socket you'll need some DIY stuff ala socat
@T3P3Tony said in Send gcode via ESP32 to Duet wifi.:
So no you are not Telneting directly into the Duet but you have the potential for command line gcode entry.
same as above, it'll break something like an ESP8266 client sending g-code, unless you sprinkle some 11 spice and herbs on it or adapt the client. not saying its a problem, just pointing out the difference between telnet with a linux shell and telnet to todays Duet2.
(Edit: If the client support SSH (which rules out the tiniest embedded systems due to resources needed for the encryption, i.e. same reason SSH isn't offered on the Duet2) then SSH is actually easier to combine with CodeConsole as you could pipe data directly to CodeConsole running on the remote system as opposed to telnet to a shell)
-
@bearer said in Send gcode via ESP32 to Duet wifi.:
yes, but no-ish.
yup, it is clear additional sw would be required on SBC but is doable without big rewrite of client while switching to WS would be a big rewrite
-
@Danal said in Send gcode via ESP32 to Duet wifi.:
Just note for the future: Telnet is going away in Duet/RepRap V3 firmware.
For that matter, so are RR_whatever HTTP calls. Moving to websocket.@gtj0 said in Boilerplate HTTP connection code for Python-based UI:
Wait, I may have misunderstood something. You're using RRF3 on a Duet2? If so, then the websocket won't work. That's only for a Duet3 with the Duet Software Framework on a single board computer. Sorry about that. I saw you asking about websocket and didn't read the previous posts thoroughly.
Your original approach should work fine on a Duet2 regardless of the version of RRF you're using. You don't really have to use rr_connect at all for your application.
There's an explanation of the rr_* commands at
https://github.com/chrishamm/DuetWebControl/tree/legacyDid something change, or is there a missunderstanding somewhere?
-
Edited to accurately reflect Duet3 Hardware running V3 Firmware stand-alone.
RR_ works on Firmware 2 (which implies Duet2 hardware as well)
RR_ works when running Firmware 3 on Duet2 hardware.
A Duet 3 running firmware 3 without a Pi ('standalone') works like a Duet2; that is RR_ works and so does Telnet.
RR_ does not work when running Firmware 3 on Duet3 Hardware with a Pi; only websockets works. In turn, this means DWC1 will not connect to a 3/3/Pi machine.
Telnet works with any firmware on Duet2 or a Stand-Alon Duet3. Lines sent to Telnet are processed as G-Code commands.
Telnet does not connect to the Duet G-Code input when opened on a Duet3 with Pi. If telnet were enabled on the Pi, a session would connect to a shell on the Pi (not recommended; insecure).
There is a module in the Pi Duet support that allows G-Code commands to be passed from the Pi. It would be trivial to create a client that listens on the Pi on port 22 (telnet) and passes every line to that module. Again, this is not the Duet3D (company) "out of the box" default.
Make sense?
-
@Danal said in Send gcode via ESP32 to Duet wifi.:
RR_ does not work when running Firmware 3 on Duet3 Hardware; only websockets works. In turn, this means DWC1 will not connect to a 3/3 machine.
That's true when running a Duet 3 with attached single board computer. The rr_ calls do work on a Duet 3 running in standalone mode.
-
@dc42 said in Send gcode via ESP32 to Duet wifi.:
@Danal said in Send gcode via ESP32 to Duet wifi.:
RR_ does not work when running Firmware 3 on Duet3 Hardware; only websockets works. In turn, this means DWC1 will not connect to a 3/3 machine.
That's true when running a Duet 3 with attached single board computer. The rr_ calls do work on a Duet 3 running in standalone mode.
Thanks! Post above edited to reflect this info.