Thoughts on designing a new controller

I guess the real question is, What are are the requirements?

At $35 the pi3b+ or pi4 are hard to beat as you get all the bells and whistles and four cores with lots of GPIO. Pi4 also brings usb3 and larger ram options up to 4g. As well as GigE, Wi-Fi and Bluetooth. Perhaps overkill. It if there is a desire for the community to embrace and extend easily then Pi has the advantage. We also have a nice large existing audience in Pi world to turn on to the wonder of CNC and grow the community. And they have big PR coverage via their blog and things like toms hardware dedicated Pi section.

If I can play devil’s advocate for a sec… what are the negatives of a Pi4 for new controller? Also if you bake it it is trivial to get one overnight in many countries via Amazon…

Jeff

3 Likes

Linux (or any other general purpose OS) is not ideal for hard real-time work
with short deadlines. some of this can be made up due to the much higher clock
rate (if you increase the speed of the cpu by 200x, you can afford to loose a
few hundred clock cycles), and some can be made up with creative programming
(dedicating a core to real-time work and not letting the OS interupt it)

There are arguments that the Pi is not ideal hardware (similar reasons, it’s
complex and there is management stuff that could interrupt real-time work) and
that the BBB is better at real-time work.

it’s 3.3v (but just about everything fast is going to be 3.3v)

it’s bigger than it is strictly needed.

David Lang

What are the timing constraints? How precise in ms? In the broadcast video world the timing is extremely tight and sensitive and we supported 100+ multi-megabit simultaneous parallel streams under Linux. I would be surprised if the maslow has tighter requirements than just a few parallel video streams.

I’m not sure size is an issue. It’s the size of a credit card. Given that the frame is meant to hold a 4x8 sheet that seems acceptable?

Yes there is scheduling optimizations that are required to keep tight timing tolerances but there are also packages available to help optimize the scheduling as well. Lots of fire power 1.5-GHz, Quad-Core Broadcom BCM2711B0 (Cortex A-72) but efficient coding and scheduling for motor control is still necessary.

And finally, as far as being complex, can you elaborate? The Pi is easily the most widely deployed and widely supported and documented option. Mature and stable supply chain and pricing and specifications. And it’s very popular with makers who are a good target for maslow…

Jeff

1 Like

For those who haven’t seen the specs: https://www.raspberrypi.org/products/raspberry-pi-4-model-b/specifications/

A few interesting observations… with built in camera ports and cameras as optional accessories the optical calibration route could be easily supported. As well the board has OpenGL support on the output side…

1 Like

Whoops. Meant to post this here but it ended up on the end of @Bee pi4 report. Sorry for the double post.

"Thanks. I did see that and was anticipating it would be raised. It does indeed sound like a few teething problems with the launch of the pi4.

I did notice that there is a software update to reduce power and heat and they are working on getting all the software images rebuilt. I suspect this will get ironed out over the next 90 days or so. They are now the highest volume computer producer in history so this isn’t their first rodeo. I’m confident the negative experience reported in that thread will be a thing of the past long before a new maslow controller needs to ship and probably before any serious code work is done.

I am disappointed that the pi4 launch does seem to have been a bit rocky although a sample of one is not necessarily indicative of overall experience. However I am also aware of other complaints about power and heat, so something is suboptimal.

In the mean time, the 3B+ model also continues to be available and doesn’t have any of the reported issues and is pin compatible with the pi4 so there is a good migration path there. Since the base pi4 is the same price as the pi3b+ there is a built in upgrade in the wings and a solid path forward until then.

Having managed supply chain for this type of stuff and knowing the reputation of the Pi foundation I wouldn’t hesitate to design around the 3b+/4 and benefit from the vetting and optimization work that the massive Pi community will be doing in parallel with the maslow controller design. The value of that community effort and the foundation effort going on in parallel shouldn’t be dismissed. Always better to stand on the shoulders of giants when you can.

Jeff"

1 Like

Now that I have a Pi4 running ( see the Pi4 thread) I’d toss my hat in the ring saying to design around the Pi3 or Pi Zero. This has multiple advantages. I think it’s obvious something like web control is the future and this allows for a 1 piece of tech solution. It’s scalable and affordable.

The power of the Pi over all others is the amount of users and solutions. As the Pi 4 takes hold the community and support around it will allow it to stand on it’s own.

I have looked at the Pi Compute Module to lock down another system and it’s complex to build for, not impossible but an added expense that just wouldn’t fit this use case.

My goal would be to use fewer parts to simplify the design. If I were designing it I would design it more like a case that housed the PI, the power supply, a power strip and the controller. All in one serviceable unit.

Thank you

3 Likes

I love Brandon’s suggestion. Design it as a case that housed it all and the end user adds the pi. Cleans up the bare board issue and can help with cooling and dust issues. Like a compute module writ large.

Maybe something in this spirit but for cnc: https://www.argon40.com/argon1/argon-one-pi4.html or at least know it is out there. That is the power and momentum of the ecosystem.

