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

I didn’t, though. I used web control as my first ever CNC app for many months before I bought my sainsmart. Within 24 hours, I was making fewer mistakes with CNCjs than with web control. No disrespect to WC, I just always struggled with it. I never got things like pause working, and generally generally found myself making a ton of mistakes. Tho, part of it may have been due to troubles using it on a tablet, where I noticed it had a tendency to not update correctly and get confused when running long (8 hour) cuts.

This is really too early for me to say because I have not cut yet with makerverse, so it isn’t fair to totally be against it… and I’m not. I’m just finding lots of issues though and just getting it to the point where it can be calibrated has been much more difficult than either GC or WC. WC just worked for me as did GC. WC was much more difficult to get set up as a developer, but once I did, the world opened up. I hope to get there with makerverse, but it is proving to be much more time consuming so far. I’ll own the fact that I’m not doing everything right either. Thanks for breaking the trail and really doing all the heavy lifting.

Btw, everyone using a M2: I just pushed an update (thanks for the bug report, @Orob )

Well, what I’d like to understand is: was Makerverse hard to use? Or hard to install? I mean, if it was the installation that was hard, we shouldn’t really be considering that bit – it’s a beta. But if it’s hard or confusing to use once the app is actually open, I’d like to hear specifically how. I mean, clearly something gave you that impression…

Also, I think you’re conflating the beta / testing experience with the app. For example:

It’s very normal for compilation to take more than 1000x the resources of running an app. When I work in the field, we use entire server farms to build apps. That doesn’t mean that the apps are complicated.

Normally, a user should not be building the app. It should be a ~10 minute or less install script, now that bin/launch should be working.

developer install was frustrating and having never used the production version, part of my wariness may be simply that it doesn’t seem user ready.
I pause when the kit seller says in their training video to be sure to be next to the power feed when you first plug it in because you may need to cut power (because it goes nuts sometimes). That to me does not instill confidence.

Intuitive software: The icons on the left represent the different machines but I have 2 that are the same type but they look the same. I can’t tell which is which unless I read the web address or know the port numbers, but the port numbers are based on which was plugged in first and they will flip flop if plugged in the wrong sequence. I’m not a fan of scrolling down docks to find information. Sometimes when the due connects, the info data doesn’t run, so you have to know the I command to see if it is really there. If something doesn't work, there is no error explaining why, just a number. error 2, error 4, if something is wrong, there is nothing. If you have the wrong baud rate, it looks like the port is open, but there is no way to change the baud rate without redoing the .cncrc file. This is not inuitive. there is no dialog box to allow any type of setting or a menu, we type in cryptic commands based off of text explanations found in a boot script that flies past as the serial port connects. I’ve since put all these in a spreadsheet and I’m now tracking which ones matter for what, but I don’t think I should have to do that. I’ve used cura and that is intuitive. right clicks do things. There is no right click menu, no indication of anything being wrong. I’m supposed to intuit all that is going on.
The buttons on the screen don’t work or aren’t supported, so why are they there? there are multiple workspaces. machine position, work position, local position.
One of my boards is out to lunch. It starts up ok and then repeatedly does this last line forever:

I found that error message in the due firmware under triangular forward. It is creating issues with the other due board communication with makerverse. That is all I have for now.

I think the key point is that people develop their understanding of something based upon their first exposure to it and sometimes its not simple to move to a different way of thinking about it (profound, huh?)

My first exposure to CNC was ground control and I made webcontrol to mimic it as best as I could to help people transition to it. CNCjs thew me initially because it included things that the Maslow does not support (e.g., workspace and machine space coordinates) I had to research/study up on these things to understand what was meant by them in relationship to how my mind perceived CNC (i.e., center and home). I’ve been using CNCjs pretty much exclusively for about 8 months now, but running Marlin, and am used to it though.

I do think ground control / webcontrol is a “simpler” interface and provides more feedback that is specific to the Maslow but CNCjs is a better written program than webcontrol, is more sustainable, and I think it is the right path forward. What you did on calibration I think is great. To me, it’s very easy to follow (from what I’ve seen).

I don’t know how much an effort it would be, but if there was a way to “replace” the top right widget with a Maslow-specific one that looked like ground control / webcontrol , I think it would greatly ease the transition for people.

