hi all,
ok so i've been looking around and the practice of creating a "modular" 3d printing electronics board is extremely common, thanks, many years ago, to the stupid, stupid decision to use prototyping (evaulation) plugin boards with 1.3 to 2.0 *amp* stepper ICs mounted onto micro-postage-stamp-sized PCBs. the problems these cause are endless.
*some* people have actually read the datasheets associated with these driver ICs and have designed PCBs that respect the advice of the designers, by making sure that a large part of the PCB's copper is used as a heat-spreader. however the practice is not very common, and the people who make such boards are typically actual well-trained electronics engineers from the west, but who then use western PCB manufacturing and assembly plants, end result: very expensive boards ($120 to $200).
as i would like to see both a low-cost board made *and* have a decent design, and having researched this for many weeks and found that what i am searching for DOES NOT EXIST i need some help. the board i believe is best started from is the Duet WIFI: https://github.com/T3P3/Duet
this uses 2.5A TMC2660 "silent" steppers and importantly they're SPI-based. the idea is to cut the DuetWIFI down to the *absolute* bare minimum, turning it into the exact same thing as TRAMS (which uses the 1.3A TMC5130).
so instead of an on-board ATSAM4, you use an arduino due. instead of WIFI you use a *standard arduino WIFI shield*.
now, debatable is whether to split out the MOSFETs, endstops and thermistors into their own separate shield as well, which i feel might be sensible.
in particular i would very much like to "stack" the steppers because i have a design where it is going to use *four* z-axes. in a first iteration those may be wired up as 2x 2-serial in parallel, however it would be very *very* nice to be able to just add a second "stack" of 4 z-axis steppers and use them to do automatic bed-levelling. so to do that it would mean having on-board jumpers that could select alternative GPIO pins... or maybe to use an I2C-based or SPI-based GPIO expander in order to reduce the amount of GPIO needed.
however an alternative idea which would do just as well (without needing too much work) would be to have the expectation that there would be a "base board" into which *two* modular 4x TMC2660 stepper boards would be plugged, and an arduino due, *and* the MOSFET/endstop/thermistor board, and the *base* board would take care of GPIO expansion.
anyone considering this: the layout on the DuetWIFI for its steppers is very *very* specific and should really not be touched or altered, merely cut away surrounding parts and add the necessary arduino-compatible headers.
any takers for what is likely to be a quite straightforward project?
l.
--- crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68
2017-05-23 3:27 GMT+02:00 Luke Kenneth Casson Leighton lkcl@lkcl.net:
hi all,
ok so i've been looking around and the practice of creating a "modular" 3d printing electronics board is extremely common, thanks, many years ago, to the stupid, stupid decision to use prototyping (evaulation) plugin boards with 1.3 to 2.0 *amp* stepper ICs mounted onto micro-postage-stamp-sized PCBs. the problems these cause are endless.
You're being a bit brief here. But essentially, the community has been using "default" boards, which are cheapish and fairly documented/understood, but too generic and thus not able enough?
so instead of an on-board ATSAM4, you use an arduino due. instead of WIFI you use a *standard arduino WIFI shield*.
Read about a guy RE'ing "hoverboards" and he's creating an OSS firmware replacement for these, which seem to be desinged around the fafourite STM32F*. https://opensourceebikefirmware.bitbucket.io/About_the_project.html
But how about the ESP32? (Successor to the ESP8266). Reasonable beefy CPU with build in WiFi. The Duet is using the ESP8266 as the WiFi bridge.
now, debatable is whether to split out the MOSFETs, endstops and
thermistors into their own separate shield as well, which i feel might be sensible.
Why not place all controllers separately and direct to their HW and connect them via a bus? This gives you freedom to expand and replace. And use a EOMA card as the "master"?
Or would that kind of modularity up the costs too much?
On Tue, May 23, 2017 at 8:16 AM, mike.valk@gmail.com mike.valk@gmail.com wrote:
2017-05-23 3:27 GMT+02:00 Luke Kenneth Casson Leighton lkcl@lkcl.net:
hi all,
ok so i've been looking around and the practice of creating a "modular" 3d printing electronics board is extremely common, thanks, many years ago, to the stupid, stupid decision to use prototyping (evaulation) plugin boards with 1.3 to 2.0 *amp* stepper ICs mounted onto micro-postage-stamp-sized PCBs. the problems these cause are endless.
You're being a bit brief here.
sorry.
But essentially, the community has been using "default" boards, which are cheapish and fairly documented/understood, but too generic and thus not able enough?
no, look up "polulu stepper boards". the entire home-grown 3d printing industry is suffering from ignorant "copy copy copy" itis. the first person to use the prototyping stepper driver boards *didn't* read the documentation, and does NOT understand the consequences of their ignorance.
in this case it's that the heat generated by a 2A driver IC can't escape out of an 18x18mm PCB so it overheats and stops working. sometimes temporarily, and sometimes permanently.
it's shit design gone badly wrong, copy-copy-copy-copy. no actual thought involved.
But how about the ESP32? (Successor to the ESP8266). Reasonable beefy CPU with build in WiFi. The Duet is using the ESP8266 as the WiFi bridge.
the idea is to be able to get off-the-shelf low-cost arduinos for $10 as opposed to having a larger PCB custom-made that costs $40 because you're using a USA-based factory and component pricing which has a 4-5x markup.
plus, porting to the ESP32 is a lot of effort.
splitting out the processor board into a "stock" arduino leaves very little to do in the way of software porting.
now, debatable is whether to split out the MOSFETs, endstops and thermistors into their own separate shield as well, which i feel might be sensible.
Why not place all controllers separately and direct to their HW and connect them via a bus? This gives you freedom to expand and replace. And use a EOMA card as the "master"?
lots and lots of pins. nice idea, but no.
Or would that kind of modularity up the costs too much?
too many pins: the duet-wifi requires an ATSAM4 with 100 GPIO pins. maybe 64. some of them ADC. that's too many. now it turns out that the cost of those "ADC-to-I2C" or "ADC-to-SPI" ICs (etc) are actually just as expensive if not more than an embedded controller!
so by the time you've added in a GPIO extender IC (I2C or SPI based), an ADC extender IC, you might as well just.... drop in an STM32F or an ATSAM in the first place.
cheapest way to do that in a modular fashion? surpriiise! use an STM32xxx-NUCLEO, or an Arduino Due.
l.
arm-netbook@lists.phcomp.co.uk