STM32F1/F4 3d Printer board. Worth a kickstarter?

victor_pv
Tue Dec 19, 2017 3:45 pm
I posted about porting the 3d printer firmware Marlin to the STM MCUs. I have been contributing code to Marlin, and has been ran in a couple of comercial boards that came with closed source.
In the process, because I wanted to upgrade my own printer to a 3 head mixer extruder, I designed a board with 6 stepper drivers, and I’m now using it in my printer, together with an ESP8266 acting as wireless bridge, and couldn’t be happier with it. Everything works, is smooth, can control it remotely, etc etc.

So I have been thinking a lot what I want to do with my board design. I have been considering several things:

  • First is there any need for a new printer board at all? From what I have found, most boards have 4 or 5 stepper drives. With the new mixing heads seems like printers may be needed 3 or more steppers just for the extruders, then there is printers that use more than 3 steppers for the move. So 6 seems to be a minimum.
  • If there is interest in an STM board with enought steppers, should I do a kickstarter campaign to get the funds, and bring the design to commercial quality and volume prices?
  • Should I release the design after a successful kickstarter as open hardware, or should I keep the design propietary to control where it goes?
  • If I go for a kickstarter or other crowdfunding campaign, and fails to get traction, should I still release the hardware designs I have done so far?

My biggest pull is to do the kickstarter, finish the design to be not just good but great or the best, and then release the hardware design and let anyone produce/reproduce it, but with a nice and sound tested design.
But if a crowdsourcing doesn’t get funded, should I release the designs? It weights a lot on me what happened to Bobc with the RAMPS-FD: He opened the design from the start, then Geetech and possibly others started producing them, and there are some flaws with that initial design that make it unsafe (the Hotend and Bed FETS can be open from the moment the board is powered up, and if something goes wrong rather than go off, they may stay open, and potentially burn the printer, or something worst…) He has since released better designs, but all cloners are still selling the defective one in Ebay and aliexpress. The result is that a board that could be great was cloned while unfinished, and gave it a bad name, and the cloners are exposing people to fires and damages to their printers.

I’d love to get you guys ideas an opinions:
Experience with crowdfunding, whether an STMF1/F4 based board is a good idea or there are too many out there, whether opening the design if it doesn’t get finished is a responsible thing to do, and any other opinions you may have.

To be clear, my day job is not related to this at all, I don’t really expect to make much money out of this even if it was very successful, but it would provide the incentive to continue development and the funds to get it to the next level.

All opinions are welcomed, against or in favor of any option, and any experiences that you want to share.

This is a rough description of what I have so far. There are pictures of one of the prototypes in the allpcb review post:
-4 ADC inputs for thermistors.
-4 Endstops inputs (using 3 for XYZ, and an extra left for anything else)
-Heatbed separate power, and 1 mosfet to control it, tested
-2 high power mosfet outputs for hot ends, tested
-1 PWM Fan output, tested
-2 Fan outputs always on.
-6 pololu steppers connectors, tested A4988 and DRV8825
-SDCard and LCD connectors. Tested with 2004 LCD and sdcard display.
-Onboard eeprom for settings (I’m using fram atm), tested
-ESP-01 connector for WIFI bridge, tested with the excellent ESP3D firmware
-Multiple expansion pins, currently using 2 to control a Laser module, and working great.

What I want to add in my next revision, which will be the final or personal usage if I don’t decide to go any further:
-Dedicated connector for BLTouch (should work currently fine with the expansion pins I have available)
-Dedicated connectors for Laser/CNC control. Laser needs 1 or 2 pins, CNC normally 2. Currently working with expansion pins.
-Possibly replace the high power TH mostets for SMD ones.


parasole
Wed Dec 20, 2017 3:10 pm
Perhaps reprap forum is a better place for your question… did you investigate what is the add on value for your solution comparing with already present in the field? Although I am interested in this topic, I could not advise you for the reason possible to be true for many other guys over here… as a hobbyist I am looking for solutions I may reproduce myself instead of buying something ready to fly…

