What’s the recommended/preferred way LowRider 3 SKR Pro 1.2 builds should add Wifi/Headless setup?
Ideally, I want it all… TFT, USB and Wifi. Or at least TFT and Wifi. I mentioned Headless in this topic incase that helps someone.
Want to configure/control/monitor without a laptop/tablet/phone physically connecting to my LowRider. Will always be in same space as CNC, always ready to smash Emergency stop.
Didn’t see recommended Wifi/Headless optional enhancements mentioned in LowRider 3 docs or Lowrider 3 CNC LR3 release notes, but I’m seeing many options mentioned in forum posts.
Did see Doc → Control → Advanced options → V1PI which suggests using Octoprint and CNC.js on an elusive Raspberry Pi, referencing this really long v1pi-raspberry-pi-image-with-octoprint-and-cnc-js-and-wifi-hotspot forum topic.
Used Octoprint ~2yrs (on Raspberry PI 3 B+) with my 3D printer, and like it, for 1) configuring - uploading jobs 2) controlling - starting/stopping jobs, 3) monitoring - Camera closeup view, temperature tracking.
Other options :
ESP01-S module connected to SKR Pro. If SKR Pro firmware doesn’t support 3 serial connections, then to avoid losing USB or TFT access, you can connect ESP01-S module directly to the TFT, which is connected to SKR Pro.
Don’t use SKR Pro, instead use a pricier Duet 2 wifi board
Use ESP32 instead of ESP01 module, just for proxying serial communication over wifi. A complete ESP32 based Controller is a separate thing altogether, related post
Currently, am using 16’ USB (V1E affiliate link) that’s part of the power/vac/USB umbilical feeding my LR3.
I use octoprint / esp01S on skr pro 1.2. You need the networking plugin for octoprint and setup some ip addresses to check on connecting. (I run octoprint on a raspberry pi 4.)
" For Octoprint you will have to install the Octoprint network plugin, the simplest is via the plugin manager: OctoPrint Settings → Plugin Manager → Get More → … from URL paste: https://github.com/hellerbarde/OctoPrint-Network-Printing/archive/main.zip → Install After the install is complete, it will be required to restart Octoprint.
After the restart, we can add the ESP-01s Data port as an additional serial port in Octoprint: OctoPrint Settings → Serial Connection → Additional serial ports → paste the following:
socket://<your esp-01s ip>:8888 → Save"
For me I have a list like:
Whatever my router last assigns to the pi, I toss it on, I use baud rate 921600, toss that in additional baud rates in octoprint if you like. You can also connect directly to the ESP01-S, but it wants gcode filenames in 8.3 format, which can be annoying.
I’ve have searched and read many post today regarding headless and that is just what I’m starting to feel
What’s is the conclusion of the OP? I have the same question about using Octoprint on a PI or going with the wifi-module on the SKR Pro 1.2. I’m still in the hardware build process but would like to decide on what enclosure to print (w or w/o the PI).
(I also have the TFT 3 EV)
Setup, used and modified ESP3D on the ESP01s wifi module with my SKR 1.2. Homing, Jogging and keyboard shortcuts with ESP3D were great, they worked the way I wanted from my amzn fire tablet with BT keyboard attached. Wireless upload of GCODE is so slow and restrictive it’s not workable and I ended up copying GCODE to SD cards. Not ideal, but this was an upgrade and better than having unreliable USB cables dangling from a laptop to the LR3. USB cable fail midway through multiple jobs is what frustrated me enough into getting a wifi module.
Not long after, I accidentally killed my SKR1.2 immediately after upgrading from 12V to 24V (my fault, I didn’t ground first when wiring power convertor for the fan).
The SKR 1.2 was great, but I wanted the option to do unusual upgrades in the future and used this opportunity to try out an Octopus v1.1 controller. Octopus was more work to setup. The SKR 1.2 is better documented, tested and understood on this forum.
Since I liked the ESP3D experience I ended up setting up ESP32 module compatible with Octopus.
This was meant to be temporary, because the plan is to eventually end up with V1PI or Octoprint, and try Klipper. Lots of sender/controller options out there that people like/dislike for various reasons.
Even with wifi, the TFT is handy to have attached so you can tell ip address, when client connects, etc… Selecting SD card job to print even. On the SKR 1.2, because of code and/or limited number of serial ports, you may need to forfeit USB if you want both TFT and wifi module (Marlin configuration edits required, assuming you’re using Marlin).
Used and liked Doug Joseph’s case for my SKR1.2, ESP01s wifi module fits.
Ended up printing/CNC’n a new configurable case for my Octopus v1.1 controller.
Hope info here helps.
I forgot to mention ESP3D has keyboard configurable Macro support. The Macros are helpful too. There’s probably some other features I’m forgetting, ESP3D’s not perfect, there’s more feature rich alternative controller options out there. For me it was good enough to ditch unreliable USB cables.
Bought ESP01S from V1E Shop since Ryan preloads them with the ESP3D firmware, which saves me some time/hassle.
Aza B2C, Have you settled on using ESP32 or ESP01 with your Octopus? (or is the ESP01 not compatible with the Octopus?)
Also, I’m a bit confused if a Pi/Alternate Pi is also required/needed. (or is that just needed if you are going to use v1pi ?)
Hey @Mattman, currently using BIGTREETECH ESP32U module with Antenna from amzn with my LR3’s Octopus. Marlin on the Octopus, and ESP3D on the ESP32U module.
The V1E Shop’s ESP-01s module preloaded with ESP3D recommended for SKR1.2 Pro, cannot be used on the Octopus. The Octopus’s port for a Wifi module is different size (ESP-07S?). No Pi needed, but I understand why some people like to use them.
Installing ESP3D onto BIGTREETECH ESP32U requires cloning, compiling and flashing ESP3D similar, but different, to forum documented steps for ESP01. Was able to use the same USB ESP programmer module to upload firmware to either a ESP-01s, or the ESP32 module, figuring out USB programmer to ESP32 module wiring was tricky for me. Think you can get ESP8266 processor based boards with the same form factor for less. I went with BigTreeTech’s ESP32 for external antenna boost, and more compute, am increasingly doing more ESP32 stuff than ESP8266 these days, so the additional mem/cpu is nice.
My MP3DP v4 Octopus is directly connected to a Pi running Klipper. Am starting to like the MainSail/Klipper Web-UI experience, but expect to keep running ESP3D-Marlin on my LR3, am living with that setup for now.
My LR3 isn’t moving around crazy fast and needing the fine kinematic control that Klipper offers.
The thing that bugs me the most with my current LR3 setup is not being able to efficiently upload gcode files larger than the ESP32’s free mem. Am using SD cards to carry files over. Am mostly cutting one offs, not doing the same designs/cuts over and over, so the copying files to SD card every time thing probably bothers me more than some folks.
The WiFi module’s main value to me is wireless jogging, and reliable job execution, there’s no USB cord at risk of getting yanked and causing the job to halt/fail.
Hope that helps, cheers!
Wow! Yes, this really helps. I totally forgot about needing a ESP programmer.
I’ve been using CNCjs Desktop (v1.10.2) (on my laptop) with my laptop hardwired to the Octopus (via USB) and sending my gcode files that way. Recently the CNCjs just loses my gcode file and hangs and leaves the router sitting on/in the wood at some random point in the job. So I’m looking for a different way of sending jobs that gives me some of the features I’ve found useful:
- headless (well, I wasn’t before, but this will keep the chips/dust off the laptop )
- jogging (keyboard would be nice so I don’t accidently click on the wrong button)
- setting up work coordinate system (G53-G59)
- having a terminal so I can manually send gcodes (for example M500)
Understand/agree, a couple of 15’ USB corded Repetier job failures is what frustrated me onto this path:
- Personally like TFT connected to the Octopus even though am functionally using as headless. Can visually see status info about IP, connections, and what Marlin/Octopus thinks it’s doing, if/when the ESP3D/ESP32 is misbehaving. For example, percentage job completion, and message prompts for tool changes are displayed on the TFT, am not sure those are displayed clearly in ESP3D UI. I need to check next time…
- Keyboard jogging is really nice, easier than touch screen to position without taking eye of the bit.
- Macros, and keyboard shortcuts improve the User experience.
- Ideally, we wouldn’t need to manually send gcode commands, but I end up doing so, and the relatively cheap tablet+keyboard is great for that.
I was successful in compiling and flashing the BTT ESP32. Haven’t really run it though its paces but was able to connect and move an axis.
Did you say you used Ryan’s firmware to flash your’s? I’d like to use his format/look (i.e. since I’m just using the ESP3D for my CNC i don’t need or want the 3D printer stuff). I’ll keep poking around to see if there is something in the config.h or the other file that got uploaded (can’t remember it at the moment) or maybe I should have used Luc’s file vs. the ones in the BTT repository. Thanks for the references and ‘bread crumbs’
Totally agree. Ended up customizing for this reason too.
I used Ryan’s compiled firmware as-is when first looking at this and using a ESP-01.
For the ESP32 though, I had to clone and compile ESP3D and ESP3D-WEBUI repos for ESP32 target. Then upload firmware and the zipped web app.
First learnt about and dug into ESP3D’s web code in Jan. Experimented with, and submitted some edits for things that frustrated me, haven’t updated/tinkered with since…
Shared my ESP3D and ESP3D-WEBUI forks, they contain couple of small things that are in stale stalled pull requests to main. I don’t care, or feel strongly enough about the pending pull requests to push further on them. I do use those edits on my own machine though.
However, I’m behind on what Luc’s been up to recently ESP3D-WebUI 3.0 branch, guessing main will have misc useful fixes/improvements.
Am waiting to see how FluidNC experimentation pans out for community members actively trying that out. I may end up switching to that, should be a small delta since FluidNC’s Web UI was forked from ESP3D WebUI.
This is pretty much what i do for all my boards still running marlin, which is only 1 printer and my lowrider 3, but rather than run octoprint from a pi, I run it from a kubernetes cluster in my main server rack.
Everything else is running klipper and I plan to convert these last 2 devices to klipper as well when I have time. I have at least a dozen spare pi3’s laying around and klipper/mainsail perform really well on them.
Btw, you can also run a serial to wifi bridge on a pi zero using
ser2net if you don’t have an esp8266/32 but have a pi zero or you want to use the pi zero for other things and don’t want multiple wifi devices on the same printer.
Thanks for your references and hints and help! I was successful in getting v3.x (Alpha) installed. I like it better because you can remove the display panels you don’t want (ie: temp., extruder, and the other 3D printer type of panels). Once you have it set up, you can always re-compile the code and then update the firmware/WebUI from the ESP32 itself - no need to unplug it from the control board and hook up the wires to the programmer and then move it back. I’ll keep playing with it and try to upload a CNC job to see how that goes. Seeing the screen shot of the FluidNC’s Web UI has me thinking that will be my next ‘project/item’ to play with until I find something that I’m comfortable with. Does FluidNC only work with Grbl? or does it support Marlin now? I am not ready to switch firmware just yet. I only know klipper and marlin. Never used Grbl before but I might have to. Always another thing to learn or add to the ‘project’ list . Keeps me out of the bars (as my wife says).