Jeff

1 Like

Thanks - I’ve been working on case design for a while, it has a fan forcing air to move though it. I has a set of channels designed to pull in dust and cause it to travel and fall out an exit so it never gets to the electronics chamber, but the flowing air does. It uses the weigh of the dust over distance to cause it to fall.

I hope it makes sense as described.

Thank you

2 Likes

This is awesome! I’m excited for the future of Maslow CNC!

2 Likes

I think for me the only concern with using a Pi as the controller would be cost. The Pi itself is $35, but by the time it gets a power supply and SD card it ends up costing more like $45. The need to interface to the Pi using headers means having a controller board with both SMD and through hole parts which drives the cost of those up. Plus the cost of sorting and shipping all those parts so I would say that using a Pi as the controller drives the total cost of the machine up by close to $100 which is a lot.

Something like this esp32 board on the other hand could be included in the driver board for $6 which would actually reduce the cost and complexity over the current Arduino Mega.

No matter what we do, we’re going to solve the problem of plugging the power supply into the wrong thing :grin::grin::grin:

3 Likes

I think integrating the controller onto the motor controller board is a good idea. It might also make it attractive to a larger market because it would be, in essence, a programmable motor controller that could be uploaded with different firmware to do different things.

4 Likes

I think for me the only concern with using a Pi as the controller would be
cost. The Pi itself is $35, but by the time it gets a power supply and SD card
it ends up costing more like $45. The need to interface to the Pi using
headers means having a controller board with both SMD and through hole parts
which drives the cost of those up. Plus the cost of sorting and shipping all
those parts so I would say that using a Pi as the controller drives the total
cost of the machine up by close to $100 which is a lot.

I think I’ve seen SMD header sockets, so the problem may not be quite as bad as
you are thinking.

and remember, this eliminates the need for an external PC (and everything that
involves), so overall it’s still a win.

Something like this esp32
board

on the other hand could be included in the driver board for $6 which would
actually reduce the cost and complexity over the current Arduino Mega.

and this is exactly the decision to make.

one the one hand, use a future-proof Linux based machine (that can probably run
LinuxCNC and not have to maintain special firmware), but have the cost of a Pi
and the ease/complexity of updating via SD card rather than firmware flash

on the other hand, have a cheaper system that’s always going to need custom
firmware (grbl won’t work as it assumes it’s got the entire machine, and we want
to integrate webcontrol or similar as well as the grbl functionality)

No matter what we do, we’re going to solve the problem of plugging the power supply into the wrong thing

yep.

David Lang

2 Likes

I sometimes find it useful to ask what are the three most important capabilities or characteristics that define a product or a project. More than three and it gets exponentially more difficult to manage. The answers should include both the what and the why.

As an example and by no means trying to say these are or should be the goals of a maslow revision but It might be something like:

  1. Develop a scalable and adaptable large scale CNC (re-using as much of the exisiting capabilities of the Maslow project and relevant opensource CNC advancements as possible) capable of processing 4x8 sheet goods at 100% coverage while still fitting in a typical one car garage/hobbyist space. The accuracy and repeatability of the machine should be aaa and bbb across stock materials of type and max thicknesss of ccc.

  2. Develop supporting workflow tools and integrations that lower the barriers of entry for users new to CNC.

  3. Target a price of no more than $750 for a self assembled kit with a total project cost for s typical user of $950 to first cut.

I hear what you’re saying @bar with the price but I would ask the counter question of whether the $95 estimated additional cost is an issue of not. While it is cool that the original was 399 or 499 people also spend a lot more of their own time making for work and improving accuracy. Would more or less people buy it at 750 or 699? That’s an interesting question…

People often assume there is a direct relationship between price and demand but it is more nuancedd than that. One of my early products was $x and sold well. An adviser suggested I increase the price to 1.5x and see what happened. Sales went up dramatically. Not down. Up.

I think one of the perception issues with the existing Maslow is “it can t be that good since its only $499 and a 'proper CNC starts at 5k, 10k whatever”. Pricing is part of branding. By increasing the spec and smoothing off rough edges and raising the street price target to $750 or $1000 I believe the interested market and demand will expand not shrink. Especially if that increase is accompanied by smoothing rough edges, like easier setup, improved z axis, and most importantly improved and repeatable accuracy.

It takes serious financial and time investment to pursue CNC on this scale. The targets are not utterly casual but rather often enthusiastic woodwoekes and makers who are willing to spend reasonably on their hobby. I would pay more for a number of the known weaknesses to be polished off. And witness people regularly posting offering to pay others to help them with setup and calibration.

And, of course, the goal must include profitability and sustainability so the project can evolve and flourish. It’s amazing Bar and Hannah and all who helped make Maslow MkI work created and successfully and profitably delivered it to market. And that MakerMade and others can carry on.