mrburnette
Wed Dec 20, 2017 4:11 pm
So I have been thinking a lot what I want to do with my board design. I have been considering several things:

  • First is there any need for a new printer board at all? From what I have found, most boards have 4 or 5 stepper drives. With the new mixing heads seems like printers may be needed 3 or more steppers just for the extruders, then there is printers that use more than 3 steppers for the move. So 6 seems to be a minimum.
  • If there is interest in an STM board with enought steppers, should I do a kickstarter campaign to get the funds, and bring the design to commercial quality and volume prices?
  • Should I release the design after a successful kickstarter as open hardware, or should I keep the design propietary to control where it goes?
  • If I go for a kickstarter or other crowdfunding campaign, and fails to get traction, should I still release the hardware designs I have done so far?

Victor,
I do not have 3D here (yet) so I’m just brainstorming with you:
1st bullet: If the community needs a product, is one not available. Or, are you saying that future implementations will need a new product? Would such a product not be built in-house by the current leading suppliers of 3D?

2nd bullet: I have no experience…

3rd bullet: Open Hardware release w/ Open Software. China is gonna clone anyway; you have to be first and best to control any of the market.

4th bullet: I think this is entirely up to you… but, if you do not acquire funding are you just going to trash the work-to-date? Again, I suspect the Asian market trolls the crowd funding sites looking for profit opportunity… their methods are required reading for all Ferengi business classes.

Ray


victor_pv
Wed Dec 20, 2017 4:20 pm
Thanks Ray, that’s what I wanted, some brainstorming.
About point 1, I couldn’t find any STM based printer board available to use with Marlin, other than STM’s own, which is expensive (worth it though, just not for everyone). There are closed hardware/closed source boards, but they have to be reverse engineered since not even the schematics are available, and then again they seem to be expensive for what they offer. But that’s my perception, so getting input from other people that has been looking at this subject can help validate whether an STM board specific for Marlin is really a good idea.

On the Ferengi Bussiness Classes, is the first time I see them, but I really did not expect the Chinese to have rule #4 ;)


RogerClark
Wed Dec 20, 2017 8:17 pm
Victor

Not trying to sound very negative, but …

With domestic 3D printers, I think that the existing , very cheap, solutions are good enough.

If I replaced the AVR + RAMPS board in my Mendel Max 1.5, with a STM32 based board, I doubt I would notice any difference.

The prints are always going to have a corrugated edge, and not be very strong, you can’t print anything with an overhang without adding supports which you need to clean off etc.

Mechanics and general setup of the machine will likely have a much bigger impact on my prints, than the control board, as would using different slicers and slicing settings, or potentially different 3D model generation of the STL file


victor_pv
Wed Dec 20, 2017 11:57 pm
Roger, about quality and speed of prints I agree. The main reason I went to design mine was because I wanted 6 steppers, extra serial for wifi, and extra pins for the laser (although those could have been hijacked from endstops), none of those available in my GT2560, and the 6 steppers not available in most commercial boards except the very high end ones, and for that, I’d rather design mine and have fun in the process.

Parasole, I agree with the DIY attitude, that’s the main reason I went on to design my own board, for the fun of doing it. I actually got 2 other 32bit boards seating in a shelf, one I got very cheap, and the other was free. But none had the 6 steppers drivers I wanted to use, so rather than buy another board I thought it would be fun to design one and port Marlin. And that’s the reason if I don’t do a kickstarter or anything like I’ll likely open the design, but I’m afraid of cloners going cloning them before the design is fully tested, and just giving a bad name the board.


rsc
Mon Feb 12, 2018 9:49 pm
I dont know the planner.c & stepper.c of marlin, but tinyG implements division and offset of steps for bresenham, and it translates of accumulative errors and then printer is not accurate in printing, affortunatly I solved this problem avoid division after weeks and weeks, open firmwares are really impressive, but much remains to be improved, keep going

ag123
Wed Feb 14, 2018 7:59 am
i think the board alone would see quite a bit of price competition, as chinese 3d printer kits sells for under usd $200 these days for a complete kit.
there have been some success stories (not necessarily via kickstarter), like the replicape that pairs up with a beagle bone black
https://www.thing-printer.com/product/replicape/
but this started as a winning project sponsored by TI for the startup

you could ship the h/w, firmware w/o providing the sources, and if it is possible to start small and just the board, it may possibly be ‘self funded’ and do away with the problems associated with campaign on kickstarter etc. i’ve read some 3d printers inventors tried to start up on kickstarter, then it turns out parts, logistics and manufacturing is where all the costs and problems are, the kickstarter effort eventually failed as an outsourced contract manufacturer couldn’t deliver the necessary manufacturing prowess for the costs and is further caught in logistics / parts problems as well.

