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

New Home Forum Software / Firmware Development v1pi: Raspberry Pi Image with Octoprint and CNC.js (and wifi hotspot)

This topic contains 135 replies, has 31 voices, and was last updated by  Ryan 3 days, 9 hours ago.

Viewing 16 posts - 121 through 136 (of 136 total)
  • Author
    Posts
  • #89014

    BT
    Participant

    I use V1Pi on my LowRider and can use my phone to control it through the Pi and specifically use Octoprint to send the gcode to my miniRambo.  IIRC, there is a plug-in for octoprint specifically for mobile phones that simplifies the interface and looks like I think a pendant would.  Homing should work just as you expect it to since you’re effectively sending gcode to execute the commands.

    2 users thanked author for this post.
    #89015

    Ian
    Participant

    Thanks for the reply, I will give it a go. – I will order another pi today and give it a go at the weekend. – I will report back on how it goes.

    UPDATE:

    I received the Pi yesterday and literally took 15 mins to get this set up. I simply replaced my laptop running RepetierHost with the pi running v1pi. I liked the look of cnc.js and am very familiar with Octoprint. I connected Octoprint to the printer and used OctoRemote to jog the router around a bit. All was fine until I realized that natively Octoprint doesn’t show the X,Y,Z coordinates. You have to issue an M114 to see the current position. I thought maybe that was a show stopper. – I took a look to see if they had plugin for this but I saw clearly that they don’t recommend realtime coordinate reading but they do have some code to create a custom control that allows you to receive the current position on demand.

    I then thought giving cnc.js would be a good option, I connected it using the Marlin button but very quickly found that when trying to move the router around the software crashed and did not recover. After several attempts it left me without a choice but to forego that option.

    I went back to Octoprint and started setting up the job that I had previously machined using RepetierHost without too much grief. I set the job up on the table and homed my X, Y then jogged my router into position with my phone running Octoremote. I had one hiccup here, I accidentally hit the home Z and it drove my cutter straight down and would not quit. I had to quickly pull the plug but I think I have damaged one of the PLA parts which I will need to reprint (gotta love having a mostly printed CNC). Once I had the position I sent an M114 and noted the co-ordinates before zeroing. – I do this in case something goes wrong and emergency stop is required, this can change the X,Y,Z zero so getting back to the half finished job can be hard unless you have a reference to go from. Anyway, I then zeroed my co-ordinates using a G92 X0 Y0 and the same for Z0 – I have found that separating these is usually best for my set up as I move the X,Y from zero to set up Z. Once it was set to go, I let Octoprint do its thing by starting the print with OctoRemote. – I have installed the software emergency stop on Octoprint but for some strange reason on the MPCNC instance of Octoprint it keeps disappearing (I use it on my Tevo instances (Carlos and Amelia) without a problem.

    The net outcome was that it machined the job flawlessly however, I think given this approach I am going to hard wire a physical emergency stop that shuts down both the router and the Rambo board.

    I have also noted that the legs to my MPCNC are too short as most of the jobs I have done have been raised up thus I am working on the limit of the retracted height for the Z axis. I am going to make longer ones.

     

    #90993

    miribota
    Participant

    I’ve been looking for a way to replace my various control PCs in the basement with a headless solution, and recently saw this, thank you putting this image together.

    One thing I want is a way to jog and zero while at the machine and not at a workstation. CNCJS provides some good looking pendant options that can be used on a tablet or mobile phone.

    It took me a bit to figure out the best way to get mount points setup with CNCJS on the image, but I thought I’d include it here for anyone else that may want to try it out.

    I’ve started with trying out the Tinyweb pendant (https://github.com/cncjs/cncjs-pendant-tinyweb) and will be looking at the ‘shop floor tablet’ as well (https://github.com/cncjs/cncjs-shopfloor-tablet).

    I downloaded tinyweb to /home/pi/cncjs/tinyweb

    Update DAEMON_ARGS to include the mount point in ‘/etc/default/cncjs’

    DAEMON_ARGS="--host=$HOST --port=$PORT -m /pendant:/home/pi/cncjs/tinyweb/src"

    1 user thanked author for this post.
    #95623

    martin
    Participant

    I’m a bit confused and maybe some one can bump me in the right direction. I have a raspbery pi 3b+ connected to an arduino with a ramps1.4. If I open octoprint or cncjs the ports available to select is /dev/ttyAMA0 and /dev/ttyACM0.

    Which one do you select ? If I pick AMA0 the cpu and memory gets depleted to a stage where you have to pull the power.

    If I pick ACM0 it is stable so is this the right one ? Running the v1pi version of software.

     

    Thanks

    #95633

    Jeffeb3
    Participant

    If you disconnect it, which one goes away (or isn’t there after reboot)?

    It’s probably ACM though.

    #95642

    martin
    Participant

    Thanks,

    Jip correct. If i pull the usb cable to the arduino ttyACM0 is gone.So we assume this is the right port then.

    I’m trying to install node-red but this break cncjs. So I assume it have to do with nodejs version compatibility.

    #95643

    Jeffeb3
    Participant

    I’m trying to install node-red but this break cncjs. So I assume it have to do with nodejs version compatibility.

    I am not sure. I haven’t used node-red in a long time. I tried to install node.js several times, in different ways, and the only one that worked was downloading and installing a precompiled version. Here is the script that generates it for the image:

    https://github.com/jeffeb3/v1pi/blob/master/src/modules/nodejs/start_chroot_script#L18

    And here are the params it uses:

    https://github.com/jeffeb3/v1pi/blob/master/src/modules/nodejs/config

    1 user thanked author for this post.
    #95662

    martin
    Participant

    Got a running version now with:

    Node.js – v10.15.3

    CNCjs – V1.9.18

    octopi – V1.3.10

    Node-RED – V0.20.3

    rasbian stretch

    Raspberry Pi 3 Model B Plus Rev 1.3

     

     

    Attachments:
    #96572

    John Boiles
    Participant

    I’m up and running with cncjs! Thanks @jeffeb3!

    I added a 5″ touchscreen and set up kiosk mode with the Tinyweb pendant but the Tinyweb pendant doesn’t support Marlin yet. I’ve started changing the code to make it work. I’m at the point where the pendant now will control jogging on my laptop, but the pendant still doesn’t do anything from the touchscreen on the pi. But I think I’m close!

    I definitely lost some time on the ‘first move’ bug before I came back and read the forums more thoroughly. Is the right fix cheton’s solution in the issue? I’d be happy to give implementing that a go.

    #96585

    Jeffeb3
    Participant

    Oh neat. That should be a nice interface. You could even do it with a second pi in the shop, connected via wifi if, for example, you had a low rider and didn’t want to chase it around for the interface or have a big cable.

    As for the bug, I was assuming he would fix it, and the next version would work. I’ve also found that some builds of Marlin are fine, and I suspect it has to do with which features (which comes down to a race condition). Long story short, I am not sure, but you should go ahead and make that PR. If nothing else, it will give it a kick start.

    #96802

    John Boiles
    Participant

    OK I made the PR. I’ll try it out this weekend. It would be great if others get a chance to validate it as well since this is an intermittent issue.

    #96990

    John Boiles
    Participant

    I’m seeing the same issue as @FX where the GCode processing is jerky in CNCJS (but not OctoPrint). I’m just using the TestCrown file but dialing up the speed to F7200 and I can really obviously see major differences between OctoPrint and CNCJS. My MPCNC pauses mid-arc. I could make a side-by-side video if anyone is interested.

    I’ve filed a MPCNC issue

    1 user thanked author for this post.
    #97016

    Jeffeb3
    Participant

    That is awesome. Thank you.

    #97032

    John Boiles
    Participant

    I made a comparison video and updated the issue with some early thoughts about causes for slowness based on my digging through code.

    3 users thanked author for this post.
    #97472

    Jeffeb3
    Participant

    Big thanks to John Boilea. John and Cheton are making good progress on the bug and I think this will get fixed or worked around by the next CNC.js release. I’ll make a new cut of v1pi then too. The video is solid gold. There are so many questions it answers.

    #97486

    Ryan
    Keymaster

    Wow the troubleshooting in that thread is impressive.

Viewing 16 posts - 121 through 136 (of 136 total)

You must be logged in to reply to this topic.