Closed: [Beta] Makerverse (previously known as "CNCjs") Support for **All Maslow Editions** w/ Non-Destructive Edge Calibration

Wow. OK that was a journey. I will try and write what actual steps it took with my new rPi 4 8GB. Existing pre-made image is not compatible. Had to go through Docker, git, permissions for the USB ports etc.
Still can’t figure out how to set up as a service
Good night all, sorry for clogging up the thread. We can delete some of the posts

You’re technically on a “pre-release.” So the public version is still at 1.0.6.

How so? I run the image on 3 different Pi4s.

Yep, that’s why the images are easier. FWIW, these are all the steps used to build the image, for reference, it does the same things: https://github.com/makermadecnc/makerverse/blob/master/ci/raspbian-lite.json#L47-L61

You don’t actually need the git checkout at all any more. You just need the launch script. I guess I should have just told you to grab that, alone :stuck_out_tongue: Then install docker, give yourself docker permissions, plus the USB permissions, and then run bin/launch. I think that’s all… unless you spot osmething I missed?

I think these are all the steps for a fresh Raspberry Pi. It avoids downloading the whole git project and just downloads the launch script(s).

sudo echo 'KERNEL==\"ttyUSB[0-9]*\",MODE=\"0666\"' >> /etc/udev/rules.d/49-makerverse.rules
sudo echo 'KERNEL==\"ttyACM[0-9]*\",MODE=\"0666\"' >> /etc/udev/rules.d/49-makerverse.rules

curl -sSL https://get.docker.com | sh
sudo usermod -aG docker pi
sudo systemctl enable docker
sudo systemctl start docker

mkdir -p ~/makerverse/bin
cd ~/makerverse/bin
wget https://raw.githubusercontent.com/makermadecnc/makerverse/master/bin/launch
chmod +x launch

cd ~/makerverse
./bin/launch

Then to make it a service:

cd ~/makerverse/bin
wget https://raw.githubusercontent.com/makermadecnc/makerverse/master/bin/service
chmod +x service
wget https://raw.githubusercontent.com/makermadecnc/makerverse/master/bin/build-service.sh
cd ~/makerverse

./bin/service install

Premade pi image works great!

Bin/launch (after CD makerverse) also works great.

Phone can connect (Samsung/Android/chrome mobile) to makerverse but I cannot talk to the machine. I did make a user account as you suggested but I have not made a .cncrc file yet. Could that be the reason I cannot connect?

OR, is it something else newbie that I’m doing?


Ok I figured this @#$&%©¢€ out for myself! (Kinda proud, not gonna lie).

From my phone, using VNC, copy and past, nano, and the little bit of knowledge I gained this weekend, I was able to write a new . makerverse file in the makerverse directory.

Kinda proud of myself but also super grateful for the guidance from @zaneclaes (with foundational help from @madgrizzle and @Orob). Thanks y’all.

Now to fumble and newb my way through calibration. I have my original holey values and my ground control.ini file, can I use them to leapfrog some steps and get going?

I have read above that the values should be read from the arduino. Compare the presets what you find with the GC.ini (motorspacingx =, motoroffsety =, bedheight =, bedwidth =)

1 Like

I’ll try to get a pic of the error screen. I saved the SD with the image on it. It never actually booted from the image
I’ll try your suggestion for getting the service set up.
It’s all good. Got to relearn some command line stuff and new stuff (git)

This shouldn’t have been necessary. It looks like you got stuck on the “Create Workspace” part. I believe you’re using the Mega (Maslow Classic)? Which firmware version?

I’d love to get feedback on the Calibration process itself. That said, as Gero pointed out, if you review your settings (in the “Maslow” panel) and everything looks right (same motor spacing, motor height, chain tolerance, etc.) then it should be already calibrated.

I’ll check this for you after work today.

I saw someone else was hung up on the creat workspace step and the answer was a new file so I tried that.

I understand, but when you go “off-script” (following instructions from others in the forums) it makes my job extremely challenging. I know I’ve said it a million times but: follow the README. If it doesn’t work, then I need to fix it. If something’s missing, I need to fix it. But when you follow random instructions on the forums, it destroys all my expectations about how your system is setup, and makes debugging very very hard. And if people are running commands I don’t know about, then I don’t know to add them to the README.

DIY gonna DIY. Real-world stress testing and user experience test runs, what can I say?

2 Likes

Haha, fair enough. I’m just really interested in making sure that the install and first-use process is totally seamless :slight_smile: Once this goes public, there’s only one chance to make a first impression (as they say).

I’ll wipe the M2 now that I have a spreadsheet of what the numbers are and start from a blank sheet and see if I can make it all the way through the calibration on the one and then the other shield. If the stars align I’ll get it on video this evening, but that might be a stretch.

Hope this posts correctly. Copied down the image yesterday. Flashed to the SD card today

1 Like

Notice the line ‘Start4.elf: is not compatible This board requires newer software’
Happy to test a new image if one gets built.

result:
pi@makerverse1:/ $ cd ~/makerverse
pi@makerverse1:~/makerverse $ ./bin/service install
-bash: ./bin/service: No such file or directory
pi@makerverse1:~/makerverse $

Also, for some reason the first wget line gets a ‘404’ second one is fine

Interesting. I built the RPi image based upon the 2019-09-30 release. But my RPi4s are not 8GB specifically. I know those were released later. I wonder if they differ from the rest of the RPi4 series in their requirements. I’ll work on upgrading the base image to the latest Raspian release as a fix and let you know when it’s done.

Excellent. Happy to test and/or assist.