i’m not sure if this is truly correct as these are merely observation as a 3rd person


ahull
Wed Feb 14, 2018 3:24 pm
Also worth bearing in mind is the bottom line. What could you realistically expect to make per board.

You are competing against the likes of the cheap $25 Melzi clones for peoples attention.

You either need to beat them on price, or add some extra magic to stand out from the crowd.

Faster, more accurate, more steppers, more sensors, more robust will do the trick to a certain extent, but you also need to get the word out that your board exists, and people have to love it. You are then looking at making boards for high end printers, so expectations are obviously going to be higher. If a crappy melszi clone puffs out half a Havana’s worth of smoke, then you shrug and buy another one, but if your $100 board bites the dust you might do a bit more crying in to your beer.
Especially when you consider that I can get a complete low end printer kit (including a melzi 2.0 clone) for not much more than $100.

If you ship a few hundred, and make a dollar a piece, then it isn’t worth giving up the day job, but if on the other hand you ship a few hundred thousand, then don’t forget to buy us all a beer.


victor_pv
Wed Feb 14, 2018 3:43 pm
Thank you guys for all the comments and opinions.
The thing that buggers me about not going ahead, is that I believe an STM32 can beat in performance and cost almost anything else running Marlin as of today. Even a basic one as an 103RCT has more pins and ports than most other MCUs, more RAM, very good performance, great prices.

I enjoyed designing it and writing the HAL for Marlin, and my board has been in use now for a couple of months in my printer for both 3d print and laser engraving, and controlled thru wifi thanks to another open project.

On the other hand, there is a limit to the time and effort I can put on this unless I can at least recover some cost.
Now that I have used my current rev for a couple of months and have identified what I can improve on, I plan on making a last revision for myself.
After that, not sure what to do, open it, kickstart it to get funds to finish it to commercial level, or just keep it private.


ahull
Wed Feb 14, 2018 4:06 pm
If you get the right supplier, then in theory you can build it for the same or less than the cost price (as opposed to the approx $20 retail price) of those melzi clones.

If we assume the cheap Melzi clone is making someone between 20 and 50%, then back of a fag packet calculations suggests build costs are around the $10 to $18 marker.

The STM is going to come in at about the same unit cost or less than the ATMEGA1284P and will beat it hands down in every respect.

I don’t know what your current BOM cost is, but I suspect if you get a quote from some of the suppliers that are knocking out those clones, they will put your design together pretty cheap (so long as you are going to make a minimum of 1000 of course).

A Kickstarter for just the board, in a run of 1000 would need to cover whatever that cost is, plus your time and out of pocket expenses. So more fag packet maths suggests…
1,000 x $20 (or whatever your quoted costs of manufacture +50% turns out to be) x 2 (*)
… would be a reasonable target for what you need to raise to wash your face and make a little bit extra on an initial product run.

All this is pure speculation, but gives a rough idea of what we are talking about financially. Better fiscal brains than mine are welcome to chip in at this point. Estimating your time is the tricky bit, so that x2 at the end might end up as x 3 or more, especially if you start paying anybody else to assist.

When I say “estimating your time”, I assume we include cost of phone calls, a few lunches, perhaps a flight or two to meet suppliers if necessary.. and any other legitimate business expenses from the project.

(*) Based on the “ Think of a number, double it, and someone will pay ” rule ;) ..
For example … … all of these suppliers are flogging basically the same Melzi 2.0 board, and it ‘aint as good as your design the prices double by the time you get to the most expensive supplier, and presumably someone somewhere is buying at that price.


ag123
Wed Feb 14, 2018 5:51 pm
i think there’d still be a mkt for the ‘board only’ attempt, but then the target crowd would be those who have an existing printer & wanted to swap the controller for something else, even if it is somewhat pricier there may still be buyers given the correct niche, some may simply want to replace 16 mhz megas with F1 or better still F4 @ 168mhz, one of the big win for the F4 is high speed hardware single precision *floating point*, but at the moment i’ve not even dip my toes into firmwares like marlin to find out how that may benefit

the risk of course is that all too soon that people ‘discovered’ this, competition using F1 & F4 would start to heat up


