v1pi: Raspberry Pi Image with Octoprint and CNC.js (and wifi hotspot)

Hello Jeff.

Thank you very much I will get to work with it, I will let you know how it goes.
Is it possible to connect the pi with an ethernet cable? I still have an old desktop on which I put ubunto, but now it is not connecting. the computer is not equipped with WiFi

Ethernet works on all versions without modification.

Hi Jeff. I was hoping you could point me in the right direction on a few issues I’m having with the V1Pi. I’m very new to all of the CNC, and Pi and maybe I’ve bit off more than I can chew. I’ve built an 18"x 18" work area MPCNC with 4" of z axis travel, using a preloaded RAMBO 1.4 from Ryan. No duel endstops yet but I have the parts and wiring for it at some point. The MPCNC is working great through ESTLCam and Repetier. I wanted to set up wireless control because its one of my only complaints about my Prusa MK2S, running an SD card back and forth. I hooked up the Pi and flashed your image and was able to make a connection through Octoprint and manually jog the spindle, but I’m having issues with cncjs. I can’t get the spindle to move manually. Running a G0Z0 command doesn’t seem to help anything. Also, if I connect to Octoprint and then disconnect to try and connect to cncjs I get an error that the server isn’t available and I have to reboot the Pi

I know these have come up before in the past but I’m not sure I understand how to fix them. I was able to edit the file for the wifi so I think if I knew what to edit I could do it, but I’d need pretty explicit instructions on what to change.

I also bought a 5 inch touchscreen hoping to be able to use it as a pendant but if I’m correct, it doesn’t look like the functionality is there yet.

Thanks,

Bill

1 Like

I don’t know of any specific issues like this. I can tell you a few things:

  1. You can’t connect CNC.js and octoprint at the same time. You do need to connect to the same port.
  2. You need to select Marlin in CNC.js.
  3. You need a space, I’m pretty sure, between G0 and Z0. That also won’t do any movements, because the machine was likely restarted and it’s already at Z=0.
  4. The pendant is not as simple. It is possible, but you need to install the desktop, set up the plugin for the pendant and then set up chrone to open it.

[CNC.js] I had to change the baud to 250000. I think it was defaulted to something else. It was the only way I could get it to work.

Thanks for this Jeff. And also to John for making realize where the pauses were related to. So glad I touched on this thread again. Will be updating to new V1pi tomorrow!

 

FYI, i do not use the hotspot feature. I would not mind the tracker if it helps you, but the machine is off the net anyway.

1 Like

Wow, what a difference Octoprint made in the cut speed and smoothness. I’m blown away. Always thought that the jitter I got in CNC.js was just to be expected.

I flashed a new SD card with the recent V1Pi, and unfortunately I have not noticed any difference in CNC.js (0.9.20). Octoprint is great for my 3d printer, but man is it a PIA to work with the MPCNC. I just want the smoothness of Octoprint with CNC.js. I really hope all the smart minds here can make that happen still.

If anyone needs me to test anything out, I’m willing.

I got the latest v1pi image up and running. Got some questions

  1. What do I have to change make either octoprint or cncjs not started by default.
  2. Where in the filesystem can I find the cncjs webserver's files? I need to make some changes such as modify the home button to not crash my z as well as some other tweaks
  3. Is there a plugin or a way to have 'macro' functionality in octoprint like we have in cncjs?

You can use sudo update-rc.d cncjs disable to disable cncjs. The enable will reenable it. I think you can still start it after that, but it won’t be running automatically, I’m not sure.

It’s installed from npm, so not from source. It gets minified, IIRC. The files are in /usr/local/lib/node_modules/cncjs. But I’m not sure you’ll be able to edit it as well as if you had installed it from source.

I looked for a few minutes, but couldn’t find one. I could have sworn I have seen this before somewhere… You could get around it by making a .gcode file with your command and uploading it. Seems like a good plugin to have. I do know you can add gcode to the menu at the top (that currently has shutdown, reboot, etc.).

1 Like

Take a look at this one. It’s the one I used on my 3d printer, and am going to use on the MPCNC if I cant get CNC.js to work smoothly. https://plugins.octoprint.org/plugins/TerminalCommands/

2 Likes

Nice. Thanks for posting this.

I use OctoPrint (OctoPi image) on Raspberry Pi for both my printers. One of them doesn’t have a UPS, and a recent brief power blip has caused it to die. I haven’t picked it apart but I’m pretty sure it’s a corrupt SD card, which seems to happen about 100% of the time when it suddenly loses power. So I need to re-flash the SD card to get it back up and working.

This is annoying and a few months ago I had dabbled with setting up a read-only filesystem so the SD card can’t get corrupted on a sudden loss of power.

I guess I am looking for advice for the longer term, which might span both printing and milling use-cases.

  1. Find an image that has read-only mode?
  2. Start with a base image, e.g. V1 Pi, and figure out how to implement read-only mode?
  3. Buy more UPSes?
  4. Other options? Network boot?
There is a huge amount of discussion around power management for the Raspberry Pi, and I haven't but scratched the surface, but so far nothing is standing out as the obvious killer solution.

The custom pios is pretty slick if you wanted to try making your own image. I am not sure the best way to make it read only. It might best to configure everything and then just change it to mount ro after you’ve got it set up. Maybe with a button on the landing page?

Another thing you can do is to put your configuration and files on a usb stick and then just get a bew sd when it fails. I do this on my printers, but since I did that I haven’t had any failures either…

Dropping in to say thanks. I finished setting up v1pi early this morning. I haven’t tried cnc.js yet but octoprint is working as intended and after installing the desktop environment on the pi, I’ve got everything I need right next to the machine. It’s good work - thanks for your effort.

3 Likes

Have it running for some time now, with both the MP3DP & the MPCNC.

So I just ordered a new Raspberry to connect both machines instead switching between the garage and the living room.

So the first Raspberry I connect now with 192.168.178.50 , with the second one I guess I have to change that address somewhere ?

1 Like

If it’s connecting to your home router, then it will get a different ip automatically. The trouble is they will have the same hostname (v1pi). There are many ways to change it, but I think there is a choice in the raspiconfig. I usually just change it in /etc/hostname and /etc/hosts. If that makes your eyes cross then just use raspiconfig.

Yep, just worked fine. Renamed my old Pi 2, at least that’s what I think it is, and this morning received a Pi 3 A+, don’t need the Eth, or additional USB’s. Pricewise it was just 1-2 $ above the Zero WH, so it was the smarter choice.

Thank you so much, I am kind of doing something similar, but mine does have little different approach and what I am wanting to do is, to make it launch a UGS app right at the beginning once the pi boots (entering kiosk mode) and from there you can yous pic the code that you want to send.

 

Even thou I do not seem to find a good spot where to install the pi (I was really looking forward to place it in a case that way there is not that much trouble due to the wiring and also was considering to even remove the screen that comes in default in the kit, since I will be using the pi I don’t think that there is need for that other screen), since that is what I am looking to be able to do

That’s totally possible. The v1pi is shooting to be a headless server, so no screen and no guis running, which will make it work even on a pi zero w.

The custompios that I use is pretty slick and it’s a great place to start.

Since where is my workshop the internet connection is not the most stable so, I am aiming for something that I can be able to use more accurately, and well I think that I can be more accurate when setting a homing point, rather than twisting the nob that way even my parents will make it

i cant get it to control my lowerider and the service crashes right after just a few sec using cncj 1.9.20 connecting using Marlin (tryed all of them) and every baud rate switched over to the octaprint and it worked fine first try. Any advice Ty