Again, great work and I appreciate the effort here. If I had time, I’d try my hand at some of it, but all I can do is offer my encouragement.

3 Likes

I think it’s the shuttle widget you’re referring to. In the last post I mentioned it was the one bit of UI I wanted to replace. I agree that it’s not as intuitive as it could be. I already have a Maslow specific widget, but I think a better shuttle design would be a benefit to all machines.

That said, the shuttle widget is VERY powerful, just not as intuitive as I’d like.

1 Like

That board’s memory looks corrupted. Notice how the machine width and height are the same, and the chain over sprocket is an invalid value. I’d recommend resetting the EEPROM or copying the settings from a working board.

It also seems to not be on the latest firmware, given that the $92=-12.7 (the negative default value we fixed yesterday)

You’ll notice that the calibration chain length (set by “define home”) is 838. That’s extremely short. Standard value for center of stock is around 1530. So either it wasn’t calibrated, or the bad settings made it not work right.

Huh? If you’re referring to MakerMade, this was a problem with the Due firmware I attempted to fix by adding soft limits and enforcing calibration.

I just added the multi-workspace feature last week. It supports custom icons, I just haven’t added them to the Options yet :wink:

Hm? This is expected. I think you’re over-thinking it. If it says connected, it should be connected.

The app keeps the connection open until you explicitly close it. If you reconnect it doesn’t re-spit-out the values again. This is the same reason it’s safe to use Makerverse on 3 machines at once, where I ruined a lot of material doing that with web control :wink: As long as the Maslow widget loads, it’s fine.

That shouldn’t be the case. Whenever I see an alert, I get a big error alert message banners with the plaintext version of the error and a link to a help page how to correct it (OTOH, WebControl never once showed a single alert on my tablet in 2 months). Could you elaborate? Which errors? Which board?

This is confusing. You should never have been able to create the workspace. Could you please explain exactly what happened? You should literally have never gotten past the homescreen if it did not connect properly.

The other thing I’m building now is “machine profiles.” You won’t need to select a baud rate, you just select your machine instead. It sounds like you are identifying the “single purpose” nature of WebControl. If WebControl wanted to support the M2, it’d run into the same problem since the two use different baud rates. It’s only because WC was “single purpose” that you could ignore such things. Yes, there are a lot more options in Makerverse, but I see that as a feature. That said, I’m striving to make the options simpler.

I’m confused how you even created a workspace with the wrong baud rate. The UI shouldn’t let you create the new workspace until it has identified the device. Like, you should be forced to sort this issue out on the home screen, and you shouldn’t have been able to continue until it worked. And it doesn’t make sense to edit the baud rate on a workspace once you’ve successfully connected, since the baud rate never changes. Could you elaborate?

Which buttons in particular don’t work? Sleep is the one I can think of. I agree, the problem is Makerverse supports all machines (not just Maslows) but doesn’t totally hide features which Maslow doesn’t support. But this is true of other machines as well. My SainSmart doesn’t support sleep either. I want to use the “machine profiles” to turn off features that don’t apply to a given machine.

1 Like

I’ve ordered a couple 32gb micro SD cards for my RPI and will do a clean install once I have them and give it a try.

Just curious, why did you need new cards? Don’t want to overwrite an old OS? The download is only ~1.3GB for the image, and I haven’t used more than 5GB on the installed device.

A couple of questions which may have been answered before. A simple ‘covered above’ will do and I will hunt it down
1: Can Iswitch between rPis?
2: Does the firmware on the arduino/sheild have to be updated for Makerverse (currently set up for WC & Holey calibration)
3: It’s not clear and is Makerverse/CNCjs accesible via a browser?

I had read through the Read me and will be doing so again. Happy to dig through this thread and find answers if they already exist.
Looking forward to giving this a run

Do you mean “plug in the Maslow to a different RPi”? Yes, the Maslow settings are saved on the Arduino board, not in Makerverse.

See the original post. It details the hardware requirements.

The very first line of the README says: “A full-featured web-based […]”
And the top of the first section (installation) says: With this approach, you can connect to the Makerverse app from any web browser on the same network.

Was this language not clear? How can I make it better?

1 Like

My current RPI is set up with Webcontrol and I don’t want to lose that configuration. Instead, I’ll set up a second micro SD with Makerverse and swap back and forth between them. That seemed the best way for me to have a fall-back. The cards were only $4.50ea on Amazon.