arpruss
Wed Feb 14, 2018 8:11 pm
What’s the practical benefit to the enduser from a faster controller board? Would the actual printing be faster? Or would control over movements be more precise?

BTW, some printers are already based on 32-bit ARM (e.g., my DaVinci 1.0a uses the SAM3X8E, I think).


ag123
Thu Feb 15, 2018 3:18 am
common g-codes apparently simply use integers
https://www.simplify3d.com/support/arti … -tutorial/
however, if the controller board does movement optimization across a series of g-codes, my guess is it can do a lot of calculations for the acceleration, constant speed, deceleration in the motor control codes, this would probably lead to a smoother print and less resonance issues. for these cases a fast mcu with floating point would likely help with the calcs

ahull
Thu Feb 15, 2018 9:38 am
I can’t think of any reason why a better faster processor on machines with six or more dimensions of freedom (X, Y, Z, Extrusion or cutting rate, Time, Temperature at the bare minimum) would not benefit from a more capable processor, so the basic idea of using an STM32FXXX is sound.

Adding more variables in the form of other motors, tools and sensors increases the workload further, so as the machines become more capable, the use of a better processor becomes a necessity rather than a luxury.

You start to hit time barriers where the printing/cutting time becomes ridiculously long due to the slowness of the processor, and/or you simply cannot feed your faster, more accurate motors, extruders, cutters, lasers etc with instructions at the rate they are capable of.

You can of course offload some work to the host, (or the cloud) but this is not a winning strategy when speed is of the essence. Anybody remember WinModems, and ‘doze only dumb printers? There is a reason they went the way of the dodo.

Local processing has major advantages due to the increases the complexity of the task.


victor_pv
Thu Feb 15, 2018 2:09 pm
Andy got to the key of the subject. For 3 axes with no levelling and 1 extruder, an AVR is enough.
When you get to delta printers, mesh bed levelling, multiple extruder, multiple steppers per axle, the AVR are hitting limits and you either disable some features, or the printer chokes at higher speeds and stutter. The is also the RAM limitation in the smaller MCUs. There are plenty of threads about people hitting those limits, and the main reason a whole lot of features are generably disabled in Marlin, and why other firmwares directly only exist for 32 bit printers.
You can get the standard Marlin for AVR, and go thru the config enabling enugh features, try to compile, and won’t fit.
So if the user can live without those, then fine, but if not, a faster MCU with more RAM and flash is needed.
Currently and for Marlin, an F4 is overkill because Marlin has been built around AVRs. After a while running in 32 bit processors, it will probably get to the point when it runs just fine in an F1 or a DUE, and the most advanced features require a hardware FPU or the extra speed.

Because of the reasons Andy and others pointed out, I’m not sure it’s worth my time to go much further with my board, or just let the existing options be the only ones, but from a performance perspective I can definitely see the advantage in the F1 board.


youprint
Sat Feb 17, 2018 1:11 pm
I think we are now in a turn in 3D printing solutions. You said that an AVR is enough to drive a simple configuration, and that’s true. But now people who use 3D printer now requesting speed and silence. It could be reach with new types of drivers (tmc 2208 from Trinamics for exemple) or new kind of intelligent drivers (L6470 ST )
These drivers are really efficient with 128 to 256 microsteps. With only 3 axes an AVR couldn’t produce enough steps. For me 32bits is the future of 3D printing. STM released their own3d printer card because they know that they have the perfect solution for that, better than NXP with their LPC17xxx or Arduino with the Due. Maybe a really cool project is to create a Rearm project for the STM chip it could work I think.
But for me the best deign is the STM one :
http://www.st.com/content/ccc/resource/ … ematic.pdf

ag123
Sat Feb 17, 2018 3:36 pm
imho for now some ‘public domain’ or open sourced slicers mainly produce g-codes that basically breaks curves and angular joints perhaps into straight lines. my guess is that most of the commands would be ‘simple’ commands that’s intended to complete a ‘straight line’ manoeuvre. The breaking into straight lines rather than say bezier curves, or ‘polyline’ segments in which there possibly are single g-codes which handle them is possibly due to the necessity to simplify the algorithms to simply draw straight lines which would otherwise be ‘too complex’ to handle for all cases of 3d prints.

