Remote control and monitor? How to?

Hi All,

I’ve been milling with my MP CNC for a while now. My MP-CNC lives up in the attic (since we Dutch city slickers all live in small houses). Therefor I would like to control and specifically monitor the CNC remotely.

So on paper either the Octoprint/Octopi or the Repetier server in combination with a Web cam look great. So you can control the machine from anything that can open the web interface. But searching this forum I did find a lot of questions but no real success stories (yet).

So do any of you manage the CNC for Milling remote, and what is your setup and which software do you use?

Thx in advance!

I think I promised to look into octoprint a really long time ago… Sorry, I got distracted and when I got back, I went to GRBL.

If you’re staying with the Marlin firmware, I think you’ve nailed the choices. If you can get octoprint to work, I think that’s the best option. Octopi is the easiest way to get started. I have an octopi, and some experience with it, if you get stuck. Webcam and timelapse is easy. The only possible gotchas are the temps and the gcode viewer won’t work (It ignores travel, I think). There might be some gcode that confuses it (G00 vs G0 or (comments) vs. ; comments). I bet most of that is just as compatible as Marlin. Also, the octoprint issue trackers are pretty good, so you can report problems with it there.

I switched to a GRBL controller built into the pi, and I don’t know if anyone else is doing that (and Ryan won’t be any help there, since he’s focused on Marlin for good reasons). With that setup, I run CNC.js, and I can do a little management. It’s a bit behind the octopi in terms of setup, etc. I did get a webcam working on the webpage, and I put in a request to the author to add hooks for starting and stopping timelapses, but I never tested his/her fix. I can load gcode files from my laptop, and if I set up the mpeg streaming, then I can see the USB video in the web interface. The web interface is my only way of jogging the machine under power.

Another important note is that CNC machines are more dangerous than printers (IMO), and they fail quite quickly. I doubt anyone would say it is “safe” to leave the machine alone. I’ve saved more than a few boards by being there when something went wrong. Then stopping the cut, or fixing a binding cable or something. There is also a fire risk, if chips build up, they can catch fire, although I think that’s sort of rare. I’ve left it running for little spurts during the cut though. Maybe instead focus on getting some hearing protection with builtin headphones and a good list of podcasts. :slight_smile:

You should also consider controlling the spindle power with something. That’s really nice to have, so it shuts up when it’s done.

Be sure to post what you end up doing.

I run octopi to power my 3d printer (non mpcnc, actually a cheap anet a8) its very useful for throwing gcode over the network and checking the status of a print via the webcam or the schematic like view.

I have a second pi too so there is no reason I wont give this a go on the mpcnc. The issue I have with raspberry pi are they appear very vulnerably to corruption of the sd card memory through unintended powerdown. This has happened to me a couple of times at least and can be quite a pain. However the benefits of it have far exceeded the issues. My setup will be in a garage not attached to the house. don’t wanna be burning down the house.

@Jeffeb3 Thanks for your input.

Yes I’m sticking with Marlin, since I’m not a hardware software wizard, so just wanted to stick to the paved ways. I do have a Laser Engraver as well, an older own design and build which I have running GRBL and I control via a Raspberry with GRBLWeb, which I really find a nice way of controlling the machine remote. But this has the stepper drivers and laser driver directly hooked up to the arduino. I really do not know whether you can use GRBL with a Ramps board?

I do not care about GCODE viewer, currently I’m also used to milling ‘Blind’ by running ESTLcam generated GCODE via SD-Card. So I might give OctoPrint a go.

With regards to safety I fully agree. And I think it is indeed essential to be able to turn of the router. Remote monitoring is not usefull if you cannot intervene, so I can indeed remotely cut the power from our my router.

To inspire others and to see if I have missed anything here are the precautions I have taken:

  • I use a Kress router, which is designed to run for hours in a CNC, so no overheating a Dremel or others.
  • I have a fire detector installed
  • I can remotely cut the power of the Router, the Shop vacuum and the CNC controller, all separate or all at once.
  • Less dust is better for you health and less risk of a dust burst when you have some sparks so:
  • I have a good dust shoe installed
  • I have a professional shop vac with a M class filter installed (M class is a European norm which basically tells you the Vac is not blowing the very fine dust particles out again), these Vacs are a lot more expensive but you can’t buy a new pair of lungs so totally worth it I think.
  • I have a Cyclone installed which catches the milling dust in a separate bin and thus keeps your expensive vacuum bags clean and therefore your shopvac suction on it’s max. Normally when your bag fills up the suction gets less.
  • I have a air scrubber which cleans the air at the attic, to catch what is not caught by my dust shoe, it has a timer so I can let it run for another hour after the milling has finished

