Second small step…
For the people that did not read my guest blog on Erik his page.
I have been involved in designing some new electronics for the reprap project. This means that I have added a new category for my own blog. This is also the reason why i revived it (e.g. load times are now less then 45 seconds).
This is my newest entry about the KineMagic electronics.
In this post I will discuss:
- the limitations of Eagle and the switch to KiCad.
- the new library (schematic block) and module (footprint)
- the new schematic, and the reasoning behind it.
- The current status of the board design
All these points are addressed in the extended part of this post and please do comment / contribute on them.
I have stopped using cadsoft EAGLE because I ran into all kind of limitations:
- only 2 layers, I wanted to introduce a ground and power plane so two is to little.
- only one schematic page, as I also wrote in my posting on Erik his blog I like to "compartmentalize" the functions.
- the impossibility of an exposed pad
To get rid of these limitations I had to switch ECAD software. The
choice was between Design Spark and KiCad. Being more of an opensource
kind of guy I chose to use KiCad. And I have to say after quite a steep
learning curve I actually have a work flow going on in this new system. I
have to say that I like it more that Eagle. It still has one challenge
for me but later more on that.
Before I could make a schematic I had to make the library for the ST L6470. To do this I created a new library. Since also the HTSSOP28 footprint was not available in KiCad I also created that module. Both files are downloadable1,2.
The new schematic was partially revised. This because of new ideas from me as well as some realy good comments n Erik his blog. The following non exhaustive list:
- Bogdan Kecman pointed me to the fact that a lot of electronics is TTL based, and as such it might be wise not to connect the VDD and Vref.
- Rob Giseburt and I had the same thoughts on 90 degree headers. and minimizing the components on the daughter-boards.
- To minimize these components I actually dropped the daisy chain, the multiplexing of the CS signal and several LEDs.
- To make sure you insert the resulting board the correct way, the power and interface are separate headers.
- Also the possibility to give motor power externally has been included. This because of the design of the motherboard.
The new schematic is downloadable as pdf3 and KiCad schematic4 (zip)
Current status board
Currently I am working on routing everything. This where I also run into the only drawback of KiCad. I like to do something called "necking". This means that the tracks start small at the pins of the chip and then get wider aftwards. This keeps the track impedance lower. The problem I run into with KiCad is that a net only has one width.
Further I had some ideas to change the board:
- Erik had the idea to add copper weight
- I also changed to a 4 layer design. With VPP and GND as inner layers.
I have been thinking about collaboration. And I thought about setting up an GIT repository for the versioning and collaboration. I do not know if there already is a general GIT for the electronics of the reprap project.
If there is anyone out there who could enlighten me please feel free.
3 KineMagic Small.pdf, KineMagic Small-Interfaces.pdf
4 KineMagic Small schematics.zip
With your feedback, my cousin Gerald has taken the new stepper driver’s design a step further. Click here to read more.
I took a look at the datasheet and I don’t see a way for multiple axes of stepper controllers to have their acceleration profiles synchronized. For example, a move at a very shallow angle may have a slow X peak speed but a high Y peak speed. Is the firmware responsible for reprogramming these values between every move or is there some trick to it?
AFAIK you can set the maximum move speed in each stepper, minimum move speed, etc among other things. The firmware would only need to set these values once per RESET.