Manual install issues/suggestions:
Note, I am starting from a fresh Rasberry Pi OS image (new OS name)
I am copying the commands as noted in the read me into my command line
The commands to add the lines to the rules file did not work, “Permission Denied”
I used:
sudo Touch /etc/udev/rules.d/49-makerverse.rules
sudo nano /etc/udev/rules.d/49-makerverse.rules
pasted the rules to the file and saved
“Enter the source code directory from the command line…” Confused me, possibly use “cd to…”
After nmp install completes I recommend not running nmp audit fix. I tried that on the first run and there were issues. Didn’t try it this time. I can.

Attempting to install the service:
pi@makerverse2:~/makerverse $ bin/server install
sudo: bin/build-service.sh: command not found
cd to bin, warning not to run as sudo.
I verified the files do indeed exist.

I have a couple boneheaded questions on the readme from the github repository for the server installation. I clicked in the readme and tried to literally just do what it said… mostly.

Attempt #1

I created a folder and copied the /bin/launch file and tried to run it (I changed the name to l.sh and ran it with ./l.sh)

it failed.

Attempt #2

  • cloned the repo
  • from the ~/mv/bin folder, tried again.

Docker is not running

> sudo apt-get install docker

Attempt #3
blahblah> ./launch
Docker is not running

>docker start

some message about needing a container to start. Isn’t this what makerverse is trying to do

kept reading. see docker section… went there and that is where the instructions are that I think I need (this is like a real-time journal).

>curl -sSL https://get.docker.com | sh

docker appears to already be installed on this system

so I go to the next command

>sudo usermod -aG docker “$(whoami)”
sudo systemctl enable docker
sudo systemctl start docker
syncronizing and executing… (paraphrasing)

that looks promising. Next to add rights to the 49 maslow rules file.

>sudo echo ‘KERNEL=="ttyUSB[0-9]",MODE="0666"’ >> /etc/udev/rules.d/49-makerverse.rules
>sudo echo 'KERNEL=="ttyACM[0-9]
",MODE="0666"’ >> /etc/udev/rules.d/49-makerverse.rules

permission denied because the 49- file does not exist
>sudo nano /etc/udev/rules.d/49-makerverse.rules
pasted in :
KERNEL==“ttyUSB[0-9]",MODE=“0666”
KERNEL=="ttyACM[0-9]
”,MODE=“0666”

ok back to run launch

Attempt #4
>./launch

pi@Maslow-D:~/mv/bin $ ./launch
Makerverse launching from /home/pi
Docker is not running.

pi@Maslow-D:~/mv/bin $ sudo systemctl status docker

● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: e
Active: active (running) since Wed 2020-09-02 19:30:04 CDT; 50min ago
Docs: https://docs.docker.com
Main PID: 11039 (dockerd)
Tasks: 13
CGroup: /system.slice/docker.service
└─11039 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/contai

Sep 02 19:30:02 Maslow-D dockerd[11039]: time="2020-09-02T19:30:02.938555634-05:
Sep 02 19:30:02 Maslow-D dockerd[11039]: time="2020-09-02T19:30:02.938603864-05:
Sep 02 19:30:02 Maslow-D dockerd[11039]: time="2020-09-02T19:30:02.938651313-05:
Sep 02 19:30:02 Maslow-D dockerd[11039]: time="2020-09-02T19:30:02.939410284-05:
Sep 02 19:30:03 Maslow-D dockerd[11039]: time="2020-09-02T19:30:03.879935607-05:
Sep 02 19:30:04 Maslow-D dockerd[11039]: time="2020-09-02T19:30:04.340632554-05:
Sep 02 19:30:04 Maslow-D dockerd[11039]: time="2020-09-02T19:30:04.430253537-05:
Sep 02 19:30:04 Maslow-D dockerd[11039]: time="2020-09-02T19:30:04.430939694-05:
Sep 02 19:30:04 Maslow-D dockerd[11039]: time="2020-09-02T19:30:04.618061736-05:
Sep 02 19:30:04 Maslow-D systemd[1]: Started Docker Application Container Engine

Attempt #5
pi@Maslow-D:~/mv/bin $ ./launch

Makerverse launching from /home/pi
Docker is not running.

According to the raspberry pi, docker is running… but launch apparently it isn’t seeing it, so is the sudo apt-get install method a bad way to install it? I’ll uninstall it and do it exactly per recommendation…
>sudo apt-get uninstall docker
>curl -sSL https://get.docker.com | sh

adding your user to the “docker” group with something like:

sudo usermod -aG docker pi

Remember that you will have to log out and back in for this to take effect!

>sudo usermod -aG docker pi
logout
login

Attempt #6
~/mv/bin>./launch

Makerverse launching from /home/pi
Docker v19.03.12 detected
Updating makerverse/core:latest…

OK, now we are getting somewhere!

downloading 195 MB
.
.
.
downloading 320 MB (? seems like a lot, but I like that you can see what it is doing and I don’t wonder if it is working or not)
Status: Downloaded newer image for makerverse/core:latest
docker.io/makerverse/core:latest
Killing prior instances…
Error response from daemon: Cannot kill container: makerverse: No such container: makerverse
Launching makerverse/core:latest…

launched web page
looks good
ports are there
selected port and baud rate

2020-09-03T01:41:20.642Z - error controller:Maslow:ttyacm0 Error opening serial port “/dev/ttyACM0”: [Error: Error: Permission denied, cannot open /dev/ttyACM0]

looks like a permissions issue. this is where I stop for now. How do I get permission for opening the port?