@Andy strange that you get corrupt SD-Cards, the Raspberry PI which I use to run GRBLweb is hard cycled all the time and has not corrupted in over 2 years now. I have friends actually using OctoPrint on a Pi for their 3d printer without an issue as well.

I haven’t messed with remotely controlling, but have used remote notifications.

I just use repetier’s update notifier thing w/ their app, so it pops up notifications on my phone when a task errors, stops, pauses for bit changes, or finishes.

Same as Andy.
I’m running MPCNC with Marlin, controlling it via OctoPrint installed on Orange Pi Lite. Very reliable. Even uploading of gcode is simpler via OctoPrint, than to mess with SD card. It also reports to me estimated time.

When printing, I leave machine alone, but while milling, I’m always there.

this is what I do usually private tho and run like a bat out of hell if something happens. then I can stream it on anything

I have octoprint installed on a laptop, with a usb camera. Raspberry pi’s just aren’t that reliable for large gcode files, at least not for me. That runs my printer. I have another windows 10 laptop running my cnc with all the normal software. I also have a standard networked webcam pointing at my mpcnc to watch when I’m not there. A couple of my larger projects have taken over 12 hours to run.

I use the raspberry pi method for controlling all my devices.

the MPCNC has a Raspberry Pi 2. It runs Repetier Server Pro with a webcam. I don’t have any issues with the size of the file or how long it takes. it’s worked beautifully.

the MP3DP has a Raspberry Pi 3. It also runs Repetier Server Pro with a webcam. also no issues on file size up to 10-12 hour prints. I think the limit may be around 16 hours though as I did have a 20 hour print go south on me. but I’ve only tried the one file that large. but, I drop 10-12 hour prints fairly routinely and it works beautifully.

the laser engraver also uses a Raspberry Pi 3, this one doesn’t have a webcam but does have a 7" touchscreen. This one took more work to get stable because the laser engraver doesn’t have perfect software (yet). one of these days I’ll get a marlin/ramps board set up for it.

the (soon to be) lowrider will also have a Pi3 running Repetier Server Pro (until it proves incapable).

in all of these cases, I upload the gcode files from repetier host on the laptop, and trigger the machine start from the repetier web server interface. I tend to watch the CNC initially so I usually walk the iphone out to it and start the cut with the phone. Then I can walk away.

Thanks for all of your reactions.

So both Octoprint and Repetier Host Server Pro are a viable option.

Think I will start out with a Pi 3 loaded with Octoprint, see if I can get is stable I’ll keep you guys posted.

Regarding the Pi not being stable enough? At which size file does it tend to fail? And does it then fail at the very beginning or during a job?

Mine was failing with the bigger mpcnc parts. Might be the pi, it’s a model b. With the laptop though I can run a hd camera without any lag.

If you’re only using a model B, then, yeah… it’s probably your pi :slight_smile:

The Pi3 has significantly more horsepower under it. I currently use one on my 3d printer and have been able to print very long prints (18+ hours). I’ve also found that reliability can be tied to the baud rate you’re using to talk to the printer. At max baud, I was getting occasional ‘printer lost’ error messages. I haven’t had a glitch since dropping the baud rate to 115(whatever it is).

Once I get my MPCNC up and running I plan on sticking octoprint in front of it. I’ll have some way of remote killing the spindle.

I’ll do this more for the simplicity of loading Gcode to it than the actual remote usage capabilities. I’ve also had issues with printing from SD cards. Not sure if it’s the card or what, but printing from octoprint has been more reliable for me than the SD cards.

For remote killing of the Spindle I use a Smartware remote controlled plug which can handle 3600w… Something like this:

Now just with a remote, but if needed it can be connected to the IoT.

I was just going to use the fan on/off to control a relay on the arduino.

Turn the ‘fan’ on… run my job. Turn the fan ‘off’.

I have a guide to control a relay from the pi with octoprint:

I printed my mpcnc and my low rider with octoprint. I’ve had 99 problems, but octopi ain’t one. I have use a pi 2 and now I have a pi 3.

The relay is indeed cool. However I want to be able to turn the power off when something goes wrong e.g. when OctoPi is unresponsive a as we security freaks call it a ‘out of band control’ which does not rely on the same systems your monitoring :-). Therefore I’m remote controlled power socket. The downside is indeed another remote… Maybe I will do both. A relay for the controlled power of and the killswitch for emergency use.

its pretty simple to setup octopi to control a relay. Make it the kill all switch

I’ve got OctoPi up and running on my Rpi 3, a webcam setup. Setup was easy, no issues yet, but also no long cuts yet.

A friend of mine uses a Z-Wave outlet and IFTTT to turn his 3d printer off and on. He went so far as to rig a smoke detector he mounted above it in the case it catches fire it will shut the printer off (and do a bunch of other crazy things)