May 8, 2023
Description
The Artillery Sidewinder X2 is shipped with an inductive sensor that can be installed in case the Artillery touch sensor is broken and no replacement is immediately available. This small adapter allows to use the inductive sensor as a replacement for the touch sensor and therefore not lose the automatic bed leveling.
Printing the adapter and screwing the sensor on will of course not be enough to get everything running. Your printer has to fulfil some requirements and additional work is needed:
Some words of warning before adjusting your setup. The sensor itself delivers good results and the probe repeatability test (G-code M48) showed a standard deviation of less than 0.005, but inductive sensors can drift if the temperature changes. This means they can report a different value when cold as they would when heated up by the nozzle or bed.
The adapter can be printer without support. The contact area with the build plate is rather small, so a brim could help. The adapter was designed with a line width of 0.4 mm in mind and should be printed solid:
The inductive sensor requires only 3 cables. The pin labeled servo on the backside of the PCB will not be used. The table shows which colors used by the touch sensor will be replaced by which colors used by the inductive sensor.
| Pin | Color Touch Sensor | Color Inductive Sensor |
|---|---|---|
| +5V | Red | Brown |
| Servo | Yellow | - |
| Probe | Black | Black |
| GND | Green | Blue |
For connecting the sensor to the PCB, I reused the short cables from my defect touch sensor. I pushed the contacts out of the small connector housing that is directly attached to the touch sensor and got rid of the yellow cable. The connector housing from the inductive sensor can also be removed, but the crimps should stay in place on all cables. The small crimps from the touch sensor fit perfectly into the larger crimps used on the inductive sensor. A little bit of solder makes sure, that they won't come lose and shrinking tube/electrical tape prevents shorts. The old 4 pin connector housing of the touch sensor is reused.
The installation of the sensor requires multiple steps that have to be executed in the correct order. Please read the following sections, before trying and potentially damaging your printer/build plate.
The screw and bracket that should be shipped with the inductive sensor will be used to attach the sensor to the printed adapter. The adapter is screwed to the toolhead first using the screws from the touch sensor. The inductive sensor can be mounted afterwards from the front. Make sure the sensor is a little bit closer to the bed than the nozzle, to prevent that the nozzle hits the bed before the sensor is set to the correct height.
The new firmware has to be flashed onto the printer before he is used the first time. With the old firmware still in place, the nozzle would hit the bed as the printer doesn't know when he reaches z=0. All adjustments I have done to get the sensor running are described in the section Firmware Adjustments at the end.
With the new firmware in place the printer can be started. The height of the sensor must now be adjusted. The offset between nozzle and sensor has to be high enough for the sensor not hitting any already printed parts, but also small enough for the sensor to trigger before the nozzle reaches the build plate.
Run the following steps to first test if everything is working correctly!
The printer should now stop as he thinks he reached the bed. In case he is still moving down, switch the machine of to prevent damage to the bed - something is wrong with your new firmware or wiring. In case the test was successful, the real setup can start.
A spacer with a thickness of 0.2 to 0.5 mm can be helpful during the setup of the height. I found that an old guitar pick with a thickness of 0.4 mm works well for my setup. The steps below guide you through the setup process:
The steps for setting up the Z offset are the same for the inductive sensor as they were for the touch sensor. There are now two possible paths you can go.
This is the easy path that ignores wrapping of the build plate while heated up, but makes starting prints easier.
The offset is defined while bed and sensor are cold. The nozzle can be heated up. The offset is configured in the same way as with the old touch sensor.
In case you want to start a new print you move the toolhead into a higher position (≥ 15cm) and wait for bed + nozzle to be on temperature. The sensor should stay at room temperature while the other components heat up. Start the print by homing everything and loading the mesh like with the touch sensor.
The more precise path is this one, but it will cost more time before every print.
The offset should be setup after nozzle and build plate are on temperature. During the heat up phase the sensor should already be close to the bed (z=0) to also get some temperature. When everything is heated up, set the offset and store it. This offset will only work for the current build plate temperature!
Before you start a new print, you bring nozzle and bed to temperature. The toolhead is already close to the bed (z=0) so that the sensor gets some heat from the bed. Let everything sit for a while and start the print. You can modify your start code to add an additional “sensor warmup” phase.
G28 ; home all axes
G4 S120 ; Wait some time to heat up sensor
G28 ; home all axes again
M420 S1 Z10 ; load meshMy printer is already running Marlin 2.1. All changes will therefore reference this version. Don't simply copy my suggested modifications, but check that they make sense for your machine.
All adjustments listed in the table were done in the Configuration.h file.
| Constant | Old Value | New Value | Comment |
| Z_MIN_PROBE_ENDSTOP_INVERTING | false | true | Sensor triggers when sensing the bed |
| DEFAULT_MAX_FEEDRATE | {300, 300, 50, 60} | {300, 300, 20, 60} | Slow down z movement for more precision while homing |
| FIX_MOUNTED_PROBE | Uncomment line | ||
| BLTOUCH | Comment out line | ||
| NOZZLE_TO_PROBE_OFFSET | {27.25, -12.8, -1} | {30, -17.5, 0} | New sensor is slightly further away from nozzle |
| Z_CLEARANCE_DEPLOY_PROBE | 10 | 2 | Sensor needs less space for probing - Bed leveling process is faster |
| Z_CLEARANCE_BETWEEN_PROBES | 5 | 2 | Sensor needs less space for probing - Bed leveling process is faster |
| Z_CLEARANCE_MULTI_PROBE | 5 | 2 | Sensor needs less space for probing - Bed leveling process is faster |
| Z_PROBE_LOW_POINT | -2 | -4 | Increase range for setup of z offset |
License:
Creative Commons — Attribution
7