If we want Maslow to be a viable long term CNC in the initial buyers home shop and not just a stepping stone to a different CNC I would encourage a discussion around capabilities and price targets. I think a bit higher price could yield a much more versatile, extensible and accurate platform and most importantly increase not decrease the addressable market.

Jeff

Ps Please pardon any typos. Wrote this on a school bus shuttle thing on the way up to a lake at Banff national park with spotty coverage.

3 Likes

I do want to point out that “webcontrol” is a python application and the firmware is c++… so if a single microcontroller is used, one will have to be rewritten entirely. One idea in this case to start with GRBL work that’s been done and then try to tack on a lightweight webserver for it and push as much user interface tasks as possible to the web client running javascript.

2 Likes

one thing that people may not realize, the original kickstarter Maslow had a
completely manual Z axis, any time a Z move was needed, the machine would pause
and wait for you to change the router.

the existing hack of motorizing the depth knob of the router was something that
Bar came up with at the demand of the kickstarter backers and it works amazingly
well for a hack.

but as slow as the maslow moves, a 2.5HP router is drastic overkill, and so for
about the cost of a router (especially outside the US), you can ship a 500W
BLDC spindle, speed controller, and c-beam Z axis. It will be quieter, lighter,
faster, and probably have less runout.

Which brings up a feature the new board should have, support for a stepper for
the Z axis to make installing such a Z trivial. it’s far cheaper to buy a
pre-built Z axis with a stepper than to get one with a DC gear motor and
encoder, open loop matters less on the Z as it doesn’t move as much, and a nema
17 motor (mass produced for 3d printers) will be chaeper as well.

I agree that a slightly more expensive kit that is easier to setup should be
easily accepted.

As an example and by no means trying to say these are or should be the goals
of a maslow revision but It might be something like:

  1. Develop a scalable and adaptable large scale CNC (re-using as much of the
    exisiting capabilities of the Maslow project and relevant opensource CNC
    advancements as possible) capable of processing 4x8 sheet goods at 100%
    coverage while still fitting in a typical one car garage/hobbyist space. The
    accuracy and repeatability of the machine should be aaa and bbb across stock
    materials of type and max thicknesss of ccc.

100% coverage may be negotiable, it’s good to have it as an option, but most
people work on sub-sheet sizes (just the hassle of getting a full sheet home
means many people get it cut where they buy it)

The maslow can come within a very short distance on the sides, but needs
improvement on the bottom

  1. Develop supporting workflow tools and integrations that lower the barriers
    of entry for users new to CNC.

some of this is new tools, much of this is supporting existing tools (people are
really reluctant to tackle learning new CAD software once they know something)

  1. Target a price of no more than $750 for a self assembled kit with a total project cost for s typical user of $950 to first cut.

sounds reasonable

I think one of the perception issues with the existing Maslow is “it can t be
that good since its only $499 and a 'proper CNC starts at 5k, 10k whatever”.
Pricing is part of branding. By increasing the spec and smoothing off rough
edges and raising the street price target to $750 or $1000 I believe the
interested market and demand will expand not shrink. Especially if that
increase is accompanied by smoothing rough edges, like easier setup, improved
z axis, and most importantly improved and repeatable accuracy.

to be fair, part of it is that the maslow (especially the first design) was not
that accurate. We need to fix this (get the holey calibration merged and see how
much that helps everyone, it seems like a pretty clear win for everyone who’s
tried it)

David Lang

5 Likes

SMD header

5 Likes

Actually this is the smd part for the GPIO port -

https://www.digikey.com/product-detail/en/amphenol-icc-fci/20021321-00040T4LF/609-3779-ND/2209124

Thank you

1 Like

This is another excellent suggestion. We also re-home the z-axis pretty regularly so position holding when powered off is less of an issue there as well. That’s a fantastic idea.

The surface mount headers are a really good point. They would need to be on the bottom of the board which is still a little complicated, but removing through hole aspect is still a win.

I get what everyone is saying around some price increase being tolerable, but going to a four motor design is already going to increase the price somewhat. I know for a lot of people a price increase wouldn’t be a big deal, but I know for me and some people it would be. If possible I would like to offer the lowest possible price point for a viable machine with the option to upgrade easily. I’ve got some simplifications in mind that should partly offset the cost increase of going to four motors so if it is possible to keep the cost low I would like to try.

I found some guys at the local maker space who run a business around integrating raspberry pi type things into products and they agreed to let me buy them dinner in exchange for picking their brains about what the best options are. I will bring up all the things everyone has said and see if they have any new suggestions to offer.

6 Likes

One of the advantages to including an RPI in a product is that it could then support optical calibration. I don’t know of any “arduino” that can readily run OpenCV. However, you could always run the optical calibration portion on a PC (Windows, Mac, whatever) and communicate the results (i.e., detected location of sled) to the controller.

1 Like

@bar I’m not very familiar with the 4 motor configuration. Do you know of any good threads that talk about it to learn more?