but if we do the ‘simple’ (single straight line) commands as ‘simple’ commands and stop between processing the next commands, my guess is that the print would end up with ‘ugly’ blobs as motion stops while the molten plastic keeps flowing off the nozzle. it could also lead to other resonance and such issues as the motor would accelerate, linear move and decelerate or worse abruptly stop for each segment – leaving ‘jerky behavior’

but if a much faster mcu is used with lots of spare ram, the algorithm for the motor control could possibly be made to pre-process and optimise ahead the next few g-codes, do elaborate calculations so that lets say it is a polyline segment and that the next g-code is basically drawing the next segment say for a polygon approximating a circle, it may be able to do so without the acceleration / linear move / deceleration / stop and simply make that linear movements between segments/g-codes. but i’d guess all these processing is cpu / computation hungry and my guess is that the more ‘primitive’ slower mcus with insufficient ram, this attempt would simply be impossible.


madias
Tue Feb 27, 2018 3:29 pm
I think it’s time for 32bit printer boards. Even on a simple printer the software (I use Repetier) is getting more complex. With a better MCU you can calculate thermistor tables in realtime and one benefit are the steppers with more than 1/32 (even not thinking about the new TMCs): On AVR it’s only possible to drive this stepper with some tricks (and all disadvantages), more displays (TFT, touch) will come and so on. (Ok, for WIFI the STM32 isn’t really useful).
There is one real (or similar) competitor for this idea: Smoothieboard and after a small time there was the parasit clone on the china market:
https://www.aliexpress.com/item/3D-Prin … 06433.html
In this price range you wont have luck, it’s nearly impossible to lower it (and paying taxes).
But(!):
The chinese clone hardware is rubbish, dangerous and done (“designed”) by braindead people. It’s ok, using a low voltage (current) device, maybe there will be a failure from time to time, but on 3D printers the current is dangerous and you can set your house/flat on fire.
I got two of the chinese RAMPS 1.4 boards nearly on fire, caused by insufficent hardware, using absolutely bad components (Mosfets, connectors) to lower the price (and also chinese people clone everything even the layout mistakes)
So I read many reviews and forum threads about the chinese clone boards:
RAMPS 1.4: rubbish, dangerous
RAMPS FD: (for the Arduino Due): dangerous, copied all layout failures from the old design (no new design on the chinese market)
MKS SBASE V1.3 (the linked Smoothieboard clone): Bad components.
Melzi (Clones): Using the fake FTDI, no bootloader

So yes, if there is a gap, then between price and quality.

Maybe you can get a collaboration with AnalogLamp (I think he is chinese and has good connections developing hardware for lower price and he is a nice guy not to forget to give credits on his homepage like stm32duino and maple ;) )


aroldorosenberg
Mon Oct 29, 2018 7:56 pm
Definitely, considering Wanhao Mini i3 already uses a STM32F1-based board but the firmware is closed source, which means it’s dirt-cheap already. A STM32F1 board doing steps at 200khz or higher (this is the frequency of a STM32-based mach3 cnc board commonly found on Aliexpress) would be a killer, especially with the newer stepper drivers that can do 1/256 microsteps. Smoothieboard is expensive, even the chinese version. There are other STM32-based boards like Makerbase Robin and Lerdge, but I’m not sure if they’re open source or if they can do all the tricks enabled by TMC drivers (like sensorless homing).

flyboy74
Mon Oct 29, 2018 9:11 pm
A kickstarter will let you know if other want your product or not.

The 2 things your board offer that cheap board around now don’t is 6 steppers for full colour prints and wifi connections.

I have a 3dprinter myself and although I wouldn’t use full colour prints for ym purpose have wifi connection would be desired if I could send the slicer file to the printer without having to down load on to the sd card but most of all if u added a camera interface that can take a still pic every 10 secs and send it via WiFi to an app on my phone because 3d prints take forever to print and being able to montier the print from my phone would be super super handy.

Many of the STM32 MCUs have a HW camera interface


aroldorosenberg
Tue Oct 30, 2018 9:45 pm
Color printing is still a pretty lame gimmick, only a few commercial printers do it and it doesn’t look good. Tool changing would benefit a lot from extra stepper drivers, however, or one could use one stepper for the extruder and two for bed self-leveling in the same manner as Felix Pro printers, but I’m not sure if any firmware other than repetier supports this feature already.

Leave a Reply

Your email address will not be published. Required fields are marked *