Difference between revisions of "IR Probe 1.4"

From Aus3D Wiki
Jump to navigation Jump to search
(Combine backwards-compatibility with changelog)
(35 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{IR Probe Versions}}
{{IR Probe Versions}}


[[File:Ir-probe-front2.jpg|thumb|250px]]
[[Category:Products]]
[[File:Ir-probe-14-1-2.jpg|thumb|250px]]
== Overview ==
== Overview ==
These 3D Printer IR Probes use modulated infra-red light to accurately detect proximity to the print surface, allowing for quick and precise probing of the print surface. Many 3D printer firmwares can use this probing information to automatically level the bed while printing, compensating for some degree of unevenness in the print surface.
These probes are essentially a high-repeatability non-contact proximity sensor. From the perspective of the control board and printer firmware, they can be treated as any other endstop - when connected to power (5V/3.3V & GND) and a signal pin, they will output either a high voltage (indicating the sensor is triggered) or low voltage (sensor is not triggered). Therefore, no special firmware configuration is needed beyond the basics (configuring signal pin and polarity).
Compared to mechanical probe solutions - such as a servo and microswitch - these probes have the advantage of requiring no moving components, weighing less, and having a higher degree of repeatability and reliability. Compared to inductive or capacitive probes, these boards are less dependent on the material of the print surface, working even on glass, and do not require any special electronics or wiring to interface with most printer control boards. Combined with a high degree of immunity from background IR sources, these boards are ideal for nearly any printer build.
These probes are designed to mount to a 30mm fan - this means they're immediately compatible with all E3D V6 and Lite6 HotEnds, mounting directly to the fan with no modification or adaptor necessary. Additionally, these boards use a lightweight cable with a compact connector, in order to make wiring as easy as possible.
To mount to a printer without a suitable 30mm fan, all that is required are two screw holes. These should be spaced 24mm apart horizontally, and at a distance of 22mm above the tip of the nozzle. See the attached mechanical drawings under [[#Resources|Resources]] for further information.
These probes will trigger at an approximate distance of 3mm from the print surface. Recommended mounting height is that the bottom edge of the PCB be 1-2mm above the tip of the nozzle, and the probe's Z-offset can be tweaked in firmware to achieve the desired results.
== Advantages ==
* Easy to install:
** Mounts directly to E3D V6 & Lite6, printable adaptors available for many other hotends & printers (see [[#HotEnd Compatibility|HotEnd Compatibility]])
** Plugs directly into many common control boards through included cable (see [[#Electronics Compatibility|Electronics Compatibility]])
* Works with many common bed surfaces
* Lightweight (<3g)
* Compact
* No moving parts
* High repeatability for accurate bed levelling
== Specifications ==
== Specifications ==
== Improvements from 1.3 ==
* Input Voltage: 3.3-5V
=== Compact Form Factor ===
* Dimensions: 30.00x23.75mm
* capacitor C1 decreased in height to reduce profile of board, easier to fit probe in tight spaces
* Weight: 2.5g (excluding cable)
* smaller JST-SH connector used, connector no longer protrudes from body of probe
* Trigger distance: 3mm from edge of PCB
* Trigger Repeatability: 0.005mm (5µm) Standard Deviation
* Included Cable Length: 100cm
 
== Setup ==
The probe requires three pins be connected to function properly - power (3.3 - 5V, red wire), ground (black wire) and the output signal (green wire). On most control boards these can be connected directly to the endstop pins - see [[#Electronics Compatibility|Electronics Compatibility]] for wiring info on specific control boards.
 
On some control boards and firmware combinations (mainly Duet and RepRapFirmware), the fourth yellow wire can be used to enable additional probing features. This wire is not required for most control boards or firmwares, and this yellow wire can be left unconnected.


=== Selectable Digital or Analog Output ===
Once connected, when the printer is powered on (or when power is provided to the probe) there is a red LED on the probe that will flash twice to indicate the probe is ready for use. If this LED does not flash when the probe is connected / powered, check all wiring connections and ensure they are correct. This behaviour is independent of the printer's firmware - i.e., as long as the probe receives power this flashing should take place.
* separate output pins for both modes
* mode no longer dependent on automatic detection of control board


=== Improved Control Board Compatibility ===
Once the probe has started (after the double flash) it will begin acting as a proximity sensor. You can test that the probe is operating correctly by bringing the active edge of the probe (lower edge) near to your bed surface (or other flat surface). When the surface is within the trigger distance, the on-board red LED will turn on. The LED will turn off whenever the probe is not triggered. Again, this behaviour is independent of the printer's firmware and configuration - so you can test the probe is functional before configuring or torubleshooting the firmware.
* strong pull-ups on certain control boards no longer prevent probe from working


=== General Improvements ===
== Changelog ==
* faster boot time (<1s instead of 6s)
=== v1.41 ===
* Capacitor C1 changed from SMD to through-hole part, increasing sturdiness
* PCB routing updated to improve manufacturing yield
 
=== v1.4 ===
* Overall size reduced
** Capacitor C1 decreased in height to reduce profile of board, easier to fit probe in tight spaces
** Smaller JST-SH connector used, connector no longer protrudes from body of probe
* Selectable Digital or Analog Output
** Separate output pins for both modes
** Mode no longer dependent on automatic detection of control board
* Improved Control Board Compatibility
** Strong pull-ups on certain control boards no longer prevent probe from working
* Faster start-up time (<1s instead of 6s)
 
'''Note:''' v1.4 is largely backwards compatible with v1.3. The mechanical mounting holes and dimensions are identical, and all mounting arrangements for v1.3 should work fine with v1.4. Most significantly, the provided cable is different, so a re-wire may be necessary to swap to v1.4.


== HotEnd Compatibility ==
== HotEnd Compatibility ==
Line 27: Line 68:
|Adaptor Required
|Adaptor Required
|Notes
|Notes
|-
|- bgcolor="#f0fff0"
|E3D-V6
|E3D-V6
|Yes
|Yes
|No
|No
|Mounts to fan duct with existing screws
|Mounts to fan duct with existing screws
|-
|- bgcolor="#f0fff0"
|E3D-Lite6
|E3D-Lite6
|Yes
|Yes
|No
|No
|Mounts to fan duct with existing screws
|Mounts to fan duct with existing screws
|-
|- bgcolor="#f0fff0"
|E3D Chimera
|E3D Chimera
|Yes
|Yes
|No
|No
|Mounts to fan duct with existing screws
|Mounts to fan duct with existing screws
|-
|- bgcolor="#f0fff0"
|E3D Cyclops
|E3D Cyclops
|Yes
|Yes
Line 48: Line 89:
|Mounts to fan duct with existing screws
|Mounts to fan duct with existing screws
|-
|-
|E3D-V6 or Lite6 with Volcano
|style='background: #f0fff0' |E3D-V6 or Lite6 with Volcano
|Yes
|style='background: #f0fff0' |Yes
|Yes
|Yes
|Printable adaptor available [https://github.com/Aus3D/mark2/blob/master/CAD/PrintedParts/e3d-volcano-adaptor.STL here].
|Printable adaptor available [https://github.com/Aus3D/mark2/blob/master/CAD/PrintedParts/e3d-volcano-adaptor.STL here].
|-
|-
|Mark8 Extruder + Hotend Combination
|style='background: #f0fff0' |E3D Titan Aero
|style='background: #f0fff0' |Yes
|Yes
|Yes
|Printable adaptor available [https://www.thingiverse.com/thing:3061918 here].
|-
|style='background: #f0fff0' |Mark8 Extruder + Hotend Combination
|style='background: #f0fff0' |Yes
|Yes
|Yes
|Printable adaptor available [http://www.thingiverse.com/thing:1229765 here].
|Printable adaptor available [http://www.thingiverse.com/thing:1229765 here].
Line 64: Line 110:
{| class="wikitable"
{| class="wikitable"
|Motherboard
|Motherboard
|Electronics Compatible
|Connector Compatible
|Connector Compatible
|Electronics Compatible
|Notes
|Notes
|-
|Wiring Image
|- bgcolor="#f0fff0"
|RAMPS
|RAMPS
|Yes
|Yes
|Yes
|Yes
|
|Connect to Z-min endstop, leave 4th pin (yellow) disconnected
|-
|[[File:IR-probe-wiring-ramps.jpg|200px]]
|- bgcolor="#f0fff0"
|RAMBO
|RAMBO
|Yes
|Yes
|Yes
|Yes
|Connect to Z-min endstop, leave 4th pin (yellow) disconnected
|
|
|-
|- bgcolor="#f0fff0"
|RUMBA
|RUMBA
|Yes
|Yes
|Yes
|Yes
|Connect to Z-min endstop, leave 4th pin (yellow) disconnected
|
|
|-
|-
|Melzi
|style='background: #f0fff0' |Smoothieboard
|style='background: #f0fff0' |Yes
|style='background: #f0fff0' |Yes
|style='background: #f0fff0' |Connect to Z-min endstop, leave 4th pin (yellow) disconnected
|style='background: #f0fff0' |
|-
|style='background: #f0fff0' |Melzi
|style='background: #f0fff0' |Yes
|No
|No
|Yes
|Wires must be cut for screw terminals, and 5V wired to separate pin.
|Wires must be cut for screw terminals, and 5V wired to separate pin. Wiring sketch included below.
|[[File:Ir-probe-MelziWiring.jpg|200px]]
|-
|-
|Duet
|style='background: #f0fff0' |Duet
|style='background: #f0fff0' |Yes
|No
|No
|Yes
|Need to change order of pins in connector to suit, simple to do though
|Need to change order of pins in connector to suit, simple to do though.
|
|-
|-
|Smoothieboard
|style='background: #f0fff0' |Azteeg X5 Mini
|style='background: #f0fff0' |Yes
|No
|No
|Wires must be cut for screw terminals
|
|-
|style='background: #f0fff0' |MKS Gen / Base Boards
|style='background: #f0fff0' |Yes
|No
|No
|Pullup too strong, external resistor required between ground and signal (value uncertain, 500R-1.8K, experimentation needed).
|Some boards need different connector
|
|-
|-
|Azteeg X5 Mini
|style='background: #f0fff0' |Anet A8
|No
|style='background: #f0fff0' |Yes
|No
|No
|Pullup too strong, external 1.6K resistor required between ground and signal.
|Red, black and green wires should be connected to Z-min pins as shown.
|[[File:Ir-probe-wiring-a8.jpg|200px]]
|-
|-
|MKS Gen / Base Boards
|style='background: #f0fff0' |Geeetech GT2560
|No
|style='background: #f0fff0' |Yes
|No
|No
|Pullup too strong, external 560R resistor required between ground and signal.
|Connect green signal pin to Z-MIN pin, red and black to available 5V/GND pins as shown.
|[[File:Ir-probe-gt2560 wiring.jpg|200px]]
|-
|-
|}
|}


== Configuring Marlin ==
== Configuring Firmware ==
The pullup for the Z_MIN endstop needs to be enabled. Uncomment the line:
[[IR Probe Firmware Setup (Marlin 1.1.0+)]]
  #define ENDSTOPPULLUP_ZMIN


The endstop should be set to non-inverting:
[[IR Probe Firmware Setup (Marlin 1.1.0-RC4+)]]
  const bool Z_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.


Enable auto-bed levelling:
[[IR Probe Firmware Setup (Marlin 1.1.0-RC1+)]]
  #define ENABLE_AUTO_BED_LEVELING // Delete the comment to enable (remove // at the start of the line)
  #define Z_PROBE_REPEATABILITY_TEST  // If not commented out, Z-Probe Repeatability test will be included if Auto Bed Leveling is Enabled.


Recommended bed levelling mode is grid:
[[IR Probe Firmware Setup (Smoothieware)]]
  #define AUTO_BED_LEVELING_GRID


Adjust the coordinates that define the corners of the probed grid:
== Buy It ==
  #define LEFT_PROBE_BED_POSITION 50
[http://aus3d.com.au/ir-z-probe Store Page]
  #define RIGHT_PROBE_BED_POSITION 150
  #define FRONT_PROBE_BED_POSITION 20
  #define BACK_PROBE_BED_POSITION 180


Set the grid size:
== Resources ==
  #define AUTO_BED_LEVELING_GRID_POINTS 2
<youtube>XIHX7nYsERU</youtube>
 
[[File:Ir-probe-14-mounting.PNG|frameless|310px|top|Mounting Drawing]]
Configure the probe offset from the nozzle:
[[File:ProbeE3Ddrawing.PNG|frameless|310px|top|E3D Mounting / Spacing Drawing]]
  #define X_PROBE_OFFSET_FROM_EXTRUDER 30    // Probe on: -left  +right
[[File:Ir-probe-MelziWiring.jpg|frameless|310px|top|Wiring Melzi]]
  #define Y_PROBE_OFFSET_FROM_EXTRUDER 0    // Probe on: -front +behind
  #define Z_PROBE_OFFSET_FROM_EXTRUDER -1.95  // -below (always!)


Configure homing / probing settings:
=== Links ===
[http://www.thingiverse.com/thing:1732906 STL Placeholder / Model of IR Probe V1.4 (Thingiverse)]


  #define Z_RAISE_BEFORE_HOMING 4      // (in mm) Raise Z before homing (G28) for Probe Clearance.
[http://www.thingiverse.com/thing:1656279 Printable mount  for MaxMicron printers (Thingiverse)]
                                        // Be sure you have this distance over your Z_MAX_POS in case


  #define XY_TRAVEL_SPEED 8000        // X and Y axis travel speed between probes, in mm/min
[http://www.thingiverse.com/thing:1230215 Printable mount  for Geeetech Prusa i3 X (Thingiverse)]


  #define Z_RAISE_BEFORE_PROBING 5  //How much the extruder will be raised before traveling to the first probing point.
[http://www.thingiverse.com/thing:1229765 Printable mount for MK8 Extruder + Hotend combo (Thingiverse)]
  #define Z_RAISE_BETWEEN_PROBINGS 2  //How much the extruder will be raised when traveling from between next probing points
  #define Z_RAISE_AFTER_PROBING 5    //How much the extruder will be raised after the last probing point.


When using a probe instead of an endstop, it's a good idea to enable Z_SAFE_HOMING. This moves the probe to the center of the bed before homing:
[http://www.thingiverse.com/thing:1132649 Printable mount for MK8 Extruder + Hotend combo (Thingiverse)]
  #define Z_SAFE_HOMING  // This feature is meant to avoid Z homing with probe outside the bed area.


By default the point that the probe homes at should be the center of the bed - however some versions of Marlin contain a bug where the probe point is miscalculated. To be safe, you can manually define the probe point:
[http://www.thingiverse.com/thing:1350607 Printable mount for NEMA-17 motors (Thingiverse)]
  #define Z_SAFE_HOMING_X_POINT (100)    // X point for Z homing when homing all axis (G28)
  #define Z_SAFE_HOMING_Y_POINT (100)    // Y point for Z homing when homing all axis (G28)


== Connecting ==
[https://github.com/Aus3D/mark2/blob/master/CAD/PrintedParts/e3d-volcano-adaptor.STL Printable mount for E3D Volcano (GitHub)]
=== RAMPS, RAMBO, RUMBA ===
Each IR Z Probe comes with a cable that will connect directly to the endstop pins on these control boards. No modification should be required.
=== Azteeg X5 Mini ===
Screw terminals are used to connect bare wires to the X5 for all endstops. The included cable will need the connector removed / cut off, and each wire stripped back to allow connection. In addition, the pull-up resistors on the X5 are not compatible with the IR Z Probe by default. To correct this, a 1.6K resistor can be placed in the screw terminal, between the signal and ground wires. This should allow correct operation of the probe.


== Notes ==
[https://www.thingiverse.com/thing:3061918 Printable mount for E3D Titan Aero (Thingiverse)]
After receiving power, the probe takes a short while before becoming active. The onboard LED will flash twice, and after this the board is ready for use.
 
== Buy It ==
[http://aus3d.com.au/ir-z-probe Store Page]
 
== Resources ==
<youtube>XIHX7nYsERU</youtube>
[[File:Ir-z-probe-mounting-drawing.PNG|frameless|310px|top|Mounting Drawing]]
[[File:Ir-probe-MelziWiring.jpg|frameless|310px|top|Wiring Melzi]]

Revision as of 16:00, 8 March 2019

IR Probe


Ir-probe-14-1-2.jpg

Overview

These 3D Printer IR Probes use modulated infra-red light to accurately detect proximity to the print surface, allowing for quick and precise probing of the print surface. Many 3D printer firmwares can use this probing information to automatically level the bed while printing, compensating for some degree of unevenness in the print surface.

These probes are essentially a high-repeatability non-contact proximity sensor. From the perspective of the control board and printer firmware, they can be treated as any other endstop - when connected to power (5V/3.3V & GND) and a signal pin, they will output either a high voltage (indicating the sensor is triggered) or low voltage (sensor is not triggered). Therefore, no special firmware configuration is needed beyond the basics (configuring signal pin and polarity).

Compared to mechanical probe solutions - such as a servo and microswitch - these probes have the advantage of requiring no moving components, weighing less, and having a higher degree of repeatability and reliability. Compared to inductive or capacitive probes, these boards are less dependent on the material of the print surface, working even on glass, and do not require any special electronics or wiring to interface with most printer control boards. Combined with a high degree of immunity from background IR sources, these boards are ideal for nearly any printer build.

These probes are designed to mount to a 30mm fan - this means they're immediately compatible with all E3D V6 and Lite6 HotEnds, mounting directly to the fan with no modification or adaptor necessary. Additionally, these boards use a lightweight cable with a compact connector, in order to make wiring as easy as possible.

To mount to a printer without a suitable 30mm fan, all that is required are two screw holes. These should be spaced 24mm apart horizontally, and at a distance of 22mm above the tip of the nozzle. See the attached mechanical drawings under Resources for further information.

These probes will trigger at an approximate distance of 3mm from the print surface. Recommended mounting height is that the bottom edge of the PCB be 1-2mm above the tip of the nozzle, and the probe's Z-offset can be tweaked in firmware to achieve the desired results.

Advantages

  • Easy to install:
    • Mounts directly to E3D V6 & Lite6, printable adaptors available for many other hotends & printers (see HotEnd Compatibility)
    • Plugs directly into many common control boards through included cable (see Electronics Compatibility)
  • Works with many common bed surfaces
  • Lightweight (<3g)
  • Compact
  • No moving parts
  • High repeatability for accurate bed levelling

Specifications

  • Input Voltage: 3.3-5V
  • Dimensions: 30.00x23.75mm
  • Weight: 2.5g (excluding cable)
  • Trigger distance: 3mm from edge of PCB
  • Trigger Repeatability: 0.005mm (5µm) Standard Deviation
  • Included Cable Length: 100cm

Setup

The probe requires three pins be connected to function properly - power (3.3 - 5V, red wire), ground (black wire) and the output signal (green wire). On most control boards these can be connected directly to the endstop pins - see Electronics Compatibility for wiring info on specific control boards.

On some control boards and firmware combinations (mainly Duet and RepRapFirmware), the fourth yellow wire can be used to enable additional probing features. This wire is not required for most control boards or firmwares, and this yellow wire can be left unconnected.

Once connected, when the printer is powered on (or when power is provided to the probe) there is a red LED on the probe that will flash twice to indicate the probe is ready for use. If this LED does not flash when the probe is connected / powered, check all wiring connections and ensure they are correct. This behaviour is independent of the printer's firmware - i.e., as long as the probe receives power this flashing should take place.

Once the probe has started (after the double flash) it will begin acting as a proximity sensor. You can test that the probe is operating correctly by bringing the active edge of the probe (lower edge) near to your bed surface (or other flat surface). When the surface is within the trigger distance, the on-board red LED will turn on. The LED will turn off whenever the probe is not triggered. Again, this behaviour is independent of the printer's firmware and configuration - so you can test the probe is functional before configuring or torubleshooting the firmware.

Changelog

v1.41

  • Capacitor C1 changed from SMD to through-hole part, increasing sturdiness
  • PCB routing updated to improve manufacturing yield

v1.4

  • Overall size reduced
    • Capacitor C1 decreased in height to reduce profile of board, easier to fit probe in tight spaces
    • Smaller JST-SH connector used, connector no longer protrudes from body of probe
  • Selectable Digital or Analog Output
    • Separate output pins for both modes
    • Mode no longer dependent on automatic detection of control board
  • Improved Control Board Compatibility
    • Strong pull-ups on certain control boards no longer prevent probe from working
  • Faster start-up time (<1s instead of 6s)

Note: v1.4 is largely backwards compatible with v1.3. The mechanical mounting holes and dimensions are identical, and all mounting arrangements for v1.3 should work fine with v1.4. Most significantly, the provided cable is different, so a re-wire may be necessary to swap to v1.4.

HotEnd Compatibility

These are the HotEnds we've tested with or had reports of success with. If you're interested in trying something different, or if you've tried a different HotEnd with our probe, let us know how it went!

HotEnd Compatible Adaptor Required Notes
E3D-V6 Yes No Mounts to fan duct with existing screws
E3D-Lite6 Yes No Mounts to fan duct with existing screws
E3D Chimera Yes No Mounts to fan duct with existing screws
E3D Cyclops Yes No Mounts to fan duct with existing screws
E3D-V6 or Lite6 with Volcano Yes Yes Printable adaptor available here.
E3D Titan Aero Yes Yes Printable adaptor available here.
Mark8 Extruder + Hotend Combination Yes Yes Printable adaptor available here.

Electronics Compatibility

These are the boards we have tested the probe with. It is likely the probe is compatible with other boards as well - if you try a different control board and it works, let us know so we can add it to the list.

Motherboard Electronics Compatible Connector Compatible Notes Wiring Image
RAMPS Yes Yes Connect to Z-min endstop, leave 4th pin (yellow) disconnected IR-probe-wiring-ramps.jpg
RAMBO Yes Yes Connect to Z-min endstop, leave 4th pin (yellow) disconnected
RUMBA Yes Yes Connect to Z-min endstop, leave 4th pin (yellow) disconnected
Smoothieboard Yes Yes Connect to Z-min endstop, leave 4th pin (yellow) disconnected
Melzi Yes No Wires must be cut for screw terminals, and 5V wired to separate pin. Ir-probe-MelziWiring.jpg
Duet Yes No Need to change order of pins in connector to suit, simple to do though
Azteeg X5 Mini Yes No Wires must be cut for screw terminals
MKS Gen / Base Boards Yes No Some boards need different connector
Anet A8 Yes No Red, black and green wires should be connected to Z-min pins as shown. Ir-probe-wiring-a8.jpg
Geeetech GT2560 Yes No Connect green signal pin to Z-MIN pin, red and black to available 5V/GND pins as shown. Ir-probe-gt2560 wiring.jpg

Configuring Firmware

IR Probe Firmware Setup (Marlin 1.1.0+)

IR Probe Firmware Setup (Marlin 1.1.0-RC4+)

IR Probe Firmware Setup (Marlin 1.1.0-RC1+)

IR Probe Firmware Setup (Smoothieware)

Buy It

Store Page

Resources

Mounting Drawing E3D Mounting / Spacing Drawing Wiring Melzi

Links

STL Placeholder / Model of IR Probe V1.4 (Thingiverse)

Printable mount for MaxMicron printers (Thingiverse)

Printable mount for Geeetech Prusa i3 X (Thingiverse)

Printable mount for MK8 Extruder + Hotend combo (Thingiverse)

Printable mount for MK8 Extruder + Hotend combo (Thingiverse)

Printable mount for NEMA-17 motors (Thingiverse)

Printable mount for E3D Volcano (GitHub)

Printable mount for E3D Titan Aero (Thingiverse)