dc42 IR Probe Readings Not Consistent
Started to get a tollerance warning on my bed level and z home actions on one printer running one of dc42s sensors.
I print on removable glass sheets with hairspray/3DLac. My heater bed is a mk3 aluminium plate of around 100W with Ormerod MDF insulation sheet. Standard 'Pre-Print macro is enable bed heater (85C) home, wait for temp, home, four point mesh bed probe. I have it set to do upto 5 tests on each point with a maximum tollerance of 0.03, although I have tested this with 0.05.
I get out of tollerance warning on the homing, and then again on the mesh bed probe which fails after the first point.
So far I have tested with black paper between the plate and the glass, white stickers on the corners, white stickers painted black.
Unfortunately I can't do quick checks at the moment as I have lost comms to the board. Yet to test USB, but probe LEDs behave as expected when you wave your finger under it.
Have other people used the probe to destruction before without a catastrophic short etc? Is this loosing tollerance the signs of that or for some reason my 0.6 board is stumbling over something and not being as respomsive as it should be?
Looks like it must have been right on the edge originally working on hair sprayed glass.
I've found a number of problems on the system and tackled one at a time. I don't think the sensor is failing. I've swapped it for a spare, replaced the wiring, tried firmware 1.24 (no good due to *.local addressing not working). Currently it is working with white stickers on the bed.
Spoke to soon.
This is proving very frustrating.
=== Diagnostics ===
RepRapFirmware for Duet version 1.23 running on Duet 0.6
Used output buffers: 4 of 16 (8 max)
=== System ===
Static ram: 44276
Dynamic ram: 42852 of which 2984 recycled
Stack ram used: 136 current, 3656 maximum
Never used ram: 4536
=== Platform ===
Last reset 00:18:21 ago, cause: software
Last software reset at 2019-07-29 12:33, reason: User, spinning module GCodes, available RAM 4584 bytes (slot 2)
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0400f000 BFAR 0xe000ed38 SP 0xffffffff
Error status: 0
Free file entries: 10
SD card 0 detected, interface speed: 21.0MBytes/sec
SD card longest block write time: 808.4ms, max retries 0
MCU temperature: min 61.4, current 65.9, max 66.4
Date/time: 2019-07-29 12:51:42
Slowest loop: 809.29ms; fastest: 0.09ms
I2C nak errors 8, send timeouts 0, receive timeouts 0, finishTimeouts 0
=== Move ===
Hiccups: 0, StepErrors: 0, LaErrors: 0, FreeDm: 100, MinFreeDm: 97, MaxWait: 664355ms, Underruns: 0, 0
Scheduled moves: 87, completed moves: 87
Bed compensation in use: none
Bed probe heights: 0.000 0.000 0.000 0.000 0.000
=== Heat ===
Bed heaters = 0, chamberHeaters = -1 -1
Heater 0 is on, I-accum = 0.6
=== GCodes ===
Segments left: 0
Stack records: 3 allocated, 0 in use
Movement lock held by null
http is idle in state(s) 0
telnet is idle in state(s) 0
file is idle in state(s) 0
serial is idle in state(s) 0
aux is idle in state(s) 0
daemon is idle in state(s) 0
queue is idle in state(s) 0
autopause is idle in state(s) 0
Code queue is empty.
=== Network ===
Free connections: 15 of 16
Free transactions: 23 of 24
Locked: 0, state: 4, listening: 20071c18, 0, 0
Probe setup in config:
M558 P1 H5 F120 T6000 A5 S0.03 ; Set Z probe type to unmodulated and the dive height + speeds. Prod 5 times max to reach 0.03 tollerance.
G31 P500 X0 Y16 Z1.85 ; Set Z probe trigger value, offset and trigger height
Tried and failed with the following probe setup in config:
M558 P1 H5 F120 T6000 A5 S0.05;
Edit 2: Running an 8mm lead screw with 16 microsteps. Should be around 0.0025mm per microstep.
Finally get the machine running after a bed level and this is the result of the first layer. Clearly higher at the front of the bed (max x on an ormerod with metal arm and bed support).
Outer skirt was not adhering to the bed on first pass. Needed dropping 0.1mm on the baby steps.
Usual process is Pre print macro that warms up, homes the system, then four point mesh bed check, then I check the nozzle height with paper and correct using G10 P0 Z[correction].
Ordered an inductive sensor with 8mm sensing distance. Will try that! I've 4mm sensing distance sensors here, but their sensing distance is too small to detect the aluminium through the glass bed.
@dc42 have I missed anything obvious? I was hoping to run these on my p3steel machines.
@doctrucker, what do you have underneath the glass? If it's black paper, it doesn't look very black in your photo.
The IR sensor works less well if you coat the glass with glue, hairspray etc. I only print PLA on my Ormerod, and PLA prints well on bare glass; so that doesn't affect me.
@dc42 maybe it's the spray rendering it near unusable then. It's odd it raisesthe heighton the front. I've taken to closing the blind and shutting off all lights for the probe!
I'm more confident that my board isn't dying now the MDNS issue has been identified, but is there anything in the M122 report to look for that may indicate that the board is stuttering? Would that be obvious in the stepper motion or is there a chance the non interrupt code could be juttering?
Yes, it's black craft paper that came with the second hand Ormerod that had the sensor on it. I will try to get some fresh stuff. I had tried to put white address label stickers on the top surface but it still had a wobble with these - even sharpied black. Perhaps there was hairspray on them too causing issues.
deckingman last edited by
Veti last edited by
maybe replace the glass with an ultrabase glass panel. that should offer enough surface for the ir sensor to work.
I've got a 8mm detection distance inductive sensor on order. I'm happy withthe 3DLAC / hair spray on the glass plate as it keeps the consumable costs low. Size of the sensor is a bit of an issue, but will try the touch sensors if this doesn't work.