Faster Firmware

A project log for Icepick Delta

A highly experimental open-source 3D printer with a rock bottom bill of materials

TTNTTN 01/03/2015 at 11:252 Comments

A follow up on my previous project log:

This firmware hasn't become any faster. The next thing to try is adding inverse kinematics to a firmware that has had performance in mind since its beginnings.

Teacup and Repetier firmware are both using long ints and ints for all calculations instead of floats, as the avr cpu doesn't have the hardware for doing float calculations so it is much slower. For example, 10,000 float operations of multiplication take 212ms, where as to do them as int's takes only 127ms, much faster.

I initially wanted to use Teacup firmware, but there is no delta printer support, making the addition of inverse kinematics a lot harder, so, for now I'll see how much faster it will go on Repetier.

It shouldn't be very difficult to integrate the inverse kinematics function into Repetier, but I'm a c++ noob and have been busier lately, so this may be put on the backburner for a while.

To be continued..


3dreplicator wrote 02/17/2015 at 21:14 point

I understand correctly, to increase the height of the printable model, limit switches should be set as possible as high , and they should have successive parking? And if a team comes to the total parking, it is all the same first parking  alternately, and then calculate the offset?
Sorry for my english...
You have success with firmware Repetier?

  Are you sure? yes | no

TTN wrote 02/17/2015 at 23:29 point

Yes that is correct. For maximum z height the switches should be set as high as possible. The usual homing sequence is move all arms up at the same speed until a switch is hit. Then move the arm down until the switch is untriggered and back slowly until it is triggered again. Then the same for all the arms again.

The offset is entered into the firmware as a number. It's not calculated when it is homing. I haven't had any progress on the firmware yet. I've got another project brewing :)

  Are you sure? yes | no