Okay so major changes on the new board. I've changed project image to replicate that.
I'll add in the changes after making an actual change list with the project itself and the BOM cost.
Additional Edit [10-02-2019]
Version 1.3p (p = prototype) has been designed with some massive considerations and changes whilst still keeping in mind of the the same concept of 3+Pi original idea. The reasoning behind these changes were to reduce the BOM Costs and try to optimise the maximum usage of components available. As you will notice later on the that the Components listing will change to adhere with these potential replacements.
They are as follows:
STM32F401RE ---> STM32F302CBT6
This is a 48 pin count lesser 'expensive' variant from ST Electronics.
May also make it obvious that this is a personal bias choice of mine because I happen to have a knock-off STLINK from ebay that will let me program with this chip. I would have loved to program with the Microchip's variants which have quite an appealing price. But not only do I not have a ICE board or the ace of all cards: JLink.
This drops the price by about $4.00AUD from Digikey listing (individual piece).
TMC2100 --> TMC2041-LA-T
This Trinamic chip contains dual Stepper driver modules in one chip. Not only is this great for space factoring but also I happened to have found that they also do use the SPI Ctrl system to drive the motors leaving me to use the SPI control mechanism of the STM listed above. Besides the fact that I limited the current to about .9A per coil, this should be plenty for small applications and less torque demanding applications. I will have to do some serious testing on this platform to make sure it works.
MAX17574ATG --> TPS54340DDAR
TI Chip allows more current to be pumped out without the need of external MOSFET drivers. I chose this for the sake of space and also reducing development timing. I will need to do some testing and see if things work out and if the supply is as regulated as expected and actually am recording the right amount of voltage. Which is why I used to 2.54mm jump headers to measure current draw.
With those changes made. Here are some new additions to the board:
Optional MCU generated Clock signal (cheap option) for the drivers otherwise xtal dedicated (recommended). This can be selected by the solder bridge. The STM will have to use a 16MHz ext XTAL to and then it will pipe it out to a dedicated pin which drives a MOSFET at higher voltage allowing the need for current for other needs if necessary.
Optional 3rd Dual Stepper driver. Since the drivers are now connected to the SPI bus, the number of pins needed to drive them are lesser than to have them individually being driven by STEP/DIR pair. Two chips alone will grant you 4 drivers which should be enough for 3D printers with one single extrusion. Since the the third chip will grant another pair of drivers, 3+Pi can be used to drive a 6DoF application... I've also broken out the STEP/DIR pair for each driver if anyone wants to use that outsides the STM's control.
Optional CAN operation. I was inspired by the need of CAN and applications for it so I decided to put a CAN driver on the board since I had the space to put it. It is also terminated with a 120R 2512 Resistor. Obviously this can be removed if not needed. Both the IC and the terminating resistor. Will have to implement protocols for the CAN driver later on and see if I can get it to do 1Mbps comms.
USB-C PD Sink controller. The FUSB302B01MPX allows the 3+Pi to control the demanded voltage. This will be initially programmed to demand 20V at 5A (100W) maximum as basically a limit high power usb demand. Thus the TPS Bucks will regulate the 5V to the pi and driver logic while 3v3 for the STM board itself. It is rather unfortunate that I couldn't control the 3v3 rail for the pi but then again, I will lose the USB type A ports of the pi if I did so, that's fine I guess. With what the TPS claims, it will be able to power up the Pi with 5v pass through so hopefully there won't be any issues when it's connected to a USB 5V3A supply. The Driver enable pins are controlled by the STM which will be programmed to disable the drivers when the voltage is just not enough for the drivers to run at set current. I might even get a I2C potentiometer to set the current ratings on the coils... Hmm.. V1.4p perhaps?
That's about it for this revision. Thank you for reading. I hope to release new updates and possible if I can, get some funding to buy the new prototype parts without resorting to e-begging and obnoxious advertising/marketing. Thank you for your time. Have a great day and I hope you're inspired. :)