Bob

1 Like

Makes sense! I hate to sound like I’m challenging everybody, just wanted to make sure you didn’t think it required a 32GB card fro some reason :wink: Since we’re not building the app from source any more, it doesn’t need nearly as much space.

I think the part that many will miss is that remote access via web browser is turned off by default (for security). It is only later in the README that it suggests that you need to change the setting to allow remote access.

I understand the reasoning for the default but do think it will confuse newbies.

Makes sense. I actually turned it on by default in the RPi image for exactly this reason.

However, I am going to need to enforce that people create a user account (login) for remote access. The security geek in me really doesn’t like the idea of creating a “foot-gun” (i.e., the default settings let you do something you shouldn’t do).

I’m simply listing anything I can think of because you asked. Not because I have a major problem with it.
I am sure I’ll get comfortable with it and it will be fine, but in the interested of discussion and in an attempt to provide useful feedback that may generate constructive discussion and possible improvements for other users, I have tried to be as critical as possible. I’ll stop if it isn’t helpful.

webcontrol had a trace line to follow and a log file and an alarm status indication. But it was cryptic. Error 2, Error 4, and I think I saw an Error 7. The

Message:unable to find position

error gives no indication of what to do to fix it.

I understand there are complexities with single and multiple use. The issue was to get makerverse to work at all I had to make the .cncrc file. I had it in the wrong location because I breezed past a “./” in my initial read and then home section never detected a serial port at all, so that screen is useless to set up a new machine. I had to go back and recreate the .cncrc file and then the only reason there is any baud rate is because I tried them all to see which one worked after looking at the firmware to verify what it should be. Why are these at 38400 and 57600 instead of 115200? Is the mile long cable a data error generator from the classic? Why is the Due using a lower baud rate? These questions are rhetorical and I don’t expect an answer in this thread, but it seems weird that a faster processor would go to a slower baud rate unless the clocks are constrained and require it. If the port exists, the port opens in makerverse regardless of baud rate compatibility. Hardware flow control may or may not be checked. I think a basic maslow profile or M2 should elaborate on what these setting should be rather than let a user guess wrong and have to search a forum or firmware file to figure it out.


The zero out workspace/coordinate system for the Y axis issue I posted about last night in particular does not work. It is “unsuported” but is prominent on each of the axes for the workspace in the shuttle widget.

I’ll stop complaining about this if you want. The goal here is to get this software to a better place and this is the only way I know how to help. Thanks for your consideration.

Sorry, didn’t mean that to sound snarky! I certainly want that kind of feedback. I can see how you got to that conclusion, i.e., “no text = unsuccessful startup.”

Right, but that UI never worked on Mobile or Tablets. So I had to go back inside to my desktop to actually see the alarm :wink:

I’m actually working on that in Makerverse, now. I now have it detecting the “position error,” and giving you a button to reset settings to defaults (and then re-start calibration).

That’s strange. It should be auto-created if it does not exist. What error were you seeing?

edit note I renamed the file to .makerverse in the latest release. Better now than later!

The Baud Rate is a property of the firmware, not the Makerverse or the cable, and never changes. The Due firmware uses 38400, whereas the Maslow Mega firmware uses 57600, and my SainSmart uses 115200. You simply need to know this whenever you work with an Arduino device (just about every Arduino tutorial starts by saying “the baud rate is…”). Which is why I’m creating “machine profiles” so you don’t need to know it :wink:

Yes, that’s what I mean when I say “Machine Profiles.”

I assume you know they’re grayed because you need to press “Unlock.”

On the left, you’re right that the Maslow does not let you zero the Machine Position via the X-axis or Y-axis only. You need to home the X/Y axis together via Set Home. It’s a good idea to hide these buttons. I’ll get that in to the next release.

However, the zero of the Work Position should work. Are you sure it’s not working? What specifically happens when you press any of the right-side “zero” buttons after unlocking?

Please don’t!

My interpretation: you’re running up against a lot of the features present in other CNC machines. These features may seem confusing at first, and it’s a good idea that I should work to make them not confusing. This will help everybody get started easier. But a lot of it comes down to “hide the stuff that doesn’t work on my machine.”

1 Like

Re: that last line. Clearly why I need to re-read the Read Me a few times… :smiley: