Controller Software Tool Change Location 0,0 G54, G55, G56

Hey Norm,

Yes, proximity sensors are supported. The Buildbotics and the Onefinity controllers support them as limit switches. You can wire them to the 25-pin I/O Port and enable them in the Motors Tab and of course their status will show up in the Indicators Tab. Cylindrical Proximity Sensors would look like this on the Onefinity:

Some people also use microswitches but I would always prefer using proximity switches.

The problem to solve anyway is how to attach them. As far as I know, everybody used 3D-printed parts, and I will do it this way too. An alternative would be milling them out of wood using a CNC! :slight_smile:

Further reading

Stall homing

Buildbotics Controller can use and Onefinity CNC does use Stall Homing. Stall homing means you do not have a sensor or something that indicates that the gantry is at the end, but instead the controller realizes the stepper motor suddenly generates no more power, deduces from this that it obviously does move no more, and states “it is at home”.

Technically, motor stalls are detected when the controller senses that there is no back Electro-Motive Force (EMF) caused by the rotating motor. Put differently, the controller detects that the motor has stopped turning as it would when it runs into an end stop.

The controller can only determine that there is no back EMF being generated when no current is flowing in the motor coil. This happens once per full motor step when the motor coil current is zero amps. At this instant, the only voltage present on the motor connection is from back EMF. If there is no back EMF at that instant, then the motor must not be turning.

The zero current period only lasts for one microstep. The goal is to measure the voltage during this microstep. There is actually a settling period, so it’s best to measure the voltage during the last half of that microstep.

Back EMF varies with the speed at which the motor is turning. If the motor is turning too slowly, the change in back EMF will not be distinguishable from noise.

If the motor is turning too fast, the axis may hit the end stop too hard and cause physical damage. So, there it a ‘sweet spot’ in the velocity.

It’s best not to run the motor at full current during stall detection. That way the torque and physical stress will be reduced when the motor hits the end stop.

– Source: Buildbotics Manual V1.0: Stall-min and stall-max homing

4 Likes