IR Probe Firmware Setup (Smoothieware)
Smoothieware has a lot of options relating to Z probing and bed level compensation. The best place to get detailed information on Smoothieware's settings is the Z-Probe page here.
Pin Configuration
The IR probe can be connected to any of the Smoothieboard's three-pin endstop connectors (though be sure to take note of polarity). We will be connecting the probe to the Z-Max connector in this guide, which is pin P1.29.
First, we need to undefine the pin as being used for the endstop. If you're using a different pin that isn't assigned to an endstop, you can skip this step:
gamma_max_endstop nc #normally 1.29. Change to nc to prevent conflict with probe below
We then need to configure the pin as a non-inverting input with a pullup. This is done like so:
zprobe.enable true # set to true to enable a zprobe zprobe.probe_pin 1.29^ # pin probe is attached to zprobe.slow_feedrate 5 # mm/sec probe feed rate #zprobe.debounce_ms 1 # set if noisy zprobe.fast_feedrate 100 # move feedrate zprobe.probe_height 5 # how much above bed to start probe NB only needed for G32 on delta zprobe.return_feedrate 0 # feedrate after a probe, default 0 is double of slow_feedrate (mm/s)
This is all we need to do to configure the pins! The next step is to configure how the firmware will use the probe for bed levelling.
Compensation Strategy
Smoothieware offers different compensation strategies that can make use of the sensor, depending on the mechanics of the machine (cartesian vs delta) and what you're trying to achieve. The configuration for each strategy is different, so you'll need to check the Smoothieware guide on the setup process.